lib_friction_correlations_m Module


Uses

  • module~~lib_friction_correlations_m~~UsesGraph module~lib_friction_correlations_m lib_friction_correlations_m fortran_yaml_c fortran_yaml_c module~lib_friction_correlations_m->fortran_yaml_c iso_c_binding iso_c_binding module~lib_friction_correlations_m->iso_c_binding module~krn_global_tools_m krn_global_tools_m module~lib_friction_correlations_m->module~krn_global_tools_m module~lib_input_m lib_input_m module~lib_friction_correlations_m->module~lib_input_m module~krn_global_tools_m->iso_c_binding ieee_arithmetic ieee_arithmetic module~krn_global_tools_m->ieee_arithmetic iso_fortran_env iso_fortran_env module~krn_global_tools_m->iso_fortran_env module~lib_input_m->fortran_yaml_c module~lib_input_m->module~krn_global_tools_m h5lt h5lt module~lib_input_m->h5lt hdf5 hdf5 module~lib_input_m->hdf5

Used by

  • module~~lib_friction_correlations_m~~UsedByGraph module~lib_friction_correlations_m lib_friction_correlations_m module~cmp_channel_init_m cmp_channel_init_m module~cmp_channel_init_m->module~lib_friction_correlations_m module~cmp_channel_calc_m cmp_channel_calc_m module~cmp_channel_calc_m->module~cmp_channel_init_m module~cmp_channel_source_terms_m cmp_channel_source_terms_m module~cmp_channel_calc_m->module~cmp_channel_source_terms_m module~cmp_channel_flux_m cmp_channel_flux_m module~cmp_channel_flux_m->module~cmp_channel_init_m module~cmp_channel_source_terms_m->module~cmp_channel_init_m program~reims_p reims_p program~reims_p->module~cmp_channel_calc_m program~reims_p->module~cmp_channel_flux_m

Variables

Type Visibility Attributes Name Initial
type(friction_t), public, allocatable, target :: frictions(:)
procedure(init_friction_ext_if), public, pointer :: init_friction_ext => null()

Abstract Interfaces

abstract interface

  • public function init_friction_ext_if(cfg_len, cfg_str, c_pt, frict_ptr) bind(C)

    Arguments

    Type IntentOptional Attributes Name
    integer(kind=c_int), value :: cfg_len
    character(len=*) :: cfg_str
    type(c_ptr) :: c_pt
    type(c_funptr) :: frict_ptr

    Return Value logical


Derived Types

type, public ::  friction_t

Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: friction_corr
type(c_ptr), public :: frict_cfg = C_NULL_PTR
procedure(itf_1var), public, pointer, nopass :: frict => friction_correlation_not_implemented
procedure(itf_1var), public, pointer, nopass :: frict_der => null()

Type-Bound Procedures

procedure, public :: friction => friction_correlation
procedure, public :: friction_der => friction_correlation_der

type, public ::  blasius_cfg_t

Components

Type Visibility Attributes Name Initial
real(kind=dp), public :: alpha
real(kind=dp), public :: beta

type, public ::  katheder_cfg_t

Components

Type Visibility Attributes Name Initial
real(kind=dp), public :: alpha
real(kind=dp), public :: beta
real(kind=dp), public :: VoidFr
real(kind=dp), public :: Re_min

type, public ::  central_spiral_cfg_t

Components

Type Visibility Attributes Name Initial
real(kind=dp), public :: alpha
real(kind=dp), public :: beta

Functions

public function friction_factor_blasius(c_pt, Re) result(friction) bind(C)

Arguments

Type IntentOptional Attributes Name
type(c_ptr), value :: c_pt
real(kind=dp), value :: Re

Return Value real(kind=dp)

public function friction_factor_blasius_der(c_pt, Re) result(friction_der) bind(C)

Arguments

Type IntentOptional Attributes Name
type(c_ptr), value :: c_pt
real(kind=dp), value :: Re

Return Value real(kind=dp)

public function friction_factor_katheder(c_pt, Re) result(friction) bind(C)

Arguments

Type IntentOptional Attributes Name
type(c_ptr), value :: c_pt
real(kind=dp), value :: Re

Return Value real(kind=dp)

public function friction_factor_katheder_der(c_pt, Re) result(friction_der) bind(C)

Arguments

Type IntentOptional Attributes Name
type(c_ptr), value :: c_pt
real(kind=dp), value :: Re

Return Value real(kind=dp)

public function friction_factor_central_spiral(c_pt, Re) result(friction) bind(C)

Arguments

Type IntentOptional Attributes Name
type(c_ptr), value :: c_pt
real(kind=dp), value :: Re

Return Value real(kind=dp)

public function friction_factor_central_spiral_der(c_pt, Re) result(friction_der) bind(C)

Arguments

Type IntentOptional Attributes Name
type(c_ptr), value :: c_pt
real(kind=dp), value :: Re

Return Value real(kind=dp)

public function friction_correlation(me, Re)

Arguments

Type IntentOptional Attributes Name
class(friction_t), intent(inout) :: me
real(kind=dp), intent(in) :: Re

Return Value real(kind=dp)

public function friction_correlation_der(me, Re)

Arguments

Type IntentOptional Attributes Name
class(friction_t), intent(inout) :: me
real(kind=dp), intent(in) :: Re

Return Value real(kind=dp)

public function friction_correlation_not_implemented(c_pt, Re) result(ret_val) bind(C)

Arguments

Type IntentOptional Attributes Name
type(c_ptr), value :: c_pt
real(kind=dp), value :: Re

Return Value real(kind=dp)

public function friction_factor_laminar(Re)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: Re

Return Value real(kind=dp)

public function der_friction_factor_laminar(Re)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: Re

Return Value real(kind=dp)


Subroutines

public subroutine load_frictions(cfgs)

Arguments

Type IntentOptional Attributes Name
class(input_t), intent(in) :: cfgs(:)

public subroutine set_friction_correlation(fct, cfg, built_in_name)

Arguments

Type IntentOptional Attributes Name
type(friction_t), intent(inout) :: fct
class(input_t), intent(in) :: cfg
character(len=*), intent(in) :: built_in_name

public subroutine friction_init(me, cfg)

Arguments

Type IntentOptional Attributes Name
class(friction_t), intent(inout), pointer :: me
class(input_t), intent(in), target :: cfg

public subroutine friction_factor_blasius_init(cfg, c_pt)

Arguments

Type IntentOptional Attributes Name
class(input_t), intent(in), target :: cfg
type(c_ptr), intent(out) :: c_pt

public subroutine friction_factor_katheder_init(cfg, c_pt)

Arguments

Type IntentOptional Attributes Name
class(input_t), intent(in), target :: cfg
type(c_ptr), intent(out) :: c_pt

public subroutine friction_factor_central_spiral_init(cfg, c_pt)

Arguments

Type IntentOptional Attributes Name
class(input_t), intent(in), target :: cfg
type(c_ptr), intent(out) :: c_pt