|
OOPS
|
Data Types | |
| type | qg_fields |
Functions/Subroutines | |
| subroutine, public | qg_fields_create (self, geom, vars, lbc) |
| Linked list implementation. More... | |
| subroutine, public | qg_fields_create_from_other (self, other, geom) |
| Create fields from another one. More... | |
| subroutine, public | qg_fields_delete (self) |
| Delete fields. More... | |
| subroutine, public | qg_fields_zero (self) |
| Set fields to zero. More... | |
| subroutine, public | qg_fields_ones (self) |
| Set fields to ones. More... | |
| subroutine, public | qg_fields_dirac (self, f_conf) |
| Set fields to Diracs. More... | |
| subroutine, public | qg_fields_random (self, var) |
| Generate random fields. More... | |
| subroutine, public | qg_fields_copy (self, other) |
| Copy fields. More... | |
| subroutine, public | qg_fields_copy_lbc (self, other) |
| Copy fields LBC. More... | |
| subroutine, public | qg_fields_self_add (self, rhs) |
| Add fields. More... | |
| subroutine, public | qg_fields_self_sub (self, rhs) |
| Subtract fields. More... | |
| subroutine, public | qg_fields_self_mul (self, zz) |
| Multiply fields by a scalar. More... | |
| subroutine, public | qg_fields_axpy (self, zz, rhs) |
| Apply axpy operator to fields. More... | |
| subroutine, public | qg_fields_self_schur (self, rhs) |
| Schur product of fields. More... | |
| subroutine, public | qg_fields_dot_prod (fld1, fld2, zprod) |
| Compute dot product for fields. More... | |
| subroutine, public | qg_fields_add_incr (self, rhs) |
| Add increment to fields. More... | |
| subroutine, public | qg_fields_diff_incr (lhs, fld1, fld2) |
| Compute increment from the difference of two fields. More... | |
| subroutine, public | qg_fields_change_resol (fld, rhs) |
| Change fields resolution. More... | |
| subroutine, public | qg_fields_read_file (fld, f_conf, vdate) |
| Read fields from file. More... | |
| subroutine, public | qg_fields_write_file (fld, f_conf, vdate) |
| Write fields to file. More... | |
| subroutine, public | qg_fields_analytic_init (fld, f_conf, vdate) |
| Analytic initialization of fields. More... | |
| subroutine, public | qg_fields_gpnorm (fld, vpresent, vmin, vmax, vrms) |
| Fields statistics. More... | |
| subroutine, public | qg_fields_rms (fld, prms) |
| Fields RMS. More... | |
| subroutine, public | qg_fields_sizes (fld, nx, ny, nz) |
| Get fields geometry. More... | |
| subroutine, public | qg_fields_lbc (fld, lbc) |
| Get LBC presence. More... | |
| subroutine, public | qg_fields_set_atlas (self, vars, afieldset) |
| Set ATLAS field. More... | |
| subroutine, public | qg_fields_to_atlas (self, vars, afieldset) |
| Convert fields to ATLAS. More... | |
| subroutine, public | qg_fields_from_atlas (self, vars, afieldset) |
| Get fields from ATLAS. More... | |
| subroutine, public | qg_fields_getpoint (fld, iter, nval, vals) |
| Get points from fields. More... | |
| subroutine, public | qg_fields_setpoint (fld, iter, nval, vals) |
| Set fields values at a specified gridpoint. More... | |
| subroutine, public | qg_fields_serialize (fld, vsize, vect_fld) |
| Serialize fields. More... | |
| subroutine, public | qg_fields_deserialize (self, vsize, vect_fld, index) |
| Deserialize fields. More... | |
| subroutine, public | qg_fields_complete (self, var) |
| Complete missing fields consistently. More... | |
| subroutine, public | qg_fields_check (self) |
| Check fields. More... | |
| subroutine, public | qg_fields_check_resolution (fld1, fld2) |
| Check fields resolution. More... | |
Variables | |
| integer, parameter | rseed = 7 |
| Random seed (for reproducibility) More... | |
| type(registry_t), public | qg_fields_registry |
| Linked list interface - defines registry_t type. More... | |
| subroutine, public qg_fields_mod::qg_fields_add_incr | ( | type(qg_fields), intent(inout) | self, |
| type(qg_fields), intent(in) | rhs | ||
| ) |
Add increment to fields.
| [in,out] | self | Fields |
| [in] | rhs | Right-hand side |
Definition at line 518 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_analytic_init | ( | type(qg_fields), intent(inout) | fld, |
| type(fckit_configuration), intent(in) | f_conf, | ||
| type(datetime), intent(inout) | vdate | ||
| ) |
Analytic initialization of fields.
| [in,out] | fld | Fields |
| [in] | f_conf | FCKIT configuration |
| [in,out] | vdate | Date and time |
Definition at line 882 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_axpy | ( | type(qg_fields), intent(inout) | self, |
| real(kind_real), intent(in) | zz, | ||
| type(qg_fields), intent(in) | rhs | ||
| ) |
Apply axpy operator to fields.
| [in,out] | self | Fields |
| [in] | zz | Multiplier |
| [in] | rhs | Right-hand side |
Definition at line 443 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_change_resol | ( | type(qg_fields), intent(inout) | fld, |
| type(qg_fields), intent(in) | rhs | ||
| ) |
Change fields resolution.
| [in,out] | fld | Fields |
| [in] | rhs | Right-hand side |
Definition at line 574 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_check | ( | type(qg_fields), intent(in) | self | ) |
Check fields.
| [in] | self | Fields |
Definition at line 1554 of file qg_fields_mod.F90.

| subroutine, public qg_fields_mod::qg_fields_check_resolution | ( | type(qg_fields), intent(in) | fld1, |
| type(qg_fields), intent(in) | fld2 | ||
| ) |
Check fields resolution.
| [in] | fld1 | First fields |
| [in] | fld2 | Second fields |
Definition at line 1646 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_complete | ( | type(qg_fields), intent(inout) | self, |
| character(len=1), intent(in) | var | ||
| ) |
Complete missing fields consistently.
| [in,out] | self | Fields |
| [in] | var | Reference variable ('x' or 'q') |
Definition at line 1487 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_copy | ( | type(qg_fields), intent(inout) | self, |
| type(qg_fields), intent(in) | other | ||
| ) |
Copy fields.
| [in,out] | self | Fields |
| [in] | other | Other fields |
Definition at line 314 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_copy_lbc | ( | type(qg_fields), intent(inout) | self, |
| type(qg_fields), intent(in) | other | ||
| ) |
Copy fields LBC.
| [in,out] | self | Fields |
| [in] | other | Other fields |
Definition at line 337 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_create | ( | type(qg_fields), intent(inout) | self, |
| type(qg_geom), intent(in), target | geom, | ||
| type(oops_variables), intent(in) | vars, | ||
| logical, intent(in) | lbc | ||
| ) |
Linked list implementation.
Create fields from geometry and variables
| [in,out] | self | Fields |
| [in] | geom | Geometry |
| [in] | vars | List of variables |
| [in] | lbc | Boundaries flag |
Definition at line 79 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_create_from_other | ( | type(qg_fields), intent(inout) | self, |
| type(qg_fields), intent(in) | other, | ||
| type(qg_geom), intent(in), target | geom | ||
| ) |
Create fields from another one.
| [in,out] | self | Fields |
| [in] | other | Other fields |
| [in] | geom | Geometry |
Definition at line 119 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_delete | ( | type(qg_fields), intent(inout) | self | ) |
Delete fields.
| [in,out] | self | Fields |
Definition at line 155 of file qg_fields_mod.F90.

| subroutine, public qg_fields_mod::qg_fields_deserialize | ( | type(qg_fields), intent(inout) | self, |
| integer, intent(in) | vsize, | ||
| real(kind_real), dimension(vsize), intent(in) | vect_fld, | ||
| integer, intent(inout) | index | ||
| ) |
Deserialize fields.
| [in,out] | self | Fields |
| [in] | vsize | Size |
| [in] | vect_fld | Vector |
Definition at line 1428 of file qg_fields_mod.F90.

| subroutine, public qg_fields_mod::qg_fields_diff_incr | ( | type(qg_fields), intent(inout) | lhs, |
| type(qg_fields), intent(in) | fld1, | ||
| type(qg_fields), intent(in) | fld2 | ||
| ) |
Compute increment from the difference of two fields.
| [in,out] | lhs | Left-hand side |
| [in] | fld1 | First fields |
| [in] | fld2 | Second fields |
Definition at line 544 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_dirac | ( | type(qg_fields), intent(inout) | self, |
| type(fckit_configuration), intent(in) | f_conf | ||
| ) |
Set fields to Diracs.
| [in,out] | self | Fields |
| [in] | f_conf | FCKIT configuration |
Definition at line 225 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_dot_prod | ( | type(qg_fields), intent(in) | fld1, |
| type(qg_fields), intent(in) | fld2, | ||
| real(kind_real), intent(out) | zprod | ||
| ) |
Compute dot product for fields.
| [in] | fld1 | First fields |
| [in] | fld2 | Second fields |
| [out] | zprod | Dot product |
Definition at line 496 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_from_atlas | ( | type(qg_fields), intent(inout) | self, |
| type(oops_variables), intent(in) | vars, | ||
| type(atlas_fieldset), intent(inout) | afieldset | ||
| ) |
Get fields from ATLAS.
| [in,out] | self | Fields |
| [in] | vars | List of variables |
| [in,out] | afieldset | ATLAS fieldset |
Definition at line 1222 of file qg_fields_mod.F90.

| subroutine, public qg_fields_mod::qg_fields_getpoint | ( | type(qg_fields), intent(in) | fld, |
| type(qg_geom_iter), intent(in) | iter, | ||
| integer, intent(in) | nval, | ||
| real(kind_real), dimension(nval), intent(inout) | vals | ||
| ) |
Get points from fields.
| [in] | fld | Fields |
| [in] | iter | Geometry iterator |
| [in] | nval | Number of values |
| [in,out] | vals | Values |
Definition at line 1273 of file qg_fields_mod.F90.

| subroutine, public qg_fields_mod::qg_fields_gpnorm | ( | type(qg_fields), intent(in) | fld, |
| integer, dimension(6), intent(inout) | vpresent, | ||
| real(kind_real), dimension(6), intent(inout) | vmin, | ||
| real(kind_real), dimension(6), intent(inout) | vmax, | ||
| real(kind_real), dimension(6), intent(inout) | vrms | ||
| ) |
Fields statistics.
| [in] | fld | Fields |
| [in,out] | vpresent | Variables presence flag |
| [in,out] | vmin | Variables minimum |
| [in,out] | vmax | Variables maximum |
| [in,out] | vrms | Variables RMS |
Definition at line 981 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_lbc | ( | type(qg_fields), intent(in) | fld, |
| integer, intent(out) | lbc | ||
| ) |
Get LBC presence.
| [in] | fld | Fields |
| [out] | lbc | LBC presence |
Definition at line 1111 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_ones | ( | type(qg_fields), intent(inout) | self | ) |
Set fields to ones.
Definition at line 200 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_random | ( | type(qg_fields), intent(inout) | self, |
| character(len=1), intent(in) | var | ||
| ) |
Generate random fields.
| [in,out] | self | Fields |
| [in] | var | Variable to randomize ('x' or 'q') |
Definition at line 285 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_read_file | ( | type(qg_fields), intent(inout) | fld, |
| type(fckit_configuration), intent(in) | f_conf, | ||
| type(datetime), intent(inout) | vdate | ||
| ) |
Read fields from file.
| [in,out] | fld | Fields |
| [in] | f_conf | FCKIT configuration |
| [in,out] | vdate | Date and time |
Definition at line 651 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_rms | ( | type(qg_fields), intent(in) | fld, |
| real(kind_real), intent(out) | prms | ||
| ) |
Fields RMS.
| [in] | fld | Fields |
| [out] | prms | RMS |
Definition at line 1045 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_self_add | ( | type(qg_fields), intent(inout) | self, |
| type(qg_fields), intent(in) | rhs | ||
| ) |
Add fields.
| [in,out] | self | Fields |
| [in] | rhs | Right-hand side |
Definition at line 365 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_self_mul | ( | type(qg_fields), intent(inout) | self, |
| real(kind_real), intent(in) | zz | ||
| ) |
Multiply fields by a scalar.
| [in,out] | self | Fields |
| [in] | zz | Multiplier |
Definition at line 417 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_self_schur | ( | type(qg_fields), intent(inout) | self, |
| type(qg_fields), intent(in) | rhs | ||
| ) |
Schur product of fields.
| [in,out] | self | Fields |
| [in] | rhs | Right-hand side |
Definition at line 470 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_self_sub | ( | type(qg_fields), intent(inout) | self, |
| type(qg_fields), intent(in) | rhs | ||
| ) |
Subtract fields.
| [in,out] | self | Fields |
| [in] | rhs | Right-hand side |
Definition at line 391 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_serialize | ( | type(qg_fields), intent(in) | fld, |
| integer, intent(in) | vsize, | ||
| real(kind_real), dimension(vsize), intent(inout) | vect_fld | ||
| ) |
Serialize fields.
| [in] | fld | Fields |
| [in] | vsize | Size |
| [in,out] | vect_fld | Vector |
Definition at line 1371 of file qg_fields_mod.F90.

| subroutine, public qg_fields_mod::qg_fields_set_atlas | ( | type(qg_fields), intent(in) | self, |
| type(oops_variables), intent(in) | vars, | ||
| type(atlas_fieldset), intent(inout) | afieldset | ||
| ) |
Set ATLAS field.
| [in] | self | Fields |
| [in] | vars | List of variables |
| [in,out] | afieldset | ATLAS fieldset |
Definition at line 1131 of file qg_fields_mod.F90.

| subroutine, public qg_fields_mod::qg_fields_setpoint | ( | type(qg_fields), intent(inout) | fld, |
| type(qg_geom_iter), intent(in) | iter, | ||
| integer, intent(in) | nval, | ||
| real(kind_real), dimension(nval), intent(in) | vals | ||
| ) |
Set fields values at a specified gridpoint.
| [in,out] | fld | Fields |
| [in] | iter | Geometry iterator |
| [in] | nval | Number of values |
| [in] | vals | Values |
Definition at line 1322 of file qg_fields_mod.F90.

| subroutine, public qg_fields_mod::qg_fields_sizes | ( | type(qg_fields), intent(in) | fld, |
| integer, intent(out) | nx, | ||
| integer, intent(out) | ny, | ||
| integer, intent(out) | nz | ||
| ) |
Get fields geometry.
| [in] | fld | Fields |
| [out] | nx | X size |
| [out] | ny | Y size |
| [out] | nz | Z size |
Definition at line 1093 of file qg_fields_mod.F90.

| subroutine, public qg_fields_mod::qg_fields_to_atlas | ( | type(qg_fields), intent(in) | self, |
| type(oops_variables), intent(in) | vars, | ||
| type(atlas_fieldset), intent(inout) | afieldset | ||
| ) |
Convert fields to ATLAS.
| [in] | self | Fields |
| [in] | vars | List of variables |
| [in,out] | afieldset | ATLAS fieldset |
Definition at line 1163 of file qg_fields_mod.F90.

| subroutine, public qg_fields_mod::qg_fields_write_file | ( | type(qg_fields), intent(in) | fld, |
| type(fckit_configuration), intent(in) | f_conf, | ||
| type(datetime), intent(in) | vdate | ||
| ) |
Write fields to file.
| [in] | fld | Fields |
| [in] | f_conf | FCKIT configuration |
| [in] | vdate | Date and time |
Definition at line 766 of file qg_fields_mod.F90.


| subroutine, public qg_fields_mod::qg_fields_zero | ( | type(qg_fields), intent(inout) | self | ) |
Set fields to zero.
Definition at line 175 of file qg_fields_mod.F90.


| type(registry_t), public qg_fields_mod::qg_fields_registry |
Linked list interface - defines registry_t type.
Global registry
Definition at line 69 of file qg_fields_mod.F90.
|
private |
Random seed (for reproducibility)
Definition at line 48 of file qg_fields_mod.F90.