|
SABER
|
Subroutines/functions list. More...
Data Types | |
| type | linop_type |
Functions/Subroutines | |
| subroutine | linop_alloc (linop, nvec) |
| Allocation. More... | |
| subroutine | linop_dealloc (linop) |
| Release memory. More... | |
| subroutine | linop_copy (linop_out, linop_in, n_s) |
| Copy. More... | |
| subroutine | linop_read (linop, mpl, ncid) |
| Read. More... | |
| subroutine | linop_write_def (linop, mpl, ncid) |
| Write, definition mode. More... | |
| subroutine | linop_write_data (linop, mpl) |
| Write, data mode. More... | |
| subroutine | linop_buffer_size (linop, nbufi, nbufr) |
| Buffer size. More... | |
| subroutine | linop_serialize (linop, mpl, nbufi, nbufr, bufi, bufr) |
| Serialize. More... | |
| subroutine | linop_deserialize (linop, mpl, nbufi, nbufr, bufi, bufr) |
| Deserialize. More... | |
| subroutine | linop_apply (linop, mpl, fld_src, fld_dst, ivec, mssrc, msdst) |
| Apply linear operator. More... | |
| subroutine | linop_apply_ad (linop, mpl, fld_dst, fld_src, ivec) |
| Apply linear operator, adjoint. More... | |
| subroutine | linop_apply_sym (linop, mpl, fld, ivec) |
| Apply linear operator, symmetric. More... | |
| subroutine | linop_add_op (linop, n_s, row, col, S) |
| Add operation. More... | |
| subroutine | linop_gather (linop, mpl, n_s_arr, linop_arr) |
| Gather data from OpenMP threads. More... | |
| subroutine | linop_interp (linop, mpl, nam, il0, n_src, lon_src, lat_src, mask_src, mesh_src, tree_src, n_dst, lon_dst, lat_dst, mask_dst, mesh_mask, ifmt) |
| Compute horizontal interpolation. More... | |
| subroutine | linop_interp_lat (linop, mpl, n_src, lat_src, n_dst, lat_dst, mask_dst, ifmt) |
| Compute horizontal interpolation (latitude bands) More... | |
| subroutine | linop_interp_nn (linop, mpl, n_src, mask_src, tree_src, n_dst, lon_dst, lat_dst, mask_dst, ifmt) |
| Compute horizontal interpolation (nearest valid neighbor) More... | |
Variables | |
| logical, parameter | check_data = .false. |
| Activate data check for all linear operations. More... | |
| real(kind_real), parameter | s_inf = 1.0e-2_kind_real |
| Minimum interpolation coefficient. More... | |
Subroutines/functions list.
Instrumentation functions Linear operator derived type
|
private |
Add operation.
| [in,out] | linop | Linear operators |
| [in,out] | n_s | Number of operations |
| [in] | row | Row index |
| [in] | col | Column index |
| [in] | s | Value |
Definition at line 831 of file type_linop.F90.
|
private |
Allocation.
| [in,out] | linop | Linear operator |
| [in] | nvec | Size of the vector of linear operators with similar row and col |
Definition at line 103 of file type_linop.F90.
|
private |
Apply linear operator.
| [in] | linop | Linear operator |
| [in,out] | mpl | MPI data |
| [in] | fld_src | Source vector |
| [out] | fld_dst | Destination vector |
| [in] | ivec | Index of the vector of linear operators with similar row and col |
| [in] | mssrc | Check for missing source |
| [in] | msdst | Check for missing destination |
Definition at line 536 of file type_linop.F90.
|
private |
Apply linear operator, adjoint.
| [in] | linop | Linear operator |
| [in,out] | mpl | MPI data |
| [in] | fld_dst | Destination vector |
| [out] | fld_src | Source vector |
| [in] | ivec | Index of the vector of linear operators with similar row and col |
Definition at line 659 of file type_linop.F90.
|
private |
Apply linear operator, symmetric.
| [in] | linop | Linear operator |
| [in,out] | mpl | MPI data |
| [in,out] | fld | Source/destination vector |
| [in] | ivec | Index of the vector of linear operators with similar row and col |
Definition at line 741 of file type_linop.F90.
|
private |
Buffer size.
| [in] | linop | Linear operator |
| [out] | nbufi | Buffer size (integer) |
| [out] | nbufr | Buffer size (real) |
Definition at line 364 of file type_linop.F90.
|
private |
Copy.
| [in,out] | linop_out | Output linear operator |
| [in] | linop_in | Input linear operator |
| [in] | n_s | Number of operations to copy |
Definition at line 170 of file type_linop.F90.
|
private |
Release memory.
| [in,out] | linop | Linear operator |
Definition at line 142 of file type_linop.F90.
|
private |
Deserialize.
| [in,out] | linop | Linear operator |
| [in,out] | mpl | MPI data |
| [in] | nbufi | Buffer size (integer) |
| [in] | nbufr | Buffer size (real) |
| [in] | bufi | Buffer (integer) |
| [in] | bufr | Buffer (real) |
Definition at line 463 of file type_linop.F90.
|
private |
Gather data from OpenMP threads.
| [in,out] | linop | Linear operator |
| [in,out] | mpl | MPI data |
| [in] | n_s_arr | Number of operations |
| [in] | linop_arr | Linear operator array |
Definition at line 885 of file type_linop.F90.
|
private |
Compute horizontal interpolation.
| [in,out] | linop | Linear operator |
| [in,out] | mpl | MPI data |
| [in] | nam | Namelist |
| [in] | il0 | Level |
| [in] | n_src | Source size |
| [in] | lon_src | Source longitudes |
| [in] | lat_src | Source latitudes |
| [in] | mask_src | Source mask |
| [in] | mesh_src | Source mesh |
| [in] | tree_src | Source tree |
| [in] | n_dst | Destination size |
| [in] | lon_dst | Destination longitudes |
| [in] | lat_dst | Destination latitudes |
| [in] | mask_dst | Destination mask |
| [in] | mesh_mask | Mask checking mesh |
| [in] | ifmt | Format indentation |
Definition at line 933 of file type_linop.F90.

|
private |
Compute horizontal interpolation (latitude bands)
| [in,out] | linop | Linear operator |
| [in,out] | mpl | MPI data |
| [in] | n_src | Source size |
| [in] | lat_src | Source latitudes |
| [in] | n_dst | Destination size |
| [in] | lat_dst | Destination latitudes |
| [in] | mask_dst | Destination mask |
| [in] | ifmt | Format indentation |
Definition at line 1102 of file type_linop.F90.

|
private |
Compute horizontal interpolation (nearest valid neighbor)
| [in,out] | linop | Linear operator |
| [in,out] | mpl | MPI data |
| [in] | n_src | Source size |
| [in] | mask_src | Source mask |
| [in] | tree_src | Source tree |
| [in] | n_dst | Destination size |
| [in] | lon_dst | Destination longitudes |
| [in] | lat_dst | Destination latitudes |
| [in] | mask_dst | Destination mask |
| [in] | ifmt | Format indentation |
Definition at line 1214 of file type_linop.F90.

|
private |
Read.
| [in,out] | linop | Linear operator |
| [in,out] | mpl | MPI data |
| [in] | ncid | NetCDF file |
Definition at line 221 of file type_linop.F90.
|
private |
Serialize.
| [in] | linop | Linear operator |
| [in,out] | mpl | MPI data |
| [in] | nbufi | Buffer size (integer) |
| [in] | nbufr | Buffer size (real) |
| [out] | bufi | Buffer (integer) |
| [out] | bufr | Buffer (real) |
Definition at line 396 of file type_linop.F90.
|
private |
Write, data mode.
| [in] | linop | Linear operator |
| [in,out] | mpl | MPI data |
Definition at line 330 of file type_linop.F90.
|
private |
Write, definition mode.
| [in,out] | linop | Linear operator |
| [in,out] | mpl | MPI data |
| [in] | ncid | NetCDF file |
Definition at line 280 of file type_linop.F90.
| logical, parameter type_linop::check_data = .false. |
Activate data check for all linear operations.
Definition at line 49 of file type_linop.F90.
| real(kind_real), parameter type_linop::s_inf = 1.0e-2_kind_real |
Minimum interpolation coefficient.
Definition at line 50 of file type_linop.F90.