Entropy-based artificial viscosity model for compressible flow.
More...
|
| procedure, pass(this) | init (this, case, json) |
| | Initialize the entropy viscosity model.
|
| |
| procedure, pass(this) | free (this) |
| | Free the entropy viscosity model.
|
| |
| procedure, pass(this) | preprocess (this, time) |
| | Compute viscosity before advancing the time step.
|
| |
| procedure, pass(this) | compute (this, time) |
| | Advance the entropy history after the time step.
|
| |
| procedure, pass(this) | restart (this, time) |
| | Reconstruct entropy history after restart.
|
| |
| procedure, pass(this) | compute_h (this) |
| | Compute the local characteristic mesh size.
|
| |
| procedure, pass(this) | set_fields (this, p, rho, u, v, w, max_wave_speed, msh, xh, gs, gamma) |
| | Associate the compressible flow fields.
|
| |
| procedure, pass(this) | compute_entropy (this) |
| | Compute entropy from pressure and density.
|
| |
| procedure, pass(this) | init_base (this, dof, coef, reg_coeff_name) |
| | Constructor for the avm_t (base) class.
|
| |
| procedure, pass(this) | free_base (this) |
| | Destructor for the avm_t (base) class.
|
| |
| procedure(avm_init), deferred, pass | init (this, case, json) |
| | The common constructor.
|
| |
| procedure(avm_free), deferred, pass | free (this) |
| | Destructor.
|
| |
| procedure(avm_preprocess), deferred, pass | preprocess (this, time) |
| | Perform artificial viscosity related computations before the time step.
|
| |
| procedure(avm_compute), deferred, pass | compute (this, time) |
| | Perform artificial viscosity related computations after the time step.
|
| |
| procedure, pass(this) | restart (this, time) |
| | Restore model state after loading a checkpoint.
|
| |
|
| real(kind=rp) | c_avisc_entropy |
| | Entropy viscosity coefficient.
|
| |
| real(kind=rp) | c_avisc_low |
| | Low-order viscosity coefficient.
|
| |
| real(kind=rp) | gamma |
| | Ratio of specific heats.
|
| |
| type(field_t) | entropy_residual |
| | Entropy residual field.
|
| |
| type(field_series_t) | s_lag |
| | Entropy history used by the BDF residual.
|
| |
| type(field_t), pointer | s => null() |
| | Current entropy field.
|
| |
| type(field_t), pointer | p => null() |
| | Pressure field.
|
| |
| type(field_t), pointer | rho => null() |
| | Density field.
|
| |
| type(field_t), pointer | u => null() |
| | First velocity component.
|
| |
| type(field_t), pointer | v => null() |
| | Second velocity component.
|
| |
| type(field_t), pointer | w => null() |
| | Third velocity component.
|
| |
| type(field_t) | h |
| | Local characteristic mesh size.
|
| |
| type(field_t), pointer | max_wave_speed => null() |
| | Maximum local characteristic wave speed.
|
| |
| type(mesh_t), pointer | msh => null() |
| | Computational mesh.
|
| |
| type(space_t), pointer | xh => null() |
| | Function space.
|
| |
| type(gs_t), pointer | gs => null() |
| | Gather-scatter operator for the function space.
|
| |
| type(field_t), pointer | reg_coeff => null() |
| | Artificial viscosity.
|
| |
| type(coef_t), pointer | coef => null() |
| | SEM coefficients.
|
| |
| type(dofmap_t), pointer | dof => null() |
| | SEM dofmap.
|
| |
| integer | les_model_registry_size = 0 |
| | Number of custom artificial viscosity model allocators.
|
| |
|
| procedure, pass, private | compute_residual (this, tstep, dt, dt_lag) |
| | Compute the entropy residual.
|
| |
| procedure, pass, private | compute_viscosity (this, tstep) |
| | Compute the entropy viscosity coefficient.
|
| |
| procedure, pass, private | smooth_viscosity (this) |
| | Smooth viscosity across element interfaces.
|
| |
| procedure, pass, private | apply_element_max (this) |
| | Replace nodal values by each element maximum.
|
| |
| procedure, pass, private | low_order_viscosity (this, i) |
| | Evaluate the low-order viscosity at a point.
|
| |
Definition at line 78 of file entropy_viscosity.f90.
◆ apply_element_max()
◆ compute() [1/2]
◆ compute() [2/2]
- Parameters
-
| this | The entropy viscosity model. |
| time | The current time state. |
Definition at line 119 of file entropy_viscosity.f90.
◆ compute_entropy()
◆ compute_h()
◆ compute_residual()
| procedure, pass, private entropy_viscosity::entropy_viscosity_t::compute_residual |
( |
class(entropy_viscosity_t), intent(inout) |
this, |
|
|
integer, intent(in) |
tstep, |
|
|
real(kind=rp), intent(in) |
dt, |
|
|
real(kind=rp), dimension(10), intent(in) |
dt_lag |
|
) |
| |
|
private |
- Parameters
-
| this | The entropy viscosity model. |
| tstep | The current time-step index. |
| dt | The current time-step size. |
| dt_lag | Previous time-step sizes. |
Definition at line 130 of file entropy_viscosity.f90.
◆ compute_viscosity()
- Parameters
-
| this | The entropy viscosity model. |
| tstep | The current time-step index. |
Definition at line 133 of file entropy_viscosity.f90.
◆ free() [1/2]
◆ free() [2/2]
◆ free_base()
- Parameters
-
| this | The artificial viscosity model. |
Definition at line 61 of file avm.f90.
◆ init() [1/2]
◆ init() [2/2]
- Parameters
-
| this | The entropy viscosity model. |
| case | The compressible-flow case. |
| json | The model configuration. |
Definition at line 113 of file entropy_viscosity.f90.
◆ init_base()
| procedure, pass(this) artificial_viscosity_model::avm_t::init_base |
( |
class(avm_t), intent(inout) |
this, |
|
|
class(dofmap_t), intent(in), target |
dof, |
|
|
class(coef_t), intent(in), target |
coef, |
|
|
character(len=*), intent(in) |
reg_coeff_name |
|
) |
| |
|
inherited |
- Parameters
-
| object | The object to be allocated. |
| type_name | The name of the artificial viscosity model. |
| case | The case_t object. |
| json | A dictionary with parameters. Constructor for the avm_t (base) class. |
| this | The artificial viscosity model. |
| dof | Map of degrees of freedom. |
| coef | The SEM coefficients. |
| reg_coeff_name | The name of the artificial viscosity field. |
Definition at line 59 of file avm.f90.
◆ low_order_viscosity()
- Parameters
-
| this | The entropy viscosity model. |
| i | The point index. |
- Returns
- The low-order viscosity.
Definition at line 142 of file entropy_viscosity.f90.
◆ preprocess() [1/2]
◆ preprocess() [2/2]
- Parameters
-
| this | The entropy viscosity model. |
| time | The current time state. |
Definition at line 117 of file entropy_viscosity.f90.
◆ restart() [1/2]
- Parameters
-
| this | The artificial viscosity model. |
| time | The restored time state. |
Definition at line 71 of file avm.f90.
◆ restart() [2/2]
- Parameters
-
| this | The entropy viscosity model. |
| time | The restored time state. |
Definition at line 121 of file entropy_viscosity.f90.
◆ set_fields()
| procedure, pass(this) entropy_viscosity::entropy_viscosity_t::set_fields |
( |
class(entropy_viscosity_t), intent(inout) |
this, |
|
|
type(field_t), intent(in), target |
p, |
|
|
type(field_t), intent(in), target |
rho, |
|
|
type(field_t), intent(in), target |
u, |
|
|
type(field_t), intent(in), target |
v, |
|
|
type(field_t), intent(in), target |
w, |
|
|
type(field_t), intent(in), target |
max_wave_speed, |
|
|
type(mesh_t), intent(in), target |
msh, |
|
|
type(space_t), intent(in), target |
xh, |
|
|
type(gs_t), intent(in), target |
gs, |
|
|
real(kind=rp), intent(in) |
gamma |
|
) |
| |
- Parameters
-
| this | The entropy viscosity model. |
| p | The pressure field. |
| rho | The density field. |
| u | The first velocity component. |
| v | The second velocity component. |
| w | The third velocity component. |
| max_wave_speed | The maximum characteristic wave speed. |
| msh | The computational mesh. |
| Xh | The function space. |
| gs | The gather-scatter operator. |
| gamma | The ratio of specific heats. |
Definition at line 125 of file entropy_viscosity.f90.
◆ smooth_viscosity()
◆ c_avisc_entropy
| real(kind=rp) entropy_viscosity::entropy_viscosity_t::c_avisc_entropy |
◆ c_avisc_low
| real(kind=rp) entropy_viscosity::entropy_viscosity_t::c_avisc_low |
◆ coef
◆ dof
◆ entropy_residual
| type(field_t) entropy_viscosity::entropy_viscosity_t::entropy_residual |
◆ gamma
| real(kind=rp) entropy_viscosity::entropy_viscosity_t::gamma |
◆ gs
| type(field_t) entropy_viscosity::entropy_viscosity_t::h |
◆ les_model_registry_size
| integer artificial_viscosity_model::avm_t::les_model_registry_size = 0 |
|
inherited |
◆ max_wave_speed
◆ msh
◆ reg_coeff
◆ rho
◆ s_lag
◆ xh
The documentation for this type was generated from the following file: