FE-Project
|
module Utility for mkinit More...
Functions/Subroutines | |
subroutine, public | mkinitutil_gen_gpmat (gpmat, elem_intrp, elem) |
subroutine, public | mkinitutil_gen_vm1mat (vm1mat, elem_intrp, elem) |
subroutine, public | mkinitutil_calc_cosinebell (q, qmax, rx, ry, rz, xc, yc, zc, x, y, z, lcmesh3d, elem, intrppolyorder_h, intrppolyorder_v, z_func_type, z_func_params, cosbell_exponent) |
Calculate the distribution function of a cosine bell in regional domain. | |
subroutine, public | mkinitutil_calc_cosinebell_global (q, qmax, rh, lonc, latc, rplanet, x, y, z, lcmesh3d, elem, intrppolyorder_h, intrppolyorder_v, z_func_type, z_func_params, cosbell_exponent) |
Calculate the distribution function of a cosine bell in global domain. | |
subroutine, public | mkinitutil_galerkinprojection (q, func, intrppolyorder_h, intrppolyorder_v, lcmesh3d, elem) |
Apply the Galerkin projection to the user-defined function. | |
subroutine, public | mkinitutil_galerkinprojection_global (q, func, intrppolyorder_h, intrppolyorder_v, lcmesh3d, elem, rplanet) |
Apply the Galerkin projection to the user-defined function (for global model) | |
module Utility for mkinit
subroutine, public mod_mkinit_util::mkinitutil_gen_gpmat | ( | real(rp), dimension(elem%np,elem_intrp%np), intent(out) | gpmat, |
class(elementbase3d), intent(in) | elem_intrp, | ||
class(elementbase3d), intent(in) | elem ) |
Definition at line 51 of file mod_mkinit_util.F90.
Referenced by mkinitutil_calc_cosinebell(), mkinitutil_calc_cosinebell_global(), mkinitutil_galerkinprojection(), and mkinitutil_galerkinprojection_global().
subroutine, public mod_mkinit_util::mkinitutil_gen_vm1mat | ( | real(rp), dimension(elem%np,elem_intrp%np), intent(out) | vm1mat, |
class(elementbase3d), intent(in) | elem_intrp, | ||
class(elementbase3d), intent(in) | elem ) |
Definition at line 81 of file mod_mkinit_util.F90.
subroutine, public mod_mkinit_util::mkinitutil_calc_cosinebell | ( | real(rp), dimension(elem%np,lcmesh3d%nea), intent(out) | q, |
real(rp), intent(in) | qmax, | ||
real(rp), intent(in) | rx, | ||
real(rp), intent(in) | ry, | ||
real(rp), intent(in) | rz, | ||
real(rp), intent(in) | xc, | ||
real(rp), intent(in) | yc, | ||
real(rp), intent(in) | zc, | ||
real(rp), dimension(elem%np,lcmesh3d%ne), intent(in) | x, | ||
real(rp), dimension(elem%np,lcmesh3d%ne), intent(in) | y, | ||
real(rp), dimension(elem%np,lcmesh3d%ne), intent(in) | z, | ||
class(localmesh3d), intent(in) | lcmesh3d, | ||
class(elementbase3d), intent(in) | elem, | ||
integer, intent(in) | intrppolyorder_h, | ||
integer, intent(in) | intrppolyorder_v, | ||
character(len=*), intent(in), optional | z_func_type, | ||
real(rp), dimension(:), intent(in), optional | z_func_params, | ||
integer, intent(in), optional | cosbell_exponent ) |
Calculate the distribution function of a cosine bell in regional domain.
If the vertical dependence is considered, specify z_func_type and z_func_params. For z_func_type = 'sin', the values of z_func_params is 1: the vertical model, 2: the half of wavelength
[in] | cosbell_exponent | parameter to ensure 2*cosbell_exponent-1 continuous derivatives |
Definition at line 118 of file mod_mkinit_util.F90.
References mkinitutil_gen_gpmat().
subroutine, public mod_mkinit_util::mkinitutil_calc_cosinebell_global | ( | real(rp), dimension(elem%np,lcmesh3d%nea), intent(out) | q, |
real(rp), intent(in) | qmax, | ||
real(rp), intent(in) | rh, | ||
real(rp), intent(in) | lonc, | ||
real(rp), intent(in) | latc, | ||
real(rp), intent(in) | rplanet, | ||
real(rp), dimension(elem%np,lcmesh3d%ne), intent(in) | x, | ||
real(rp), dimension(elem%np,lcmesh3d%ne), intent(in) | y, | ||
real(rp), dimension(elem%np,lcmesh3d%ne), intent(in) | z, | ||
class(localmesh3d), intent(in) | lcmesh3d, | ||
class(elementbase3d), intent(in) | elem, | ||
integer, intent(in) | intrppolyorder_h, | ||
integer, intent(in) | intrppolyorder_v, | ||
character(len=*), intent(in), optional | z_func_type, | ||
real(rp), dimension(:), intent(in), optional | z_func_params, | ||
integer, intent(in), optional | cosbell_exponent ) |
Calculate the distribution function of a cosine bell in global domain.
If the vertical dependence is considered, specify z_func_type and z_func_params. For z_func_type = 'sin', the values of z_func_params is 1: the vertical model, 2: the half of wavelength
[in] | cosbell_exponent | parameter to ensure 2*cosbell_exponent-1 continuous derivatives |
Definition at line 232 of file mod_mkinit_util.F90.
References scale_cubedsphere_coord_cnv::cubedspherecoordcnv_cs2lonlatpos(), and mkinitutil_gen_gpmat().
subroutine, public mod_mkinit_util::mkinitutil_galerkinprojection | ( | real(rp), dimension(elem%np,lcmesh3d%nea), intent(out) | q, |
external subroutine(real(rp), dimension(elem_intrp%np), intent(out) q_intrp, real(rp), dimension(elem_intrp%np), intent(in) x, real(rp), dimension(elem_intrp%np), intent(in) y, real(rp), dimension(elem_intrp%np), intent(in) z, class(elementbase3d), intent(in) elem_intrp) | func, | ||
integer, intent(in) | intrppolyorder_h, | ||
integer, intent(in) | intrppolyorder_v, | ||
class(localmesh3d), intent(in) | lcmesh3d, | ||
class(elementbase3d), intent(in) | elem ) |
Apply the Galerkin projection to the user-defined function.
Definition at line 348 of file mod_mkinit_util.F90.
References mkinitutil_gen_gpmat().
subroutine, public mod_mkinit_util::mkinitutil_galerkinprojection_global | ( | real(rp), dimension(elem%np,lcmesh3d%nea), intent(out) | q, |
external subroutine(real(rp), dimension(elem_intrp%np), intent(out) q_intrp, real(rp), dimension(elem_intrp%np), intent(in) lon, real(rp), dimension(elem_intrp%np), intent(in) lat, real(rp), dimension(elem_intrp%np), intent(in) z, class(elementbase3d), intent(in) elem_intrp, real(rp), intent(in) rplanet_) | func, | ||
integer, intent(in) | intrppolyorder_h, | ||
integer, intent(in) | intrppolyorder_v, | ||
class(localmesh3d), intent(in) | lcmesh3d, | ||
class(elementbase3d), intent(in) | elem, | ||
real(rp), intent(in) | rplanet ) |
Apply the Galerkin projection to the user-defined function (for global model)
Definition at line 420 of file mod_mkinit_util.F90.
References scale_cubedsphere_coord_cnv::cubedspherecoordcnv_cs2lonlatpos(), and mkinitutil_gen_gpmat().