class_scalar_field_procedures Submodule


Uses

  • module~~class_scalar_field_procedures~~UsesGraph module~class_scalar_field_procedures class_scalar_field_procedures module~class_field class_field module~class_scalar_field_procedures->module~class_field module~class_scalar_field class_scalar_field module~class_scalar_field_procedures->module~class_scalar_field module~class_bc class_bc module~class_field->module~class_bc module~class_dimensions class_dimensions module~class_field->module~class_dimensions module~class_material class_material module~class_field->module~class_material module~class_psblas class_psblas module~class_field->module~class_psblas module~grid_interface grid_interface module~class_field->module~grid_interface module~class_mesh class_mesh module~class_field->module~class_mesh module~class_scalar_field->module~class_field module~class_scalar_field->module~class_bc module~class_scalar_field->module~class_dimensions module~class_scalar_field->module~class_material module~class_scalar_field->module~class_psblas module~class_scalar_field->module~class_mesh module~class_bc->module~class_psblas module~class_motion class_motion module~class_bc->module~class_motion module~class_bc_math class_bc_math module~class_bc->module~class_bc_math module~class_bc_wall class_bc_wall module~class_bc->module~class_bc_wall module~class_dimensions->module~class_psblas module~class_material->module~class_psblas matlib matlib module~class_material->matlib module~class_stopwatch class_stopwatch module~class_psblas->module~class_stopwatch module~tools_psblas tools_psblas module~class_psblas->module~tools_psblas module~units_interface units_interface module~grid_interface->module~units_interface module~object_interface object_interface module~grid_interface->module~object_interface module~class_mesh->module~class_psblas module~class_mesh->module~grid_interface module~class_cell class_cell module~class_mesh->module~class_cell module~class_vertex class_vertex module~class_mesh->module~class_vertex module~class_keytable class_keytable module~class_mesh->module~class_keytable module~class_vector class_vector module~class_mesh->module~class_vector module~class_surface class_surface module~class_mesh->module~class_surface module~class_connectivity class_connectivity module~class_mesh->module~class_connectivity module~class_least_squares class_least_squares module~class_mesh->module~class_least_squares psb_base_mod psb_base_mod module~class_mesh->psb_base_mod module~class_face class_face module~class_mesh->module~class_face module~class_motion->module~class_psblas module~class_motion->module~class_vector module~class_stopwatch->module~tools_psblas module~class_stopwatch->psb_base_mod module~tools_psblas->psb_base_mod psb_prec_mod psb_prec_mod module~tools_psblas->psb_prec_mod psb_krylov_mod psb_krylov_mod module~tools_psblas->psb_krylov_mod module~class_cell->module~class_psblas module~class_vertex->module~class_psblas module~class_vertex->module~class_vector module~class_bc_math->module~class_psblas module~class_vector->module~class_psblas module~class_surface->module~class_connectivity module~class_cylinder class_cylinder module~class_surface->module~class_cylinder module~class_plane class_plane module~class_surface->module~class_plane module~class_connectivity->module~class_psblas module~class_least_squares->module~class_psblas module~class_least_squares->module~class_connectivity module~class_bc_wall->module~class_dimensions module~class_bc_wall->module~class_material module~class_bc_wall->module~class_psblas module~class_bc_wall->module~class_mesh module~class_bc_wall->module~class_bc_math module~class_bc_wall->module~class_vector module~units_interface->module~object_interface module~class_face->module~class_psblas module~class_cylinder->module~class_psblas module~class_cylinder->module~class_vertex module~class_cylinder->module~class_vector module~class_plane->module~class_psblas module~class_plane->module~class_vector

Contents


Module Procedures

module procedure assign_scalar_field_s module subroutine assign_scalar_field_s(f, x)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(inout) :: f
real(kind=psb_dpk_), intent(in) :: x

module procedure assign_scalar_field_v module subroutine assign_scalar_field_v(f, x)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(inout) :: f
real(kind=psb_dpk_), intent(in) :: x(:)

module procedure check_mesh_consistency_sf module subroutine check_mesh_consistency_sf(f1, f2, where)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: f1
type(scalar_field), intent(in) :: f2
character(len=*), intent(in) :: where

module procedure create_scalar_field module subroutine create_scalar_field(fld, msh, dim, bc, mats, on_faces, x0, name)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(out) :: fld
type(mesh), intent(in), target:: msh
type(dimensions), intent(in), optional :: dim
type(bc_poly), intent(in), optional target:: bc(:)
type(matptr), intent(in), optional target:: mats(:)
logical, intent(in), optional :: on_faces
real(kind=psb_dpk_), intent(in), optional :: x0
character(len=*), intent(in), optional :: name

module procedure free_field module subroutine free_field(fld)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(inout) :: fld

module procedure get_base module subroutine get_base(fld, base)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: fld
type(field), intent(out) :: base

module procedure get_scalar_field_bx module subroutine get_scalar_field_bx(fld, bx)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: fld
real(kind=psb_dpk_), intent(out), allocatable:: bx(:)

module procedure get_scalar_field_element module subroutine get_scalar_field_element(fld, x, i)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: fld
real(kind=psb_dpk_), intent(out) :: x
integer, intent(in) :: i

module procedure get_scalar_field_element_prev module subroutine get_scalar_field_element_prev(fld, xp, i)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: fld
real(kind=psb_dpk_), intent(out) :: xp
integer, intent(in) :: i

module procedure get_scalar_field_mat_id module function get_scalar_field_mat_id(fld, i)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: fld
integer, intent(in) :: i

Return Value integer

module procedure get_scalar_field_x module subroutine get_scalar_field_x(fld, x)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: fld
real(kind=psb_dpk_), intent(out), allocatable:: x(:)

module procedure get_scalar_field_xp module subroutine get_scalar_field_xp(fld, xp)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: fld
real(kind=psb_dpk_), intent(out), allocatable:: xp(:)

module procedure interp_on_faces_s module function interp_on_faces_s(fld) result(r)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: fld

Return Value type(scalar_field)

module procedure nemo_scalar_field_norm1 module function nemo_scalar_field_norm1(fld) result(norm)

$ msh => msh_(fld%field)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: fld

Return Value real(kind=psb_dpk_)

module procedure nemo_scalar_field_normi module function nemo_scalar_field_normi(fld) result(norm)

$ msh => msh_(fld%field)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: fld

Return Value real(kind=psb_dpk_)

module procedure nemo_sizeof module function nemo_sizeof(fld)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: fld

Return Value integer(kind=nemo_int_long_)

module procedure scalar_field_ module procedure scalar_field_()

Workaround for Intel 18 error #6053: Structure constructor may not have fields with a PRIVATE attribute

Arguments

None

module procedure scalar_field_dif module function scalar_field_dif(f1, f2) result(r)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: f1
type(scalar_field), intent(in) :: f2

Return Value type(scalar_field)

module procedure scalar_field_dif_s module function scalar_field_dif_s(f1, f2) result(r)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: f1
real(kind=psb_dpk_), intent(in) :: f2

Return Value type(scalar_field)

module procedure scalar_field_div module function scalar_field_div(f1, f2) result(r)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: f1
type(scalar_field), intent(in) :: f2

Return Value type(scalar_field)

module procedure scalar_field_mul module function scalar_field_mul(f1, f2) result(r)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: f1
type(scalar_field), intent(in) :: f2

Return Value type(scalar_field)

module procedure scalar_field_scal module function scalar_field_scal(a, f) result(r)

Arguments

Type IntentOptional AttributesName
real(kind=psb_dpk_), intent(in) :: a
class(scalar_field), intent(in) :: f

Return Value type(scalar_field)

module procedure scalar_field_sum module function scalar_field_sum(f1, f2) result(r)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(in) :: f1
type(scalar_field), intent(in) :: f2

Return Value type(scalar_field)

module procedure set_scalar_field_element module subroutine set_scalar_field_element(f, i, x)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(inout) :: f
integer, intent(in) :: i

element number to set

real(kind=psb_dpk_), intent(in) :: x

value

module procedure set_scalar_field_group module subroutine set_scalar_field_group(f, ig, x)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(inout) :: f
integer, intent(in) :: ig
real(kind=psb_dpk_), intent(in) :: x

module procedure update_scalar_field module subroutine update_scalar_field(fld, mats, temp)

$ msh => msh_(fld%field)

Arguments

Type IntentOptional AttributesName
class(scalar_field), intent(inout) :: fld
type(matptr), intent(in), pointer:: mats(:)
type(scalar_field), intent(in), optional :: temp

temperature