OOPS
qg_fields_interface Module Reference

Functions/Subroutines

subroutine qg_fields_create_c (c_key_self, c_key_geom, c_vars, c_lbc)
 Create fields from geometry and variables. More...
 
subroutine qg_fields_create_from_other_c (c_key_self, c_key_other, c_key_geom)
 Create fields from another one. More...
 
subroutine qg_fields_delete_c (c_key_self)
 Delete fields. More...
 
subroutine qg_fields_zero_c (c_key_self)
 Set fields to zero. More...
 
subroutine qg_fields_ones_c (c_key_self)
 Set fields to ones. More...
 
subroutine qg_fields_dirac_c (c_key_self, c_conf)
 Set fields to Diracs. More...
 
subroutine qg_fields_random_c (c_key_self, c_vars)
 Generate random fields. More...
 
subroutine qg_fields_copy_c (c_key_self, c_key_other)
 Copy fields. More...
 
subroutine qg_fields_self_add_c (c_key_self, c_key_rhs)
 Add fields. More...
 
subroutine qg_fields_self_sub_c (c_key_self, c_key_rhs)
 Subtract fields. More...
 
subroutine qg_fields_self_mul_c (c_key_self, c_zz)
 Multiply fields by a scalar. More...
 
subroutine qg_fields_axpy_c (c_key_self, c_zz, c_key_rhs)
 Apply axpy operator to fields. More...
 
subroutine qg_fields_self_schur_c (c_key_self, c_key_rhs)
 Schur product of fields. More...
 
subroutine qg_fields_dot_prod_c (c_key_fld1, c_key_fld2, c_prod)
 Compute dot product for fields. More...
 
subroutine qg_fields_add_incr_c (c_key_self, c_key_rhs)
 Add increment to fields. More...
 
subroutine qg_fields_diff_incr_c (c_key_lhs, c_key_fld1, c_key_fld2)
 Compute increment from the difference of two fields. More...
 
subroutine qg_fields_change_resol_c (c_key_fld, c_key_rhs)
 Change fields resolution. More...
 
subroutine qg_fields_read_file_c (c_key_fld, c_conf, c_dt)
 Read fields from file. More...
 
subroutine qg_fields_write_file_c (c_key_fld, c_conf, c_dt)
 Write fields to file. More...
 
subroutine qg_fields_analytic_init_c (c_key_fld, c_conf, c_dt)
 Analytic initialization of fields. More...
 
subroutine qg_fields_gpnorm_c (c_key_fld, vpresent, vmin, vmax, vrms)
 Fields statistics. More...
 
subroutine qg_fields_rms_c (c_key_fld, prms)
 Fields RMS. More...
 
subroutine qg_fields_sizes_c (c_key_fld, c_nx, c_ny, c_nz)
 Get fields geometry. More...
 
subroutine qg_fields_lbc_c (c_key_fld, c_lbc)
 Get fields geometry. More...
 
subroutine qg_fields_set_atlas_c (c_key_fld, c_vars, c_afieldset)
 Create ATLAS fields. More...
 
subroutine qg_fields_to_atlas_c (c_key_fld, c_vars, c_afieldset)
 Convert fields to ATLAS. More...
 
subroutine qg_fields_from_atlas_c (c_key_fld, c_vars, c_afieldset)
 Get fields from ATLAS. More...
 
subroutine qg_fields_getpoint_c (c_key_fld, c_key_iter, c_nval, c_vals)
 Get points from fields. More...
 
subroutine qg_fields_setpoint_c (c_key_fld, c_key_iter, c_nval, c_vals)
 Set points for the fields. More...
 
subroutine qg_fields_serialize_c (c_key_fld, c_vsize, c_vect_fld)
 Serialize fields. More...
 
subroutine qg_fields_deserialize_c (c_key_self, c_vsize, c_vect_fld, c_index)
 Deserialize fields. More...
 

Function/Subroutine Documentation

◆ qg_fields_add_incr_c()

subroutine qg_fields_interface::qg_fields_add_incr_c ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  c_key_rhs 
)
private

Add increment to fields.

Parameters
[in]c_key_selfFields
[in]c_key_rhsRight-hand side

Definition at line 349 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_analytic_init_c()

subroutine qg_fields_interface::qg_fields_analytic_init_c ( integer(c_int), intent(in)  c_key_fld,
type(c_ptr), intent(in), value  c_conf,
type(c_ptr), intent(in), value  c_dt 
)
private

Analytic initialization of fields.

Parameters
[in]c_key_fldFields
[in]c_confConfiguration
[in]c_dtDate and time

Definition at line 467 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_axpy_c()

subroutine qg_fields_interface::qg_fields_axpy_c ( integer(c_int), intent(in)  c_key_self,
real(c_double), intent(in)  c_zz,
integer(c_int), intent(in)  c_key_rhs 
)
private

Apply axpy operator to fields.

Parameters
[in]c_key_selfFields
[in]c_zzMultiplier
[in]c_key_rhsRight-hand side

Definition at line 282 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_change_resol_c()

subroutine qg_fields_interface::qg_fields_change_resol_c ( integer(c_int), intent(in)  c_key_fld,
integer(c_int), intent(in)  c_key_rhs 
)
private

Change fields resolution.

Parameters
[in]c_key_fldFields
[in]c_key_rhsRight-hand side

Definition at line 396 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_copy_c()

subroutine qg_fields_interface::qg_fields_copy_c ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  c_key_other 
)
private

Copy fields.

Parameters
[in]c_key_selfFields
[in]c_key_otherOther fields

Definition at line 196 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_create_c()

subroutine qg_fields_interface::qg_fields_create_c ( integer(c_int), intent(inout)  c_key_self,
integer(c_int), intent(in)  c_key_geom,
type(c_ptr), intent(in), value  c_vars,
logical(c_bool), intent(in)  c_lbc 
)
private

Create fields from geometry and variables.

Parameters
[in,out]c_key_selfFields
[in]c_key_geomGeometry
[in]c_varsList of variables
[in]c_lbcBoundaries flag

Definition at line 29 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_create_from_other_c()

subroutine qg_fields_interface::qg_fields_create_from_other_c ( integer(c_int), intent(inout)  c_key_self,
integer(c_int), intent(in)  c_key_other,
integer(c_int), intent(in)  c_key_geom 
)
private

Create fields from another one.

Parameters
[in,out]c_key_selfFields
[in]c_key_otherOther fields
[in]c_key_geomGeometry

Definition at line 59 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_delete_c()

subroutine qg_fields_interface::qg_fields_delete_c ( integer(c_int), intent(inout)  c_key_self)
private

Delete fields.

Parameters
[in,out]c_key_selfFields

Definition at line 86 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_deserialize_c()

subroutine qg_fields_interface::qg_fields_deserialize_c ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  c_vsize,
real(c_double), dimension(c_vsize), intent(in)  c_vect_fld,
integer(c_int), intent(inout)  c_index 
)
private

Deserialize fields.

Parameters
[in]c_key_selfFields
[in]c_vsizeSize
[in]c_vect_fldVector
[in,out]c_indexIndex

Definition at line 721 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_diff_incr_c()

subroutine qg_fields_interface::qg_fields_diff_incr_c ( integer(c_int), intent(in)  c_key_lhs,
integer(c_int), intent(in)  c_key_fld1,
integer(c_int), intent(in)  c_key_fld2 
)
private

Compute increment from the difference of two fields.

Parameters
[in]c_key_lhsLeft-hand side
[in]c_key_fld1First fields
[in]c_key_fld2Second fields

Definition at line 371 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_dirac_c()

subroutine qg_fields_interface::qg_fields_dirac_c ( integer(c_int), intent(in)  c_key_self,
type(c_ptr), intent(in), value  c_conf 
)
private

Set fields to Diracs.

Parameters
[in]c_key_selfFields
[in]c_confConfiguration

Definition at line 146 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_dot_prod_c()

subroutine qg_fields_interface::qg_fields_dot_prod_c ( integer(c_int), intent(in)  c_key_fld1,
integer(c_int), intent(in)  c_key_fld2,
real(c_double), intent(inout)  c_prod 
)
private

Compute dot product for fields.

Parameters
[in]c_key_fld1First fields
[in]c_key_fld2Second fields
[in,out]c_prodDot product

Definition at line 327 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_from_atlas_c()

subroutine qg_fields_interface::qg_fields_from_atlas_c ( integer(c_int), intent(in)  c_key_fld,
type(c_ptr), intent(in), value  c_vars,
type(c_ptr), intent(in), value  c_afieldset 
)
private

Get fields from ATLAS.

Parameters
[in]c_key_fldFields
[in]c_varsList of variables
[in]c_afieldsetATLAS fieldset pointer

Definition at line 627 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_getpoint_c()

subroutine qg_fields_interface::qg_fields_getpoint_c ( integer(c_int), intent(in)  c_key_fld,
integer(c_int), intent(in)  c_key_iter,
integer(c_int), intent(in)  c_nval,
real(c_double), dimension(c_nval), intent(inout)  c_vals 
)
private

Get points from fields.

Parameters
[in]c_key_fldFields
[in]c_key_iterGeometry iterator
[in]c_nvalNumber of values
[in,out]c_valsValues

Definition at line 652 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_gpnorm_c()

subroutine qg_fields_interface::qg_fields_gpnorm_c ( integer(c_int), intent(in)  c_key_fld,
integer(c_int), dimension(6), intent(inout)  vpresent,
real(c_double), dimension(6), intent(inout)  vmin,
real(c_double), dimension(6), intent(inout)  vmax,
real(c_double), dimension(6), intent(inout)  vrms 
)
private

Fields statistics.

Parameters
[in]c_key_fldFields
[in,out]vpresentVariables presence flag
[in,out]vminVariables minimum
[in,out]vmaxVariables maximum
[in,out]vrmsVariables RMS

Definition at line 492 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_lbc_c()

subroutine qg_fields_interface::qg_fields_lbc_c ( integer(c_int), intent(in)  c_key_fld,
integer(c_int), intent(inout)  c_lbc 
)
private

Get fields geometry.

Parameters
[in]c_key_fldFields
[in,out]c_lbcLBC presence

Definition at line 557 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_ones_c()

subroutine qg_fields_interface::qg_fields_ones_c ( integer(c_int), intent(in)  c_key_self)
private

Set fields to ones.

Parameters
[in]c_key_selfFields

Definition at line 127 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_random_c()

subroutine qg_fields_interface::qg_fields_random_c ( integer(c_int), intent(in)  c_key_self,
type(c_ptr), intent(in), value  c_vars 
)
private

Generate random fields.

Parameters
[in]c_key_selfFields
[in]c_varsList of variables

Definition at line 168 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_read_file_c()

subroutine qg_fields_interface::qg_fields_read_file_c ( integer(c_int), intent(in)  c_key_fld,
type(c_ptr), intent(in), value  c_conf,
type(c_ptr), intent(in), value  c_dt 
)
private

Read fields from file.

Parameters
[in]c_key_fldFields
[in]c_confConfiguration
[in]c_dtDate and time

Definition at line 417 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_rms_c()

subroutine qg_fields_interface::qg_fields_rms_c ( integer(c_int), intent(in)  c_key_fld,
real(c_double), intent(inout)  prms 
)
private

Fields RMS.

Parameters
[in]c_key_fldFields

Definition at line 515 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_self_add_c()

subroutine qg_fields_interface::qg_fields_self_add_c ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  c_key_rhs 
)
private

Add fields.

Parameters
[in]c_key_selfFields
[in]c_key_rhsRight-hand side

Definition at line 218 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_self_mul_c()

subroutine qg_fields_interface::qg_fields_self_mul_c ( integer(c_int), intent(in)  c_key_self,
real(c_double), intent(in)  c_zz 
)
private

Multiply fields by a scalar.

Parameters
[in]c_key_selfFields
[in]c_zzMultiplier

Definition at line 262 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_self_schur_c()

subroutine qg_fields_interface::qg_fields_self_schur_c ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  c_key_rhs 
)
private

Schur product of fields.

Parameters
[in]c_key_selfFields
[in]c_key_rhsRight-hand side

Definition at line 305 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_self_sub_c()

subroutine qg_fields_interface::qg_fields_self_sub_c ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  c_key_rhs 
)
private

Subtract fields.

Parameters
[in]c_key_selfFields
[in]c_key_rhsRight-hand side

Definition at line 240 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_serialize_c()

subroutine qg_fields_interface::qg_fields_serialize_c ( integer(c_int), intent(in)  c_key_fld,
integer(c_int), intent(in)  c_vsize,
real(c_double), dimension(c_vsize), intent(out)  c_vect_fld 
)
private

Serialize fields.

Parameters
[in]c_key_fldFields
[in]c_vsizeSize
[out]c_vect_fldVector

Definition at line 700 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_set_atlas_c()

subroutine qg_fields_interface::qg_fields_set_atlas_c ( integer(c_int), intent(in)  c_key_fld,
type(c_ptr), intent(in), value  c_vars,
type(c_ptr), intent(in), value  c_afieldset 
)
private

Create ATLAS fields.

Parameters
[in]c_key_fldFields
[in]c_varsList of variables
[in]c_afieldsetATLAS fieldset pointer

Definition at line 577 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_setpoint_c()

subroutine qg_fields_interface::qg_fields_setpoint_c ( integer(c_int), intent(in)  c_key_fld,
integer(c_int), intent(in)  c_key_iter,
integer(c_int), intent(in)  c_nval,
real(c_double), dimension(c_nval), intent(in)  c_vals 
)
private

Set points for the fields.

Parameters
[in]c_key_fldFields
[in]c_key_iterGeometry iterator
[in]c_nvalNumber of values
[in]c_valsValues

Definition at line 676 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_sizes_c()

subroutine qg_fields_interface::qg_fields_sizes_c ( integer(c_int), intent(in)  c_key_fld,
integer(c_int), intent(inout)  c_nx,
integer(c_int), intent(inout)  c_ny,
integer(c_int), intent(inout)  c_nz 
)
private

Get fields geometry.

Parameters
[in]c_key_fldFields
[in,out]c_nxX size
[in,out]c_nyY size
[in,out]c_nzZ size

Definition at line 535 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_to_atlas_c()

subroutine qg_fields_interface::qg_fields_to_atlas_c ( integer(c_int), intent(in)  c_key_fld,
type(c_ptr), intent(in), value  c_vars,
type(c_ptr), intent(in), value  c_afieldset 
)
private

Convert fields to ATLAS.

Parameters
[in]c_key_fldFields
[in]c_varsList of variables
[in]c_afieldsetATLAS fieldset pointer

Definition at line 602 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_write_file_c()

subroutine qg_fields_interface::qg_fields_write_file_c ( integer(c_int), intent(in)  c_key_fld,
type(c_ptr), intent(in), value  c_conf,
type(c_ptr), intent(in), value  c_dt 
)
private

Write fields to file.

Parameters
[in]c_key_fldFields
[in]c_confConfiguration
[in]c_dtDate and time

Definition at line 442 of file qg_fields_interface.F90.

Here is the call graph for this function:

◆ qg_fields_zero_c()

subroutine qg_fields_interface::qg_fields_zero_c ( integer(c_int), intent(in)  c_key_self)
private

Set fields to zero.

Parameters
[in]c_key_selfFields

Definition at line 108 of file qg_fields_interface.F90.

Here is the call graph for this function: