PLUME-MoM-TSM  1.0
VolcanicPlumeModel
Functions/Subroutines | Variables
constitutive_2d Module Reference

Constitutive equations. More...

Functions/Subroutines

subroutine init_problem_param
 Initialization of relaxation flags. More...
 
subroutine r_phys_var (r_qj, r_h, r_u, r_v)
 Physical variables. More...
 
subroutine c_phys_var (c_qj, h, u, v)
 Physical variables. More...
 
subroutine mixt_var (qpj)
 Physical variables. More...
 
subroutine qc_to_qp (qc, qp)
 Conservative to physical variables. More...
 
subroutine qp_to_qc (qp, qc)
 Physical to conservative variables. More...
 
subroutine qp_to_qp2 (qpj, qp2j)
 Additional Physical variables. More...
 
subroutine eval_local_speeds_x (qpj, vel_min, vel_max)
 Local Characteristic speeds x direction. More...
 
subroutine eval_local_speeds_y (qpj, vel_min, vel_max)
 Local Characteristic speeds y direction. More...
 
subroutine eval_fluxes (qcj, qpj, dir, flux)
 Hyperbolic Fluxes. More...
 
subroutine eval_nonhyperbolic_terms (cell_fract_jk, dx_rel_jk, dy_rel_jk, c_qj, c_nh_term_impl, r_qj, r_nh_term_impl)
 Non-Hyperbolic terms. More...
 
subroutine eval_source_bdry (time, vect_x, vect_y, source_bdry)
 Internal boundary source fluxes. More...
 

Variables

logical, dimension(:), allocatable implicit_flag
 flag used for size of implicit non linear-system More...
 
real(wp) u_atm_umbl
 
real(wp) v_atm_umbl
 
real(wp) n
 
real(wp) grav
 
real(wp) drho_dz
 
real(wp) rho_nbl
 

Detailed Description

Constitutive equations.

Function/Subroutine Documentation

subroutine constitutive_2d::c_phys_var ( complex(wp), dimension(n_vars), intent(in)  c_qj,
complex(wp), intent(out)  h,
complex(wp), intent(out)  u,
complex(wp), intent(out)  v 
)

Physical variables.

This subroutine evaluates from the conservative local variables qj the local physical variables ( $h,u,v$).

Parameters
[in]c_qjcomplex conservative variables
[out]hcomplex-value flow thickness
[out]ucomplex-value flow x-velocity
[out]vcomplex-value flow y-velocity
Author
Mattia de' Michieli Vitturi
Date
2019/12/13
Parameters
[out]hheight [m]
[out]uvelocity (x direction) [m s-1]
[out]vvelocity (y direction) [m s-1]

Definition at line 111 of file constitutive_2d.f90.

Here is the caller graph for this function:

subroutine constitutive_2d::eval_fluxes ( real(wp), dimension(n_vars), intent(in)  qcj,
real(wp), dimension(n_vars+2), intent(in)  qpj,
integer, intent(in)  dir,
real(wp), dimension(n_eqns), intent(out)  flux 
)

Hyperbolic Fluxes.

This subroutine evaluates the numerical fluxes given the conservative variables qcj and physical variables qpj.

Date
01/06/2012
Parameters
[in]qcjreal local conservative variables
[in]qpjreal local physical variables
[in]dirdirection of the flux (1=x,2=y)
[out]fluxreal fluxes
Author
Mattia de' Michieli Vitturi

Definition at line 427 of file constitutive_2d.f90.

Here is the caller graph for this function:

subroutine constitutive_2d::eval_local_speeds_x ( real(wp), dimension(n_vars+2), intent(in)  qpj,
real(wp), dimension(n_vars), intent(out)  vel_min,
real(wp), dimension(n_vars), intent(out)  vel_max 
)

Local Characteristic speeds x direction.

This subroutine computes from the physical variable evaluates the largest positive and negative characteristic speed in the x-direction.

Parameters
[in]qpjarray of local physical variables
[out]vel_minminimum x-velocity
[out]vel_maxmaximum x-velocity
Author
Mattia de' Michieli Vitturi
Date
05/12/2017

Definition at line 357 of file constitutive_2d.f90.

Here is the caller graph for this function:

subroutine constitutive_2d::eval_local_speeds_y ( real(wp), dimension(n_vars+2), intent(in)  qpj,
real(wp), dimension(n_vars), intent(out)  vel_min,
real(wp), dimension(n_vars), intent(out)  vel_max 
)

Local Characteristic speeds y direction.

This subroutine computes from the physical variable evaluates the largest positive and negative characteristic speed in the y-direction.

Parameters
[in]qpjarray of local physical variables
[out]vel_minminimum y-velocity
[out]vel_maxmaximum y-velocity
Author
Mattia de' Michieli Vitturi
Date
05/12/2017

Definition at line 391 of file constitutive_2d.f90.

Here is the caller graph for this function:

subroutine constitutive_2d::eval_nonhyperbolic_terms ( real(wp), intent(in)  cell_fract_jk,
real(wp), intent(in)  dx_rel_jk,
real(wp), intent(in)  dy_rel_jk,
complex(wp), dimension(n_vars), intent(in), optional  c_qj,
complex(wp), dimension(n_eqns), intent(out), optional  c_nh_term_impl,
real(wp), dimension(n_vars), intent(in), optional  r_qj,
real(wp), dimension(n_eqns), intent(out), optional  r_nh_term_impl 
)

Non-Hyperbolic terms.

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_qjcomplex conservative variables
[in]r_qjreal conservative variables
[out]c_nh_term_implcomplex non-hyperbolic terms
[out]r_nh_term_implreal non-hyperbolic terms
Author
Mattia de' Michieli Vitturi

Definition at line 500 of file constitutive_2d.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine constitutive_2d::eval_source_bdry ( real(wp), intent(in)  time,
real(wp), intent(in)  vect_x,
real(wp), intent(in)  vect_y,
real(wp), dimension(n_vars), intent(out)  source_bdry 
)

Internal boundary source fluxes.

This subroutine evaluates the source terms at the interfaces when an internal radial source is present, as for a base surge. The terms are applied as boundary conditions, and thus they have the units of the physical variable qp

Date
2019/12/01
Parameters
[in]timetime
[in]vect_xunit vector velocity x-component
[in]vect_yunit vector velocity y-component
[out]source_bdrysource terms
Author
Mattia de' Michieli Vitturi

Definition at line 607 of file constitutive_2d.f90.

Here is the caller graph for this function:

subroutine constitutive_2d::init_problem_param ( )

Initialization of relaxation flags.

This subroutine set the number and the flags of the non-hyperbolic terms.

Date
07/09/2012

Definition at line 30 of file constitutive_2d.f90.

Here is the caller graph for this function:

subroutine constitutive_2d::mixt_var ( real(wp), dimension(n_vars+2), intent(in)  qpj)

Physical variables.

This subroutine evaluates from the physical real-value local variables qpj, all the (real-valued ) variables that define the physical state and that are needed to compute the explicit equations terms.

Parameters
[in]qpjreal-valued physical variables
Author
Mattia de' Michieli Vitturi
Date
10/10/2019
Parameters
[in]qpjreal-value physical variables

Definition at line 167 of file constitutive_2d.f90.

subroutine constitutive_2d::qc_to_qp ( real(wp), dimension(n_vars), intent(in)  qc,
real(wp), dimension(n_vars+2), intent(out)  qp 
)

Conservative to physical variables.

This subroutine evaluates from the conservative variables qc the array of physical variables qp:

  • qp(1) = $ h $
  • qp(2) = $ hu $
  • qp(3) = $ hv $
  • qp(n_vars+1) = $ u $
  • qp(n_vars+2) = $ v $

The physical variables are those used for the linear reconstruction at the cell interfaces. Limiters are applied to the reconstructed slopes.

Parameters
[in]qclocal conservative variables
[out]qplocal physical variables
Date
2019/11/11
Author
Mattia de' Michieli Vitturi

Definition at line 217 of file constitutive_2d.f90.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine constitutive_2d::qp_to_qc ( real(wp), dimension(n_vars+2), intent(in)  qp,
real(wp), dimension(n_vars), intent(out)  qc 
)

Physical to conservative variables.

This subroutine evaluates the conservative real_value variables qc from the array of real_valued physical variables qp:

  • qp(1) = $ h $
  • qp(2) = $ h*u $
  • qp(3) = $ h*v $
  • qp(n_vars+1) = $ u $
  • qp(n_vars+2) = $ v $
Parameters
[in]qpphysical variables
[out]qcconservative variables
Date
2019/11/18
Author
Mattia de' Michieli Vitturi

Definition at line 262 of file constitutive_2d.f90.

Here is the caller graph for this function:

subroutine constitutive_2d::qp_to_qp2 ( real(wp), dimension(n_vars), intent(in)  qpj,
real(wp), dimension(3), intent(out)  qp2j 
)

Additional Physical variables.

This subroutine evaluates from the physical local variables qpj, the two additional local variables qp2j = (h+B,u,v).

Parameters
[in]qpjreal-valued physical variables
[in]Bjreal-valued local topography
[out]qp2jreal-valued physical variables
Author
Mattia de' Michieli Vitturi
Date
10/10/2019

Definition at line 319 of file constitutive_2d.f90.

Here is the caller graph for this function:

subroutine constitutive_2d::r_phys_var ( real(wp), dimension(n_vars), intent(in)  r_qj,
real(wp), intent(out)  r_h,
real(wp), intent(out)  r_u,
real(wp), intent(out)  r_v 
)

Physical variables.

This subroutine evaluates from the conservative local variables qj the local physical variables ( $h,u,v,\alpha_s,\rho_m,T,\alpha_l $).

Parameters
[in]r_qjreal conservative variables
[out]r_hreal-value flow thickness
[out]r_ureal-value flow x-velocity
[out]r_vreal-value flow y-velocity
[out]r_alphasreal-value solid volume fractions
[out]r_rho_mreal-value flow density
[out]r_Treal-value flow temperature
[out]r_alphalreal-value liquid volume fraction
Author
Mattia de' Michieli Vitturi
Date
2019/12/13
Parameters
[in]r_qjreal-value conservative var
[out]r_hreal-value flow thickness
[out]r_ureal-value x-velocity
[out]r_vreal-value y-velocity

Definition at line 66 of file constitutive_2d.f90.

Here is the caller graph for this function:

Variable Documentation

real(wp) constitutive_2d::drho_dz

Definition at line 17 of file constitutive_2d.f90.

real(wp) constitutive_2d::grav

Definition at line 17 of file constitutive_2d.f90.

logical, dimension(:), allocatable constitutive_2d::implicit_flag

flag used for size of implicit non linear-system

Definition at line 13 of file constitutive_2d.f90.

real(wp) constitutive_2d::n

Definition at line 16 of file constitutive_2d.f90.

real(wp) constitutive_2d::rho_nbl

Definition at line 17 of file constitutive_2d.f90.

real(wp) constitutive_2d::u_atm_umbl

Definition at line 15 of file constitutive_2d.f90.

real(wp) constitutive_2d::v_atm_umbl

Definition at line 15 of file constitutive_2d.f90.