OOPS
qg_gom_interface Module Reference

Functions/Subroutines

subroutine qg_gom_setup_c (c_key_self, c_locs, c_vars)
 Setup GOM. More...
 
subroutine qg_gom_create_c (c_key_self)
 Create GOM. More...
 
subroutine qg_gom_delete_c (c_key_self)
 Delete GOM. More...
 
subroutine qg_gom_copy_c (c_key_self, c_key_other)
 Copy GOM. More...
 
subroutine qg_gom_zero_c (c_key_self)
 Set GOM to zero. More...
 
subroutine qg_gom_abs_c (c_key_self)
 Get GOM absolute value. More...
 
subroutine qg_gom_random_c (c_key_self)
 Generate random GOM. More...
 
subroutine qg_gom_mult_c (c_key_self, zz)
 Multiply GOM with a scalar. More...
 
subroutine qg_gom_add_c (c_key_self, c_key_other)
 Add GOM. More...
 
subroutine qg_gom_diff_c (c_key_self, c_key_other)
 Subtract GOM. More...
 
subroutine qg_gom_schurmult_c (c_key_self, c_key_other)
 Schur product for GOM. More...
 
subroutine qg_gom_divide_c (c_key_self, c_key_other)
 Schur division for GOM. More...
 
subroutine qg_gom_rms_c (c_key_self, rms)
 Compute GOM RMS. More...
 
subroutine qg_gom_dotprod_c (c_key_gom1, c_key_gom2, prod)
 GOM dot product. More...
 
subroutine qg_gom_stats_c (c_key_self, kobs, scaling, pmin, pmax, prms)
 Compute GOM statistics. More...
 
subroutine qg_gom_maxloc_c (c_key_self, mxval, iloc, ivar)
 Find and locate GOM max. value. More...
 
subroutine qg_gom_read_file_c (c_key_self, c_conf)
 Read GOM from file. More...
 
subroutine qg_gom_write_file_c (c_key_self, c_conf)
 Write GOM to file. More...
 
subroutine qg_gom_analytic_init_c (c_key_self, c_locs, c_conf)
 GOM analytic initialization. More...
 

Function/Subroutine Documentation

◆ qg_gom_abs_c()

subroutine qg_gom_interface::qg_gom_abs_c ( integer(c_int), intent(in)  c_key_self)
private

Get GOM absolute value.

Parameters
[in]c_key_selfGOM

Definition at line 138 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_add_c()

subroutine qg_gom_interface::qg_gom_add_c ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  c_key_other 
)
private

Add GOM.

Parameters
[in]c_key_selfGOM
[in]c_key_otherOther GOM

Definition at line 201 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_analytic_init_c()

subroutine qg_gom_interface::qg_gom_analytic_init_c ( integer(c_int), intent(in)  c_key_self,
type(c_ptr), intent(in), value  c_locs,
type(c_ptr), intent(in), value  c_conf 
)
private

GOM analytic initialization.

Parameters
[in]c_key_selfGOM
[in]c_locsLocations
[in]c_confConfiguration

Definition at line 421 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_copy_c()

subroutine qg_gom_interface::qg_gom_copy_c ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  c_key_other 
)
private

Copy GOM.

Parameters
[in]c_key_selfGOM
[in]c_key_otherOther GOM

Definition at line 97 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_create_c()

subroutine qg_gom_interface::qg_gom_create_c ( integer(c_int), intent(inout)  c_key_self)
private

Create GOM.

Parameters
[in,out]c_key_selfGOM

Definition at line 53 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_delete_c()

subroutine qg_gom_interface::qg_gom_delete_c ( integer(c_int), intent(inout)  c_key_self)
private

Delete GOM.

Parameters
[in,out]c_key_selfGOM

Definition at line 74 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_diff_c()

subroutine qg_gom_interface::qg_gom_diff_c ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  c_key_other 
)
private

Subtract GOM.

Parameters
[in]c_key_selfGOM
[in]c_key_otherOther GOM

Definition at line 223 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_divide_c()

subroutine qg_gom_interface::qg_gom_divide_c ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  c_key_other 
)
private

Schur division for GOM.

Parameters
[in]c_key_selfGOM
[in]c_key_otherOther GOM

Definition at line 267 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_dotprod_c()

subroutine qg_gom_interface::qg_gom_dotprod_c ( integer(c_int), intent(in)  c_key_gom1,
integer(c_int), intent(in)  c_key_gom2,
real(c_double), intent(inout)  prod 
)
private

GOM dot product.

Parameters
[in]c_key_gom1GOM 1
[in]c_key_gom2GOM 2
[in,out]prodDot product

Definition at line 309 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_maxloc_c()

subroutine qg_gom_interface::qg_gom_maxloc_c ( integer(c_int), intent(in)  c_key_self,
real(c_double), intent(inout)  mxval,
integer(c_int), intent(inout)  iloc,
integer(c_int), intent(inout)  ivar 
)
private

Find and locate GOM max. value.

Parameters
[in]c_key_selfGOM
[in,out]mxvalMaximum value
[in,out]ilocLocation of maximum value
[in,out]ivarVariable with maximum value

Definition at line 355 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_mult_c()

subroutine qg_gom_interface::qg_gom_mult_c ( integer(c_int), intent(in)  c_key_self,
real(c_double), intent(in)  zz 
)
private

Multiply GOM with a scalar.

Parameters
[in]c_key_selfGOM
[in]zzMultiplier

Definition at line 176 of file qg_gom_interface.F90.

◆ qg_gom_random_c()

subroutine qg_gom_interface::qg_gom_random_c ( integer(c_int), intent(in)  c_key_self)
private

Generate random GOM.

Parameters
[in]c_key_selfGOM

Definition at line 157 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_read_file_c()

subroutine qg_gom_interface::qg_gom_read_file_c ( integer(c_int), intent(in)  c_key_self,
type(c_ptr), intent(in), value  c_conf 
)
private

Read GOM from file.

Parameters
[in]c_key_selfGOM
[in]c_confConfiguration

Definition at line 377 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_rms_c()

subroutine qg_gom_interface::qg_gom_rms_c ( integer(c_int), intent(in)  c_key_self,
real(c_double), intent(inout)  rms 
)
private

Compute GOM RMS.

Parameters
[in]c_key_selfGOM

Definition at line 289 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_schurmult_c()

subroutine qg_gom_interface::qg_gom_schurmult_c ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(in)  c_key_other 
)
private

Schur product for GOM.

Parameters
[in]c_key_selfGOM
[in]c_key_otherOther GOM

Definition at line 245 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_setup_c()

subroutine qg_gom_interface::qg_gom_setup_c ( integer(c_int), intent(inout)  c_key_self,
type(c_ptr), intent(in), value  c_locs,
type(c_ptr), intent(in), value  c_vars 
)
private

Setup GOM.

Parameters
[in,out]c_key_selfGOM
[in]c_locsLocations
[in]c_varsVariables

Definition at line 26 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_stats_c()

subroutine qg_gom_interface::qg_gom_stats_c ( integer(c_int), intent(in)  c_key_self,
integer(c_int), intent(inout)  kobs,
real(c_double), intent(inout)  scaling,
real(c_double), intent(inout)  pmin,
real(c_double), intent(inout)  pmax,
real(c_double), intent(inout)  prms 
)
private

Compute GOM statistics.

Parameters
[in]c_key_selfGOM
[in,out]kobsNumber of observations
[in,out]scalingScaling value
[in,out]pminMinimum value
[in,out]pmaxMaximum value
[in,out]prmsRMS

Definition at line 331 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_write_file_c()

subroutine qg_gom_interface::qg_gom_write_file_c ( integer(c_int), intent(in)  c_key_self,
type(c_ptr), intent(in), value  c_conf 
)
private

Write GOM to file.

Parameters
[in]c_key_selfGOM
[in]c_confConfiguration

Definition at line 399 of file qg_gom_interface.F90.

Here is the call graph for this function:

◆ qg_gom_zero_c()

subroutine qg_gom_interface::qg_gom_zero_c ( integer(c_int), intent(in)  c_key_self)
private

Set GOM to zero.

Parameters
[in]c_key_selfGOM

Definition at line 119 of file qg_gom_interface.F90.

Here is the call graph for this function: