SABER
|
MPI parameters derived type. More...
Data Types | |
type | mpl_type |
Functions/Subroutines | |
subroutine | mpl_newunit (mpl, lunit) |
Find a free unit. More... | |
subroutine | mpl_init (mpl, f_comm) |
Initialize MPL object. More... | |
subroutine | mpl_final (mpl) |
Finalize MPI. More... | |
subroutine | mpl_flush (mpl, advance_flag) |
Flush listings. More... | |
subroutine | mpl_abort (mpl, subr, message) |
Clean MPI abort. More... | |
subroutine | mpl_warning (mpl, subr, message) |
Print warning message. More... | |
subroutine | mpl_update_tag (mpl, add) |
Update MPI tag. More... | |
subroutine | mpl_broadcast_string_1d (mpl, var, root) |
Broadcast 1d string array. More... | |
subroutine | mpl_dot_prod_1d (mpl, fld1, fld2, dp) |
Global dot product over local fields, 1d. More... | |
subroutine | mpl_dot_prod_2d (mpl, fld1, fld2, dp) |
Global dot product over local fields, 2d. More... | |
subroutine | mpl_dot_prod_3d (mpl, fld1, fld2, dp) |
Global dot product over local fields, 3d. More... | |
subroutine | mpl_dot_prod_4d (mpl, fld1, fld2, dp) |
Global dot product over local fields, 4d. More... | |
subroutine | mpl_glb_to_loc_index (mpl, n_loc, loc_to_glb, n_glb, glb_to_loc, glb_to_proc, rootproc, pool) |
Communicate global index to local index. More... | |
subroutine | mpl_glb_to_loc_integer_1d (mpl, n_loc, n_glb, loc_to_glb, glb, loc) |
Global to local, 1d array. More... | |
subroutine | mpl_glb_to_loc_integer_2d (mpl, nl, n_loc, n_glb, loc_to_glb, glb, loc, rootproc, pool) |
Global to local, 2d array. More... | |
subroutine | mpl_glb_to_loc_real_1d (mpl, n_loc, n_glb, loc_to_glb, glb, loc) |
Global to local, 1d array. More... | |
subroutine | mpl_glb_to_loc_real_2d (mpl, nl, n_loc, n_glb, loc_to_glb, glb, loc, rootproc, pool) |
Global to local, 2d array. More... | |
subroutine | mpl_glb_to_loc_logical_1d (mpl, n_loc, n_glb, loc_to_glb, glb, loc) |
Global to local, 1d array. More... | |
subroutine | mpl_glb_to_loc_logical_2d (mpl, nl, n_loc, n_glb, loc_to_glb, glb, loc, rootproc, pool) |
Global to local, 2d array. More... | |
subroutine | mpl_loc_to_glb_integer_1d (mpl, n_loc, n_glb, loc_to_glb, loc, glb, bcast) |
Local to global, 1d array. More... | |
subroutine | mpl_loc_to_glb_integer_2d (mpl, nl, n_loc, n_glb, loc_to_glb, loc, glb, bcast) |
Local to global, 2d array. More... | |
subroutine | mpl_loc_to_glb_real_1d (mpl, n_loc, n_glb, loc_to_glb, loc, glb, bcast) |
Local to global, 1d array. More... | |
subroutine | mpl_loc_to_glb_real_2d (mpl, nl, n_loc, n_glb, loc_to_glb, loc, glb, bcast) |
Local to global, 2d array. More... | |
subroutine | mpl_loc_to_glb_logical_1d (mpl, n_loc, n_glb, loc_to_glb, loc, glb, bcast) |
Local to global, 1d array. More... | |
subroutine | mpl_loc_to_glb_logical_2d (mpl, nl, n_loc, n_glb, loc_to_glb, loc, glb, bcast) |
Local to global for a logical, 2d array. More... | |
subroutine | mpl_prog_init (mpl, nprog) |
Initialize progression display. More... | |
subroutine | mpl_prog_print (mpl, i) |
Print progression display. More... | |
subroutine | mpl_prog_final (mpl, advance_flag) |
Finalize progression display. More... | |
integer function | mpl_nc_file_create_or_open (mpl, subr, filename, f_comm) |
Create or open NetCDF file. More... | |
integer function | mpl_nc_group_define_or_get (mpl, subr, ncid, grpname) |
Define or get group. More... | |
integer function | mpl_nc_dim_define_or_get (mpl, subr, ncid, dimname, dimsize) |
Define or get (and check) NetCDF dimension. More... | |
integer function | mpl_nc_dim_inquire (mpl, subr, ncid, dimname) |
Inquire NetCDF file dimension size. More... | |
subroutine | mpl_nc_dim_check (mpl, subr, ncid, dimname, dimsize) |
Check if NetCDF file dimension exists and has the right size. More... | |
integer function | mpl_nc_var_define_or_get (mpl, subr, ncid, varname, varkind, varshape, unitname) |
Define or get NetCDF variable. More... | |
subroutine | mpl_ncerr (mpl, subr, info) |
Handle NetCDF error. More... | |
subroutine | mpl_write_integer (mpl, ncid, prefix, variables, var) |
Write integer into a log file or into a NetCDF file. More... | |
subroutine | mpl_write_integer_array (mpl, ncid, prefix, variables, n, var) |
Write integer array into a log file or into a NetCDF file. More... | |
subroutine | mpl_write_real (mpl, ncid, prefix, variables, var) |
Write real into a log file or into a NetCDF file. More... | |
subroutine | mpl_write_real_array (mpl, ncid, prefix, variables, n, var) |
Write real array into a log file or into a NetCDF file. More... | |
subroutine | mpl_write_logical (mpl, ncid, prefix, variables, var) |
Write logical into a log file or into a NetCDF file. More... | |
subroutine | mpl_write_logical_array (mpl, ncid, prefix, variables, n, var) |
Write logical array into a log file or into a NetCDF file. More... | |
subroutine | mpl_write_string (mpl, ncid, prefix, variables, var) |
Write string into a log file or into a NetCDF file. More... | |
subroutine | mpl_write_string_array (mpl, ncid, prefix, variables, n, var) |
Write string array into a log file or into a NetCDF file. More... | |
Variables | |
integer, parameter | lunit_min =10 |
Minimum unit number. More... | |
integer, parameter | lunit_max =1000 |
Maximum unit number. More... | |
integer, parameter | ddis = 5 |
Progression display step. More... | |
MPI parameters derived type.
|
private |
Clean MPI abort.
[in,out] | mpl | MPI data |
[in] | subr | Calling subroutine |
Definition at line 344 of file type_mpl.F90.
|
private |
Broadcast 1d string array.
[in] | mpl | MPI data |
[in,out] | var | Logical array, 1d |
[in] | root | Root task |
Definition at line 406 of file type_mpl.F90.
|
private |
Global dot product over local fields, 1d.
[in] | mpl | MPI data |
[in] | fld1 | Field 1 |
[in] | fld2 | Field 2 |
[out] | dp | Global dot product |
Definition at line 429 of file type_mpl.F90.
|
private |
Global dot product over local fields, 2d.
[in] | mpl | MPI data |
[in] | fld1 | Field 1 |
[in] | fld2 | Field 2 |
[out] | dp | Global dot product |
Definition at line 460 of file type_mpl.F90.
|
private |
Global dot product over local fields, 3d.
[in] | mpl | MPI data |
[in] | fld1 | Field 1 |
[in] | fld2 | Field 2 |
[out] | dp | Global dot product |
Definition at line 491 of file type_mpl.F90.
|
private |
Global dot product over local fields, 4d.
[in] | mpl | MPI data |
[in] | fld1 | Field 1 |
[in] | fld2 | Field 2 |
[out] | dp | Global dot product |
Definition at line 522 of file type_mpl.F90.
|
private |
|
private |
Flush listings.
[in,out] | mpl | MPI data |
[in] | advance_flag | Advance flag |
Definition at line 229 of file type_mpl.F90.
|
private |
Communicate global index to local index.
[in,out] | mpl | MPI data |
[in] | n_loc | Local dimension |
[in] | loc_to_glb | Local to global index |
[in] | n_glb | Global dimension |
[out] | glb_to_loc | Global to local index |
[out] | glb_to_proc | Global to processor |
[in] | rootproc | Root task |
[in] | pool | Tasks pool |
Definition at line 553 of file type_mpl.F90.
|
private |
Global to local, 1d array.
[in,out] | mpl | MPI data |
[in] | n_loc | Local array size |
[in] | n_glb | Global array size |
[in] | loc_to_glb | Local to global |
[in] | glb | Global array |
[out] | loc | Local array |
Definition at line 642 of file type_mpl.F90.
|
private |
Global to local, 2d array.
[in,out] | mpl | MPI data |
[in] | nl | Number of levels |
[in] | n_loc | Local array size |
[in] | n_glb | Global array size |
[in] | loc_to_glb | Local to global |
[in] | glb | Global array |
[out] | loc | Local array |
[in] | rootproc | Root task |
[in] | pool | Tasks pool |
Definition at line 719 of file type_mpl.F90.
|
private |
Global to local, 1d array.
[in,out] | mpl | MPI data |
[in] | n_loc | Local array size |
[in] | n_glb | Global array size |
[in] | loc_to_glb | Local to global |
[in] | glb | Global array |
[out] | loc | Local array |
Definition at line 1018 of file type_mpl.F90.
|
private |
Global to local, 2d array.
[in,out] | mpl | MPI data |
[in] | nl | Number of levels |
[in] | n_loc | Local array size |
[in] | n_glb | Global array size |
[in] | loc_to_glb | Local to global |
[in] | glb | Global array |
[out] | loc | Local array |
[in] | rootproc | Root task |
[in] | pool | Tasks pool |
Definition at line 1096 of file type_mpl.F90.
|
private |
Global to local, 1d array.
[in,out] | mpl | MPI data |
[in] | n_loc | Local array size |
[in] | n_glb | Global array size |
[in] | loc_to_glb | Local to global |
[in] | glb | Global array |
[out] | loc | Local array |
Definition at line 829 of file type_mpl.F90.
|
private |
Global to local, 2d array.
[in,out] | mpl | MPI data |
[in] | nl | Number of levels |
[in] | n_loc | Local array size |
[in] | n_glb | Global array size |
[in] | loc_to_glb | Local to global |
[in] | glb | Global array |
[out] | loc | Local array |
[in] | rootproc | Root task |
[in] | pool | Tasks pool |
Definition at line 907 of file type_mpl.F90.
|
private |
Initialize MPL object.
[in,out] | mpl | MPI data |
[in] | f_comm | FCKIT MPI communicator wrapper |
Definition at line 154 of file type_mpl.F90.
|
private |
Local to global, 1d array.
[in,out] | mpl | MPI data |
[in] | n_loc | Local array size |
[in] | n_glb | Global array size |
[in] | loc_to_glb | Local to global |
[in] | loc | Local array |
[out] | glb | Global array |
[in] | bcast | Broadcast option |
Definition at line 1207 of file type_mpl.F90.
|
private |
Local to global, 2d array.
[in,out] | mpl | MPI data |
[in] | nl | Number of levels |
[in] | n_loc | Local array size |
[in] | n_glb | Global array size |
[in] | loc_to_glb | Local to global |
[in] | loc | Local array |
[out] | glb | Global array |
[in] | bcast | Broadcast option |
Definition at line 1293 of file type_mpl.F90.
|
private |
Local to global, 1d array.
[in,out] | mpl | MPI data |
[in] | n_loc | Local array size |
[in] | n_glb | Global array size |
[in] | loc_to_glb | Local to global |
[in] | loc | Local array |
[out] | glb | Global array |
[in] | bcast | Broadcast option |
Definition at line 1583 of file type_mpl.F90.
|
private |
Local to global for a logical, 2d array.
[in,out] | mpl | MPI data |
[in] | nl | Number of levels |
[in] | n_loc | Local array size |
[in] | n_glb | Global array size |
[in] | loc_to_glb | Local to global |
[in] | loc | Local array |
[out] | glb | Global array |
[in] | bcast | Broadcast option |
Definition at line 1670 of file type_mpl.F90.
|
private |
Local to global, 1d array.
[in,out] | mpl | MPI data |
[in] | n_loc | Local array size |
[in] | n_glb | Global array size |
[in] | loc_to_glb | Local to global |
[in] | loc | Local array |
[out] | glb | Global array |
[in] | bcast | Broadcast option |
Definition at line 1394 of file type_mpl.F90.
|
private |
Local to global, 2d array.
[in,out] | mpl | MPI data |
[in] | nl | Number of levels |
[in] | n_loc | Local array size |
[in] | n_glb | Global array size |
[in] | loc_to_glb | Local to global |
[in] | loc | Local array |
[out] | glb | Global array |
[in] | bcast | Broadcast option |
Definition at line 1481 of file type_mpl.F90.
|
private |
Check if NetCDF file dimension exists and has the right size.
[in,out] | mpl | MPI data |
[in] | subr | Calling subroutine |
[in] | ncid | NetCDF file ID |
[in] | dimname | Dimension name |
[in] | dimsize | Expected dimension size |
Definition at line 2027 of file type_mpl.F90.
|
private |
Define or get (and check) NetCDF dimension.
[in,out] | mpl | MPI data |
[in] | subr | Calling subroutine |
[in] | ncid | NetCDF file ID |
[in] | dimname | Dimension name |
[in] | dimsize | Dimension size |
Definition at line 1960 of file type_mpl.F90.
|
private |
Inquire NetCDF file dimension size.
[in,out] | mpl | MPI data |
[in] | subr | Calling subroutine |
[in] | ncid | NetCDF file ID |
[in] | dimname | Dimension name |
Definition at line 1997 of file type_mpl.F90.
|
private |
Create or open NetCDF file.
[in,out] | mpl | MPI data |
[in] | subr | Calling subroutine |
[in] | filename | File name |
[in] | f_comm | Communicator |
Definition at line 1885 of file type_mpl.F90.
|
private |
Define or get group.
[in,out] | mpl | MPI data |
[in] | subr | Calling subroutine |
[in] | ncid | NetCDF file ID |
[in] | grpname | Group name |
Definition at line 1932 of file type_mpl.F90.
|
private |
Define or get NetCDF variable.
[in,out] | mpl | MPI data |
[in] | subr | Calling subroutine |
[in] | ncid | NetCDF file ID |
[in] | varname | Variable name |
[in] | varkind | Variable kind |
[in] | varshape | Variable shape |
[in] | unitname | Unit name |
Definition at line 2056 of file type_mpl.F90.
|
private |
Handle NetCDF error.
[in,out] | mpl | MPI data |
[in] | subr | Calling subroutine |
[in] | info | Info index |
Definition at line 2101 of file type_mpl.F90.
|
private |
Find a free unit.
[in,out] | mpl | MPI data |
[out] | lunit | New unit |
Definition at line 123 of file type_mpl.F90.
|
private |
Finalize progression display.
[in,out] | mpl | MPI data |
[in] | advance_flag | Advance flag |
Definition at line 1842 of file type_mpl.F90.
|
private |
Initialize progression display.
[in,out] | mpl | MPI data |
[in] | nprog | Array size |
Definition at line 1772 of file type_mpl.F90.
|
private |
Print progression display.
[in,out] | mpl | MPI data |
[in] | i | Index |
Definition at line 1805 of file type_mpl.F90.
|
private |
Update MPI tag.
[in,out] | mpl | MPI data |
[in] | add | Tag update incrememnt |
Definition at line 385 of file type_mpl.F90.
|
private |
Print warning message.
[in,out] | mpl | MPI data |
[in] | subr | Calling subroutine |
Definition at line 366 of file type_mpl.F90.
|
private |
Write integer into a log file or into a NetCDF file.
[in,out] | mpl | MPI data |
[in] | ncid | NetCDF file id |
[in] | variables | Variable name |
[in] | var | Integer |
Definition at line 2119 of file type_mpl.F90.
|
private |
Write integer array into a log file or into a NetCDF file.
[in,out] | mpl | MPI data |
[in] | ncid | NetCDF file id |
[in] | variables | Variable name |
[in] | n | Integer array size |
[in] | var | Integer array |
Definition at line 2158 of file type_mpl.F90.
|
private |
Write logical into a log file or into a NetCDF file.
[in,out] | mpl | MPI data |
[in] | ncid | NetCDF file id |
[in] | variables | Variable name |
[in] | var | Logical |
Definition at line 2292 of file type_mpl.F90.
|
private |
Write logical array into a log file or into a NetCDF file.
[in,out] | mpl | MPI data |
[in] | ncid | NetCDF file id |
[in] | variables | Variable name |
[in] | n | Real array size |
[in] | var | Logical array |
Definition at line 2327 of file type_mpl.F90.
|
private |
Write real into a log file or into a NetCDF file.
[in,out] | mpl | MPI data |
[in] | ncid | NetCDF file id |
[in] | variables | Variable name |
[in] | var | Real |
Definition at line 2210 of file type_mpl.F90.
|
private |
Write real array into a log file or into a NetCDF file.
[in,out] | mpl | MPI data |
[in] | ncid | NetCDF file id |
[in] | variables | Variable name |
[in] | n | Real array size |
[in] | var | Real array |
Definition at line 2244 of file type_mpl.F90.
|
private |
Write string into a log file or into a NetCDF file.
[in,out] | mpl | MPI data |
[in] | ncid | NetCDF file id |
[in] | variables | Variable name |
[in] | var | String |
Definition at line 2381 of file type_mpl.F90.
|
private |
Write string array into a log file or into a NetCDF file.
[in,out] | mpl | MPI data |
[in] | ncid | NetCDF file id |
[in] | variables | Variable name |
[in] | n | String array size |
[in] | var | String array |
Definition at line 2417 of file type_mpl.F90.
integer, parameter type_mpl::ddis = 5 |
Progression display step.
Definition at line 22 of file type_mpl.F90.
integer, parameter type_mpl::lunit_max =1000 |
Maximum unit number.
Definition at line 21 of file type_mpl.F90.
integer, parameter type_mpl::lunit_min =10 |
Minimum unit number.
Definition at line 20 of file type_mpl.F90.