| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=2), | intent(in) | :: | var |
selection string: which variable to evaluate |
||
| integer, | intent(out) | :: | n_s |
number of integration points |
||
| integer, | intent(out) | :: | n_t |
number of integration points |
||
| integer, | intent(out) | :: | n_z |
number of integration points |
SUBROUTINE get_integration_points_num(var, n_s, n_t, n_z) ! MODULES USE MODgvec_base, ONLY: t_base ! INPUT/OUTPUT VARIABLES ------------------------------------------------------------------------------------------------------! CHARACTER(LEN=2), INTENT(IN) :: var !! selection string: which variable to evaluate INTEGER, INTENT(OUT) :: n_s, n_t, n_z !! number of integration points ! LOCAL VARIABLES -------------------------------------------------------------------------------------------------------------! CLASS(t_base), POINTER :: base !! pointer to the base object (X1, X2, LA) ! CODE ------------------------------------------------------------------------------------------------------------------------! CALL select_base(var, base) n_s = base%s%nGP IF (base%s%nGP /= SIZE(base%s%s_GP)) THEN CALL abort(__STAMP__, & 'ERROR: number of integration points does not match the size of the array') END IF n_t = base%f%mn_nyq(1) n_z = base%f%mn_nyq(2) END SUBROUTINE get_integration_points_num