yinyang_mpi
Module
Description
$Id$
MODULE_DOC: This module contains Yin-Yang related types and functions MODULE_DOC: which are incompatible with FORTRAN 95.
Quick access
- Variables:
caproot,capzprocs,indweights_zaver_cap,indweights_zaver_gap,n_contrib_procs,nycap,offset_cap,thrange_cap,thrange_gap,thranges_cap,thranges_gap,yinprocs- Routines:
Needed modules
Variables
- yinyang_mpi/caproot [integer,private/optional/default=-1]
- yinyang_mpi/capzprocs (2) [integer,private/optional/default=-1]
- yinyang_mpi/indweights_zaver_cap [ind_coeffs,private]
- yinyang_mpi/indweights_zaver_gap (4) [ind_coeffs,private]
- yinyang_mpi/n_contrib_procs [integer,private/parameter/optional/default=4]
supposed to be 3
- yinyang_mpi/nycap [integer,private/optional/default=0]
- yinyang_mpi/offset_cap [integer,private/optional/default=0]
- yinyang_mpi/thrange_cap (2) [integer,private/optional/default=0]
- yinyang_mpi/thrange_gap (2,4) [integer,private/optional/default=0]
- yinyang_mpi/thranges_cap (*,*,*) [integer,private/allocatable]
- yinyang_mpi/thranges_gap (*,*,*) [integer,private/allocatable]
- yinyang_mpi/yinprocs (4) [integer,private/optional/default=-1]
Subroutines and functions
- subroutine yinyang_mpi/zsum_yy(fnamexy, iname, m, n, a)
- Parameters:
fnamexy (,,*) [real,inout]
iname [integer,in]
m [integer,in]
n [integer,in]
a (*) [real,in]
- Called from:
initialize_diagnostics(),initialize_diagnostic_arrays(),prints(),report_undefined_diagnostics(),gen_form_legend(),write_sound(),get_average_density(),diagnostic(),initialize_time_integrals(),xyaverages_z(),xzaverages_y(),yzaverages_x(),phizaverages_r(),yaverages_xz(),zaverages_xy(),phiaverages_rz(),write_1daverages(),write_1daverages_prepare(),write_2daverages_prepare(),write_2daverages(),trim_averages(),fparse_name(),set_type(),save_name(),save_name_sound(),save_name_halfz(),max_mn_name(),sum_mn_name_halfy(),sum_mn_name_halfz(),sum_weighted_name(),sum_lim_mn_name(),surf_mn_name(),integrate_mn(),integrate_mn_name(),xysum_mn_name_z(),xysum_mn_name_z_npar(),xymax_mn_name_z(),xzsum_mn_name_y(),yzsum_mn_name_x(),yzsum_mn_name_x_mpar(),xyintegrate_mn_name_z(),xzintegrate_mn_name_y(),yzintegrate_mn_name_x(),phizsum_mn_name_r(),ysum_mn_name_xz(),ysum_mn_name_xz_npar(),yintegrate_mn_name_xz(),zsum_mn_name_xy_arr2(),zsum_mn_name_xy_arr(),zsum_mn_name_xy_mpar_scal()- Call to:
mpiwait(),mpibarrier(),prep_interp(),coeffs_to_weights(),warning()
- subroutine yinyang_mpi/reduce_zsum(arrm, temp)
Calculate z-sums (still depending on x and y).
25-apr-16/MR: outsourced from zaverages_xy
- Parameters:
arrm (,,*) [real,in]
temp (,,*) [real,out]
- Use :
general(find_proc()),mpicomm(mpireduce_sum(),mpisend_real(),mpirecv_real(),mpiwait(),mpibarrier(),izbeam_diag()),cdata- Called from:
initialize_diagnostics(),initialize_diagnostic_arrays(),prints(),report_undefined_diagnostics(),gen_form_legend(),write_sound(),get_average_density(),diagnostic(),initialize_time_integrals(),xyaverages_z(),xzaverages_y(),yzaverages_x(),phizaverages_r(),yaverages_xz(),zaverages_xy()- Call to:
mpiwait(),mpibarrier(),prep_interp(),coeffs_to_weights(),warning()
- subroutine yinyang_mpi/initialize_zaver_yy(nlines, nycap_)
Initializations for calculation of z-sums on Yin-Yang grid. Only valid for equidistant grid in y and z. Returns total number of Yin-phi coordinate lines which cross the executing proc. Can be lines in the “gap” of the Yin grid phi<= Pi/4, phi>=7Pi/4 or lines which lie completely within Yang grid, then in the “polar caps” theta<=Pi/4, theta>=3Pi/4. Note that executing proc can have a share of both types.
11-mar-16/MR: coded
- Parameters:
nlines [integer,inout] :: total number of detected gap lines = offset for cap lines.
nycap [integer,out]
- Use :
general(indgen(),yy_transform_strip_other(),find_proc(),itoa()),mpicomm(mpireduce_sum_int(),mpisend_int(),mpirecv_int(),mpiwait(),mpibarrier(),mpi_comm_grid(),mpi_comm_yzplane()),messages(warning()),cdata- Called from:
initialize_diagnostics(),initialize_diagnostic_arrays(),prints(),report_undefined_diagnostics(),gen_form_legend(),write_sound(),get_average_density(),diagnostic(),initialize_time_integrals(),xyaverages_z(),xzaverages_y(),yzaverages_x(),phizaverages_r(),yaverages_xz(),zaverages_xy(),phiaverages_rz(),write_1daverages(),write_1daverages_prepare(),write_2daverages_prepare(),write_2daverages(),trim_averages(),fparse_name(),set_type(),save_name(),save_name_sound(),save_name_halfz(),max_mn_name(),sum_mn_name_halfy(),sum_mn_name_halfz(),sum_weighted_name(),sum_lim_mn_name(),surf_mn_name(),integrate_mn(),integrate_mn_name(),xysum_mn_name_z(),xysum_mn_name_z_npar(),xymax_mn_name_z(),xzsum_mn_name_y(),yzsum_mn_name_x(),yzsum_mn_name_x_mpar(),xyintegrate_mn_name_z(),xzintegrate_mn_name_y(),yzintegrate_mn_name_x(),phizsum_mn_name_r(),ysum_mn_name_xz(),ysum_mn_name_xz_npar(),yintegrate_mn_name_xz(),zsum_mn_name_xy_arr2(),zsum_mn_name_xy_arr(),zsum_mn_name_xy_mpar_scal(),calc_phiavg_profile(),diagnostics_init_reduc_pointers(),diagnostics_diag_reductions(),phisum_mn_name_rz(),get_from_fname(),allocate_sound(),allocate_fnames(),allocate_vnames(),allocate_xyaverages(),allocate_xzaverages(),allocate_yzaverages(),allocate_phizaverages(),allocate_yaverages(),allocate_zaverages(),allocate_zaverages_data()- Call to:
prep_interp(),coeffs_to_weights(),warning(),mpiwait(),mpibarrier()