The RCS computation program implemented on the CM-5 is written in Fortran 77 with the CMMD message passing library. The first task is to read in the current coefficients from a storage device. The CMMD global-read function, which is the same as the CMMD global-write described in the matrix fill subsection, is employed to carry out this task. Then, the far field contributed by all currents is computed. Finally, the radar cross section is computed. The far field computation is the major task discribed in this subsection. There are two cases; one is for a single current vector and another is for multiple current vectors.
Let and
denote the numbers of the transmitters and
receivers, respectively, and
and
be respectively
the numbers of the
polarizations of the transmitter and the receivers.
For a single current vector, if is a small
number then only one node is active and the rest of the nodes stay inactive.
If
is considerably larger it is worthwhile to divide the current vector
into
pieces and assign each node to do some work. The result of each node
is summed up in node 0.
For
current vectors, if
, then make the first
nodes do
the computation and the rest of nodes remain idle. If
, then each node
is associated with a slab of the current matrix.
The result of each node
is again summed up in node 0. The divide and conquer algorithm is applied to
sum the result of each node in node 0. The algorithm is illustrated in
Figure 4.10, where
.
A pseudo code of the algorithm implemented is given in Figure 4.11.