MAMMA  1.0
Conduitsolver
Functions/Subroutines | Variables
equations Module Reference

Governing equations. More...

Functions/Subroutines

subroutine phys_var_qp (r_qp, c_qp)
 Physical variables. More...
 
subroutine eval_qp2 (r_qp, qp2)
 Conservative to physical variables. More...
 
subroutine eval_fluxes_qp (c_qp, r_qp, c_flux, r_flux)
 Fluxes. More...
 
subroutine eval_nonhyperbolic_terms_qp (c_qp, c_nh_term_impl, r_qp, r_nh_term_impl)
 Non-Hyperbolic terms. More...
 
subroutine eval_relaxation_terms (relaxation_term)
 Relaxation terms. More...
 
subroutine eval_forces_terms (force_term)
 Force terms. More...
 
subroutine eval_source_terms (source_term)
 Source terms. More...
 
subroutine eval_explicit_forces (expl_forces_term)
 Explicit Forces terms. More...
 

Variables

logical isothermal
 Flag for isothermal runs:
. More...
 
real *8 fixed_temp
 Temperature for isothermal runs. More...
 
logical lateral_degassing_flag
 Input flag for lateral degassing:
. More...
 
logical lateral_degassing
 Flag for lateral degassing:
. More...
 
real *8 alfa2_lat_thr
 Exsolved gas volume fraction threshold for lateral degassing. More...
 
logical ext_water
 Flag to activate the injection of external water:
. More...
 
logical inst_vaporization
 Flag for instantaneous vaporization:
. More...
 
character *30 aquifer_type
 Aquifer type:
. More...
 
real *8 total_water_influx
 Total water influx. More...
 
real *8 min_z_influx
 Minimum depth of influx. More...
 
real *8 delta_z_influx
 
real *8 max_z_influx
 Maximum depth of influx. More...
 
real *8 t_w
 Water temperature in the aquifer. More...
 
complex *16 t_boiling
 Boiling temperature. More...
 
real *8 lambda_w
 Latent heat of vaporization. More...
 
real *8 cv_w
 Heat capacity of water. More...
 
real *8 visc_w
 Water viscosity. More...
 

Detailed Description

Governing equations.

Author
Mattia de' Michieli Vitturi This module contains the terms defining the governing equations of the system.
Date
04/02/2017

Function/Subroutine Documentation

subroutine equations::eval_explicit_forces ( real*8, dimension(n_eqns), intent(out)  expl_forces_term)

Explicit Forces terms.

Author
Mattia de' Michieli Vitturi This subroutine evaluates the forces to be treated explicitely.
Date
01/06/2012
Parameters
[out]expl_forces_termforces term
[out]expl_forces_termexplicit forces

Definition at line 1053 of file equations.f90.

subroutine equations::eval_fluxes_qp ( complex*16, dimension(n_vars), intent(in), optional  c_qp,
real*8, dimension(n_vars), intent(in), optional  r_qp,
complex*16, dimension(n_eqns), intent(out), optional  c_flux,
real*8, dimension(n_eqns), intent(out), optional  r_flux 
)

Fluxes.

Author
Mattia de' Michieli Vitturi This subroutine evaluates the numerical fluxes given the physical variables qp.
Date
15/08/2011
Parameters
[in]c_qpcomplex pysical variables
[in]r_qpreal physical variables
[out]c_fluxcomplex analytical fluxes
[out]r_fluxreal analytical fluxes

Definition at line 293 of file equations.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine equations::eval_forces_terms ( complex*16, dimension(n_eqns), intent(out)  force_term)

Force terms.

Author
Mattia de' Michieli Vitturi This subroutine evaluates the forces terms due to gravity and viscosity.
Date
20/06/2013
Parameters
[out]force_termcomplex force terms

Definition at line 698 of file equations.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine equations::eval_nonhyperbolic_terms_qp ( complex*16, dimension(n_vars), intent(in), optional  c_qp,
complex*16, dimension(n_eqns), intent(out), optional  c_nh_term_impl,
real*8, dimension(n_vars), intent(in), optional  r_qp,
real*8, dimension(n_eqns), intent(out), optional  r_nh_term_impl 
)

Non-Hyperbolic terms.

Author
Mattia de' Michieli Vitturi This subroutine evaluates the non-hyperbolic terms (relaxation terms and forces) of the system of equations, both for real or complex inputs. These terms are treated implicitely in the DIRK numerical scheme.
Date
01/06/2012
Parameters
[in]c_qpcomplex physical variables
[in]r_qpreal physical variables
[out]c_nh_term_implcomplex non-hyperbolic terms
[out]r_nh_term_implreal non-hyperbolic terms

Definition at line 491 of file equations.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine equations::eval_qp2 ( real*8, dimension(n_vars), intent(in)  r_qp,
real*8, dimension(1+n_cry+n_gas+n_gas+4), intent(out)  qp2 
)

Conservative to physical variables.

Author
Mattia de' Michieli Vitturi This subroutine evaluates from the physical variables qp the array of additional physical variables qp2:
  • qp2(1) = $ \rho_1 $
  • qp2(2:1+ngas) = $ \rho_g(1:ngas) $
  • qp2(2+ngas:1+ngas+ncry) = $ \beta^{eq}(1:ncry) $
  • qp2(2+ngas+ncry) = $ x_{d,md}^eq(1:ngas) $
Parameters
[in]r_qpreal physical variables
[out]qp2real additional physical variables
Date
15/08/2011

Definition at line 232 of file equations.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine equations::eval_relaxation_terms ( complex*16, dimension(n_eqns), intent(out)  relaxation_term)

Relaxation terms.

Author
Mattia de' Michieli Vitturi This subroutine evaluate the relaxation terms for pressures, velocities, exsolution, crystallization and fragmentation.
Date
20/06/2013
Parameters
[out]relaxation_termcomplex relaxation terms

Definition at line 582 of file equations.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine equations::eval_source_terms ( complex*16, dimension(n_eqns), intent(out)  source_term)

Source terms.

Author
Mattia de' Michieli Vitturi This subroutine evaluates the loss of mass due to lateral degassing or the inlet of mass due to waterfrom a surrounding aquifer and the corresponding terms to add in the system of equations. The terms are added alson in the energy equation.
Date
20/06/2013
Parameters
[out]source_termcomplex source terms

Definition at line 818 of file equations.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine equations::phys_var_qp ( real*8, dimension(n_eqns), intent(in), optional  r_qp,
complex*16, dimension(n_eqns), intent(in), optional  c_qp 
)

Physical variables.

Author
Mattia de' Michieli Vitturi This subroutine evaluates, from the array qp, the local physical variables ( $\alpha_i, u_i, \rho_i, x_i, p_i $) for the two phases and the mixture denisity $ \rho_{mix} $. Also the temperature, the crystals volume fractions and the dissolved gas mass fractions are computed. In addition, the volume fractions of the gas components in the mixture and in the gas phase are evaluated ( $\alpha_g(i), \alpha_g2(i), $).
Parameters
[in]r_qpreal array variables
[in]c_qpcomplex array variables
Date
02/10/2012

Definition at line 117 of file equations.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

Variable Documentation

real*8 equations::alfa2_lat_thr

Exsolved gas volume fraction threshold for lateral degassing.

Definition at line 52 of file equations.f90.

character*30 equations::aquifer_type

Aquifer type:
.

  • 'confined'
  • 'unconfined'

Definition at line 68 of file equations.f90.

real*8 equations::cv_w

Heat capacity of water.

Definition at line 91 of file equations.f90.

real*8 equations::delta_z_influx

Definition at line 76 of file equations.f90.

logical equations::ext_water

Flag to activate the injection of external water:
.

  • ext_water = .TRUE. => interaction with external water
  • ext_water = .FALSE. => no interaction

Definition at line 57 of file equations.f90.

real*8 equations::fixed_temp

Temperature for isothermal runs.

Definition at line 36 of file equations.f90.

logical equations::inst_vaporization

Flag for instantaneous vaporization:
.

  • inst_vaporization = .TRUE. => instantaneous vaporization
  • inst_vaporization = .FALSE. => injection as liquid

Definition at line 62 of file equations.f90.

logical equations::isothermal

Flag for isothermal runs:
.

  • isothermal = .TRUE. => constant temperature
  • isothermal = .FALSE. => variable temperature (an energy equation is solved)

Definition at line 33 of file equations.f90.

real*8 equations::lambda_w

Latent heat of vaporization.

Definition at line 88 of file equations.f90.

logical equations::lateral_degassing

Flag for lateral degassing:
.

  • lateral_degassing = .TRUE. => lateral degassing is active
  • lateral_degassing = .FALSE. => no lateral degassing

Definition at line 48 of file equations.f90.

logical equations::lateral_degassing_flag

Input flag for lateral degassing:
.

  • lateral_degassing_flag = .TRUE. => lateral degassing is considered
  • lateral_degassing_flag = .FALSE. => no lateral degassing

Definition at line 42 of file equations.f90.

real*8 equations::max_z_influx

Maximum depth of influx.

Definition at line 79 of file equations.f90.

real*8 equations::min_z_influx

Minimum depth of influx.

Definition at line 74 of file equations.f90.

complex*16 equations::t_boiling

Boiling temperature.

Definition at line 85 of file equations.f90.

real*8 equations::t_w

Water temperature in the aquifer.

Definition at line 82 of file equations.f90.

real*8 equations::total_water_influx

Total water influx.

Definition at line 71 of file equations.f90.

real*8 equations::visc_w

Water viscosity.

Definition at line 94 of file equations.f90.