## Documentation for module fast

...

source: fast.F

zero_c

#### public Subroutines/Functions:

SUBROUTINE
copy_cr (z, r1)
Copy the real part of a complex 3D array to a real array
SUBROUTINE
copy_cri (z, r1, r2)
Copy a the real and imag. parts of a complex 3D array into two real arrays
SUBROUTINE
copy_rc (r1, z)
Copy a real 3D array to complex 3D array
SUBROUTINE
rankup (n, za, cmat, zb, ex, ey, ez, scr)
...
SUBROUTINE
vc_x_vc (cvec2, cvec)
Multiply two complex 3D arrays element-wise
SUBROUTINE
vr_x_vc (rvec, cvec)
Scale a complex array element-wise by a real array

...

COMPLEX(dp),
INTENT(inout)
:: z(:,:) ×
COMPLEX(dp),
INTENT(inout)
:: z(:,:,:) ×

#### SUBROUTINEcopy_cr(z, r1)^

Copy the real part of a complex 3D array to a real array

##### Arguments:
 COMPLEX(dp), INTENT(in) :: z(:,:,:) the complex array REAL(dp), INTENT(inout) :: r1(:,:,:) the real array

#### SUBROUTINEcopy_cri(z, r1, r2)^

Copy a the real and imag. parts of a complex 3D array into two real arrays

##### Arguments:
 COMPLEX(dp), INTENT(in) :: z(:,:,:) the complex array REAL(dp), INTENT(inout) :: r1(:,:,:) the real array for the real part REAL(dp), INTENT(inout) :: r2(:,:,:) the real array for the imaginary part

#### SUBROUTINEcopy_rc(r1, z)^

Copy a real 3D array to complex 3D array

##### Arguments:
 REAL(dp), INTENT(in) :: r1(:,:,:) the real array COMPLEX(dp), INTENT(inout) :: z(:,:,:) the complex array

#### SUBROUTINErankup(n, za, cmat, zb, ex, ey, ez, scr)^

...

##### Arguments:
 INTEGER, INTENT(in) :: n(3) ... COMPLEX(dp), INTENT(in) :: za ... COMPLEX(dp), INTENT(inout) :: cmat(:,:,:) ... COMPLEX(dp), INTENT(in) :: zb ... COMPLEX(dp), INTENT(in) :: ex(:) ... COMPLEX(dp), INTENT(in) :: ey(:) ... COMPLEX(dp), INTENT(in) :: ez(:) ... COMPLEX(dp), INTENT(inout) :: scr(:) ...

#### SUBROUTINEvc_x_vc(cvec2, cvec)^

Multiply two complex 3D arrays element-wise

##### Arguments:
 COMPLEX(dp), INTENT(in) :: cvec2(:,:,:) the other complex array COMPLEX(dp), INTENT(inout) :: cvec(:,:,:) the complex array returned as the result

#### SUBROUTINEvr_x_vc(rvec, cvec)^

Scale a complex array element-wise by a real array

##### Arguments:
 REAL(dp), INTENT(in) :: rvec(:,:,:) the real array COMPLEX(dp), INTENT(inout) :: cvec(:,:,:) the complex array

#### SUBROUTINEzero_c2(z)^

Zero a complex 2D array (optionally with OpenMP)

##### Arguments:
 COMPLEX(dp), INTENT(inout) :: z(:,:) the array

#### SUBROUTINEzero_c3(z)^

Zero a complex 3D array (optionally with OpenMP)

##### Arguments:
 COMPLEX(dp), INTENT(inout) :: z(:,:,:) the array