version 0.6.0
mod_integration_computer Module Reference

Computer for evaluating Integration Schemes.

Functions/Subroutines

double precision function integ_compute_from_values (scheme, values, cell_width)
 Compute the integration via the scheme by giving the associated field values. More...
 
double precision function integ_compute_from_array (scheme, scheme_interp, step_array, cv_array, array, index)
 Compute the integration via the scheme by giving the associated array, the index where to compute the integration. More...
 
double precision function integ_compute_from_field (scheme, order, pos_field_x, pos_field_y, pos_field_z, cv_field_x, cv_field_y, cv_field_z, field, i, j, k, dim)
 Integrate on the field Given a 'scheme' and the 'order' of interpolation.
 
double precision function integ_compute_from_field_with_function (scheme, order, pos_field_x, pos_field_y, pos_field_z, cv_field_x, cv_field_y, cv_field_z, field, i, j, k, dim, func, arg)
 Integrate on the field Given a 'scheme' and the 'order' of interpolation Apply the given scalar function to the interpolated values.
 
double precision function integ_compute_from_face_field (scheme, order, pos_field_x, pos_field_y, pos_field_z, cv_field_x, cv_field_y, cv_field_z, field, i, j, k, dim, comp)
 Integrate on the field Given a 'scheme' and the 'order' of interpolation Using the component 'comp' (1 for 'u', 2 for 'v', 3 for 'w')
 

Function/Subroutine Documentation

◆ integ_compute_from_array()

double precision function mod_integration_computer::integ_compute_from_array ( class(integ_scheme), intent(in)  scheme,
class(t_int_scheme), intent(in)  scheme_interp,
double precision, dimension(:), intent(in)  step_array,
double precision, dimension(:), intent(in)  cv_array,
double precision, dimension(:), intent(in)  array,
integer, intent(in)  index 
)

For that purpose, we use interpolation of the data in 'array' The integration is done around the 'index' node, ie in the interval [pos(index)-cv_array(index)/2 : pos(index)+cv_array(index)/2]

Parameters
[in]schemethe finite difference scheme
[in]scheme_interpthe interpolation scheme to use type_int_scheme
[in]step_arraythe discretization step array where step_array(i) is the step between array(i) and array(i+1)
[in]arraythe 1D array \(\phi(i)\) to which apply the scheme at the given index.
[in]cv_arrayis the control volume array, around the nodes
[in]indexthe index where to compute the integral
Returns
the value of the scheme evaluated with the input values
Precondition
the scheme has to be of dimension 1!

◆ integ_compute_from_values()

double precision function mod_integration_computer::integ_compute_from_values ( class(integ_scheme scheme,
double precision, dimension(:), intent(in)  values,
double precision, intent(in)  cell_width 
)
Note
The integration is done between [-1:+1]
Parameters
[in]schemethe integration scheme
[in]valuesthe field values to which to apply the scheme. They must be located at the associated scheme positions. The array must be of the same dimension as the scheme.
[in]cell_widththe physical effective width (volume) of the 1D cell
Returns
the value of the scheme evaluated with the input values