version 0.6.0
Loading...
Searching...
No Matches
mod_interpolate_vector_face_to_cell Module Reference

Interpolate vector field from faces to cells.

Functions/Subroutines

subroutine interpolate_vector_face_to_cell_2tensors (velocity, velocity_x_cell, velocity_y_cell)
 Interpolate at the cell centers a vector field defined on faces (2D)
 
subroutine interpolate_vector_face_to_cell_3tensors (velocity, velocity_x_cell, velocity_y_cell, velocity_z_cell)
 Interpolate at the cell centers a vector field defined on faces (3D)
 
subroutine interpolate_vector_face_to_cell_1tensor (velocity, velocity_cell)
 Interpolate at the cell centers a vector field defined on faces.
 
subroutine interpolate_vector_face_to_cell_order4 (velocity, velocity_cell)
 Interpolate at the cell centers a vector field defined on faces. Fourth order version.
 
double precision function, dimension(3) interpolate_vector_face_to_cell_unit (velocity, i, j, k)
 Interpolate a face field to the cell center (i,j,k).
 
double precision function, dimension(2) interpolate_vector_face_to_cell_unit_2d (velocity, i, j, k)
 Interpolate a face field to the cell center (i,j,k).
 
double precision function, dimension(3) interpolate_vector_face_to_cell_unit_3d (velocity, i, j, k)
 Interpolate a face field to the cell center (i,j,k).
 
double precision function interpolate_vector_face_to_cell_unit_x (velocity, i, j, k)
 Interpolate the 1st component of a face field to the cell center (i,j,k).
 
double precision function interpolate_vector_face_to_cell_unit_y (velocity, i, j, k)
 Interpolate the 2nd component of a face field to the cell center (i,j,k).
 
double precision function interpolate_vector_face_to_cell_unit_z (velocity, i, j, k)
 Interpolate the 3rd component of a face field to the cell center (i,j,k).
 

Function/Subroutine Documentation

◆ interpolate_vector_face_to_cell_1tensor()

subroutine mod_interpolate_vector_face_to_cell::interpolate_vector_face_to_cell_1tensor ( type(t_face_field), intent(in) velocity,
double precision, dimension(:,:,:,:), intent(inout) velocity_cell )
Parameters
[in]velocityThe x,y,z components tensor on the faces.
[in,out]velocity_cellThe (x,y,z) component tensor on the cells (nx,ny,nz)

◆ interpolate_vector_face_to_cell_2tensors()

subroutine mod_interpolate_vector_face_to_cell::interpolate_vector_face_to_cell_2tensors ( type(t_face_field), intent(in) velocity,
double precision, dimension(:,:,:), intent(inout) velocity_x_cell,
double precision, dimension(:,:,:), intent(inout) velocity_y_cell )
Parameters
[in]velocityThe x,y,z components tensor on the faces.
[in,out]velocity_x_cellThe x component tensor on the cells (nx,ny,nz)
[in,out]velocity_y_cellThe y component tensor on the cells (nx,ny,nz)
Warning
This function must be used in order to avoid any memory error when the third array is not allocated in 2D

◆ interpolate_vector_face_to_cell_3tensors()

subroutine mod_interpolate_vector_face_to_cell::interpolate_vector_face_to_cell_3tensors ( type(t_face_field), intent(in) velocity,
double precision, dimension(:,:,:), intent(inout) velocity_x_cell,
double precision, dimension(:,:,:), intent(inout) velocity_y_cell,
double precision, dimension(:,:,:), intent(inout) velocity_z_cell )
Parameters
[in]velocityThe x,y,z components tensor on the faces.
[in,out]velocity_x_cellThe x component tensor on the cells (nx,ny,nz)
[in,out]velocity_y_cellThe y component tensor on the cells (nx,ny,nz)
[in,out]velocity_z_cellThe z component tensor on the cells (nx,ny,nz)
Warning
This function must not be used in 2D in order to avoid any memory error when the third array is not allocated in 2D
This function must not be used in order to avoid any memory error when the third array is not allocated in 2D

◆ interpolate_vector_face_to_cell_order4()

subroutine mod_interpolate_vector_face_to_cell::interpolate_vector_face_to_cell_order4 ( type(t_face_field), intent(in) velocity,
double precision, dimension(:,:,:,:), intent(inout) velocity_cell )
Parameters
[in]velocityThe x,y,z components tensor on the faces.
[in,out]velocity_cellThe (x,y,z) component tensor on the cells (nx,ny,nz)

◆ interpolate_vector_face_to_cell_unit()

double precision function, dimension(3) mod_interpolate_vector_face_to_cell::interpolate_vector_face_to_cell_unit ( type(t_face_field), intent(in) velocity,
integer, intent(in) i,
integer, intent(in) j,
integer, intent(in) k )
Returns
This function always returns the tree components of the vector, even in 2D applications.
Parameters
[in]velocitythe face field
[in]i,j,kthe face index
Todo
It does not seemed to be used anymore ?!! (not efficient routine ??)

◆ interpolate_vector_face_to_cell_unit_2d()

double precision function, dimension(2) mod_interpolate_vector_face_to_cell::interpolate_vector_face_to_cell_unit_2d ( type(t_face_field), intent(in) velocity,
integer, intent(in) i,
integer, intent(in) j,
integer, intent(in) k )
Returns
Unlike interpolate_vector_face_to_cell_unit, this function always returns only the two first components of the vector.
Parameters
[in]velocitythe face field
[in]i,j,kthe face index

◆ interpolate_vector_face_to_cell_unit_3d()

double precision function, dimension(3) mod_interpolate_vector_face_to_cell::interpolate_vector_face_to_cell_unit_3d ( type(t_face_field), intent(in) velocity,
integer, intent(in) i,
integer, intent(in) j,
integer, intent(in) k )
Warning
Works for 3D face fields only.
Parameters
[in]velocitythe face field
[in]i,j,kthe face index