version 0.6.0
mod_extrapolate_field_time Module Reference

Extrapolate a field (for example the velocity or pressure) foward in time. More...

Functions/Subroutines

subroutine extrapolate_edge_field_time_o1 (field_tm0, t, field_res)
 Extrapolate the edge field to field_res at order 1. More...
 
subroutine extrapolate_face_field_time_o1 (field_tm0, t, field_res)
 Extrapolate the face field to field_res at order 1. More...
 
subroutine extrapolate_scalar_field_time_o1 (field_tm0, t, field_res)
 Extrapolate the scalar field to field_res at order 1. More...
 
subroutine extrapolate_edge_field_time_o2 (field_tm1, field_tm0, dtm1, t, field_res)
 Extrapolate the edge fields to field_res at the given time, order 2. More...
 
subroutine extrapolate_face_field_time_o2 (field_tm1, field_tm0, dtm1, t, field_res)
 Extrapolate the face fields to field_res atthe given time, order 2. More...
 
subroutine extrapolate_scalar_field_time_o2 (field_tm1, field_tm0, dtm1, t, field_res)
 Extrapolate the scalar fields to field_res at the given time, order 2. More...
 
subroutine extrapolate_edge_field_time_o3 (field_tm2, field_tm1, field_tm0, dtm2, dtm1, t, field_res)
 Extrapolate the edge fields to field_res at the given time, order 3. More...
 
subroutine extrapolate_face_field_time_o3 (field_tm2, field_tm1, field_tm0, dtm2, dtm1, t, field_res)
 Extrapolate the face fields to field_res at the given time, order 3. More...
 
subroutine extrapolate_scalar_field_time_o3 (field_tm2, field_tm1, field_tm0, dtm2, dtm1, t, field_res)
 Extrapolate the fields to field_res at the given time, order 3. More...
 
subroutine time_extrapolate_rec_face_field_o2 (field_tm1, field_tm0, dtm1, dt, t, field_res)
 Extrapolate (reconstruct) the face fields to field_res at \(t=dt_0\), order 2. More...
 
subroutine time_extrapolate_rec_scalar_field_o2 (field_tm1, field_tm0, dtm1, dt, t, field_res)
 Extrapolate (reconstruct) the scalar fields to field_res at \(t=dt_0\), order 2. More...
 
subroutine time_extrapolate_rec_scalar_field_o3 (field_tm2, field_tm1, field_tm0, dtm2, dtm1, dt, t, field_res)
 

Detailed Description

Note
This module is a simple wrapper for
See also
mod_interpolate_field_time routines

Function/Subroutine Documentation

◆ extrapolate_edge_field_time_o1()

subroutine mod_extrapolate_field_time::extrapolate_edge_field_time_o1 ( type(t_edge_field), intent(in)  field_tm0,
double precision, intent(in)  t,
type(t_edge_field), intent(inout)  field_res 
)
Note
This extrapolation is only used for generic computation (as the result is the given array)
Parameters
[in]field_tm0The field at time \(t=0\)
[in]tThe time where to extrapolate
[out]field_resThe resulting extrapolated field

◆ extrapolate_edge_field_time_o2()

subroutine mod_extrapolate_field_time::extrapolate_edge_field_time_o2 ( type(t_edge_field), intent(in)  field_tm1,
type(t_edge_field), intent(in)  field_tm0,
double precision, intent(in)  dtm1,
double precision, intent(in)  t,
type(t_edge_field), intent(inout)  field_res 
)
Parameters
[in]field_tm1The field at time \(t=-dtm1\)
[in]field_tm0The field at time \(t=0\)
[in]dtm1The time step between 'field_tm1' and 'field_tm0'
[in]tThe time where to extrapolate away from \( t=0 \)
[out]field_resThe resulting extrapolated field

◆ extrapolate_edge_field_time_o3()

subroutine mod_extrapolate_field_time::extrapolate_edge_field_time_o3 ( type(t_edge_field), intent(in)  field_tm2,
type(t_edge_field), intent(in)  field_tm1,
type(t_edge_field), intent(in)  field_tm0,
double precision, intent(in)  dtm2,
double precision, intent(in)  dtm1,
double precision, intent(in)  t,
type(t_edge_field), intent(inout)  field_res 
)
Parameters
[in]field_tm2The field at time \(t=-(dtm2+dtm1)\)
[in]field_tm1The field at time \(t=-dtm1\)
[in]field_tm0The field at time \(t=0\)
[in]dtm2The time step between 'field_tm2' and 'field_tm1'
[in]dtm1The time step between 'field_tm1' and 'field_tm0'
[in]tThe time where to extrapolate away from \( t=0 \)
[out]field_resThe resulting extrapolated field

◆ extrapolate_face_field_time_o1()

subroutine mod_extrapolate_field_time::extrapolate_face_field_time_o1 ( type(t_face_field), intent(in)  field_tm0,
double precision, intent(in)  t,
type(t_face_field), intent(inout)  field_res 
)
Note
This extrapolation is only used for generic computation (as the result is the given array)
Parameters
[in]field_tm0The field at time \(t=0\)
[in]tThe time where to extrapolate
[out]field_resThe resulting extrapolated field

◆ extrapolate_face_field_time_o2()

subroutine mod_extrapolate_field_time::extrapolate_face_field_time_o2 ( type(t_face_field), intent(in)  field_tm1,
type(t_face_field), intent(in)  field_tm0,
double precision, intent(in)  dtm1,
double precision, intent(in)  t,
type(t_face_field), intent(inout)  field_res 
)
Parameters
[in]field_tm1The field at time \(t=-dtm1\)
[in]field_tm0The field at time \(t=0\)
[in]dtm1The time step between 'field_tm1' and 'field_tm0'
[in]tThe time where to extrapolate away from \( t=0 \)
[out]field_resThe resulting extrapolated field

◆ extrapolate_face_field_time_o3()

subroutine mod_extrapolate_field_time::extrapolate_face_field_time_o3 ( type(t_face_field), intent(in)  field_tm2,
type(t_face_field), intent(in)  field_tm1,
type(t_face_field), intent(in)  field_tm0,
double precision, intent(in)  dtm2,
double precision, intent(in)  dtm1,
double precision, intent(in)  t,
type(t_face_field), intent(inout)  field_res 
)
Parameters
[in]field_tm2The field at time \(t=-(dtm2+dtm1)\)
[in]field_tm1The field at time \(t=-dtm1\)
[in]field_tm0The field at time \(t=0\)
[in]dtm2The time step between 'field_tm2' and 'field_tm1'
[in]dtm1The time step between 'field_tm1' and 'field_tm0'
[in]tThe time where to extrapolate away from \( t=0 \)
[out]field_resThe resulting extrapolated field

◆ extrapolate_scalar_field_time_o1()

subroutine mod_extrapolate_field_time::extrapolate_scalar_field_time_o1 ( double precision, dimension(:,:,:), intent(in)  field_tm0,
double precision, intent(in)  t,
double precision, dimension(:,:,:), intent(inout)  field_res 
)
Note
This extrapolation is only used for generic computation (as the result is the given array)
Parameters
[in]field_tm0The field at time \(t=0\)
[in]tThe time where to extrapolate
[out]field_resThe resulting extrapolated field

◆ extrapolate_scalar_field_time_o2()

subroutine mod_extrapolate_field_time::extrapolate_scalar_field_time_o2 ( double precision, dimension(:,:,:), intent(in)  field_tm1,
double precision, dimension(:,:,:), intent(in)  field_tm0,
double precision, intent(in)  dtm1,
double precision, intent(in)  t,
double precision, dimension(:,:,:), intent(inout)  field_res 
)
Parameters
[in]field_tm1The field at time \(t=-dtm1\)
[in]field_tm0The field at time \(t=0\)
[in]dtm1The time step between 'field_tm1' and 'field_tm0'
[in]tThe time where to extrapolate away from \( t=0 \)
[out]field_resThe resulting extrapolated field

◆ extrapolate_scalar_field_time_o3()

subroutine mod_extrapolate_field_time::extrapolate_scalar_field_time_o3 ( double precision, dimension(:,:,:), intent(in)  field_tm2,
double precision, dimension(:,:,:), intent(in)  field_tm1,
double precision, dimension(:,:,:), intent(in)  field_tm0,
double precision, intent(in)  dtm2,
double precision, intent(in)  dtm1,
double precision, intent(in)  t,
double precision, dimension(:,:,:), intent(inout)  field_res 
)
Parameters
[in]field_tm2The field at time \(t=-(dtm2+dtm1)\)
[in]field_tm1The field at time \(t=-dtm1\)
[in]field_tm0The field at time \(t=0\)
[in]dtm2The time step between 'field_tm2' and 'field_tm1'
[in]dtm1The time step between 'field_tm1' and 'field_tm0'
[in]tThe time where to extrapolate away from \( t=0 \)
[out]field_resThe resulting extrapolated field

◆ time_extrapolate_rec_face_field_o2()

subroutine mod_extrapolate_field_time::time_extrapolate_rec_face_field_o2 ( type(t_face_field), intent(in)  field_tm1,
type(t_face_field), intent(in)  field_tm0,
double precision, intent(in)  dtm1,
double precision, intent(in)  dt,
double precision, intent(in)  t,
type(t_face_field), intent(inout)  field_res 
)
Parameters
[in]field_tm1The mean field between time \(t=(-dtm1,0)\)
[in]field_tm0The mean field between time \(t=(0,+dt)\)
[in]dtm1The time step between \(t^{n-1}\) and \(t^{n}\)
[in]dtThe time step between \(t^{n}\) and \(t^{n+1}\)
[in]tThe time where to extrapolate (starting from \((t^{n-1}+t^{n})/2\))
[out]field_resThe resulting extrapolated field

◆ time_extrapolate_rec_scalar_field_o2()

subroutine mod_extrapolate_field_time::time_extrapolate_rec_scalar_field_o2 ( double precision, dimension(:,:,:), intent(in)  field_tm1,
double precision, dimension(:,:,:), intent(in)  field_tm0,
double precision, intent(in)  dtm1,
double precision, intent(in)  dt,
double precision, intent(in)  t,
double precision, dimension(:,:,:), intent(inout)  field_res 
)
Parameters
[in]field_tm1The mean field between time \(t=(-dtm1,0)\)
[in]field_tm0The mean field between time \(t=(0,+dt)\)
[in]dtm1The time step between \(t^{n-1}\) and \(t^{n}\)
[in]dtThe time step between \(t^{n}\) and \(t^{n+1}\)
[in]tThe time where to extrapolate (starting from \((t^{n-1}+t^{n})/2\))
[out]field_resThe resulting extrapolated field