cmp_strand_init_m Module


Uses

  • module~~cmp_strand_init_m~~UsesGraph module~cmp_strand_init_m cmp_strand_init_m module~krn_interface_m krn_interface_m module~cmp_strand_init_m->module~krn_interface_m module~krn_simulation_m krn_simulation_m module~cmp_strand_init_m->module~krn_simulation_m module~lib_hdf_write_m lib_hdf_write_m module~cmp_strand_init_m->module~lib_hdf_write_m module~lib_input_m lib_input_m module~cmp_strand_init_m->module~lib_input_m module~lib_material_m lib_material_m module~cmp_strand_init_m->module~lib_material_m module~krn_global_tools_m krn_global_tools_m module~krn_interface_m->module~krn_global_tools_m module~mkl_pardiso mkl_pardiso module~krn_interface_m->module~mkl_pardiso module~krn_simulation_m->module~lib_hdf_write_m module~krn_simulation_m->module~lib_input_m fortran_yaml_c fortran_yaml_c module~krn_simulation_m->fortran_yaml_c module~krn_simulation_m->module~krn_global_tools_m module~lib_hdf_write_m->module~lib_input_m h5ds h5ds module~lib_hdf_write_m->h5ds h5lt h5lt module~lib_hdf_write_m->h5lt hdf5 hdf5 module~lib_hdf_write_m->hdf5 iso_c_binding iso_c_binding module~lib_hdf_write_m->iso_c_binding module~lib_hdf_write_m->module~krn_global_tools_m module~lib_input_m->fortran_yaml_c module~lib_input_m->h5lt module~lib_input_m->hdf5 module~lib_input_m->module~krn_global_tools_m module~lib_material_m->module~lib_input_m module~lib_material_insulation_m lib_material_insulation_m module~lib_material_m->module~lib_material_insulation_m module~lib_material_metal_m lib_material_metal_m module~lib_material_m->module~lib_material_metal_m module~lib_material_nb3sn_m lib_material_nb3sn_m module~lib_material_m->module~lib_material_nb3sn_m module~lib_material_nbti_m lib_material_nbti_m module~lib_material_m->module~lib_material_nbti_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_material_insulation_m->module~lib_input_m module~lib_material_insulation_m->iso_c_binding module~lib_material_insulation_m->module~krn_global_tools_m module~lib_material_metal_m->module~lib_input_m module~lib_material_metal_m->iso_c_binding module~lib_material_metal_m->module~krn_global_tools_m module~lib_material_nb3sn_m->module~lib_input_m module~lib_material_nb3sn_m->iso_c_binding module~lib_material_nb3sn_m->module~krn_global_tools_m module~lib_material_nbti_m->module~lib_input_m module~lib_material_nbti_m->iso_c_binding module~lib_material_nbti_m->module~krn_global_tools_m

Used by

  • module~~cmp_strand_init_m~~UsedByGraph module~cmp_strand_init_m cmp_strand_init_m module~cmp_strand_calc_m cmp_strand_calc_m module~cmp_strand_calc_m->module~cmp_strand_init_m module~cmp_strand_source_terms_m cmp_strand_source_terms_m module~cmp_strand_calc_m->module~cmp_strand_source_terms_m module~cmp_strand_flux_m cmp_strand_flux_m module~cmp_strand_flux_m->module~cmp_strand_init_m module~cmp_strand_source_terms_m->module~cmp_strand_init_m program~reims_p reims_p program~reims_p->module~cmp_strand_calc_m program~reims_p->module~cmp_strand_flux_m

Variables

Type Visibility Attributes Name Initial
integer, public, parameter :: STAB = 1

Stabilizer

integer, public, parameter :: SUPC = 2

Superconductor


Derived Types

type, public ::  scenario_t

Components

Type Visibility Attributes Name Initial
type(signal_t), public :: Q_ext_load
type(signal_t), public :: Bfield_load
type(signal_t), public :: dBfield_load
type(signal_t), public :: ElCur_load
real(kind=dp), public, allocatable :: Q_ext(:)
real(kind=dp), public, allocatable :: Bfield(:)
real(kind=dp), public, allocatable :: dBfield(:)
real(kind=dp), public :: ElCur

type, public ::  constituent_t

Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: type
real(kind=dp), public :: area

type, public ::  strand_prop_t

Components

Type Visibility Attributes Name Initial
integer, public :: NbCells
real(kind=dp), public, allocatable :: dxLoc(:)
real(kind=dp), public :: Length

Strand length

logical, public :: FSlink
real(kind=dp), public :: inner_rad

CICC inner radius

real(kind=dp), public :: outer_rad

CICC outer radius

type(FS_port_pointer_t), public, allocatable :: thermP(:)
type(SS_flux_port_t), public, pointer :: in

inlet SS_flux port

type(SS_flux_port_t), public, pointer :: out

outlet SS_flux port

type, public ::  StateVariable_strand_t

Components

Type Visibility Attributes Name Initial
real(kind=dp), public, allocatable :: SCtemp(:)

Temperature of composite strand

type, public ::  big_arrays_strand_t

Components

Type Visibility Attributes Name Initial
real(kind=dp), public, allocatable :: amS(:)

lower diagonal subMatrix

real(kind=dp), public, allocatable :: bmS(:)

main diagonal subMatrix

real(kind=dp), public, allocatable :: cmS(:)

upper diagonal subMatrix

real(kind=dp), public, pointer :: bvS(:)

type, public ::  arrays_linear_system_strand_t

Components

Type Visibility Attributes Name Initial
type(dbl_pointer_t), public, allocatable :: ValExp(:)

Non zero values in COO format for 1 strand

type(dbl_pointer_t), public, allocatable :: ValImp(:)

Non zero values in COO format for 1 strand

integer, public, allocatable :: RowExp(:)

row index array in COO format for 1 strand

integer, public, allocatable :: RowImp(:)

row index array in COO format for 1 strand

integer, public, allocatable :: ColExp(:)

col index array in COO format for 1 strand

integer, public, allocatable :: ColImp(:)

col index array in COO format for 1 strand

type, public ::  flux_strand_t

Components

Type Visibility Attributes Name Initial
real(kind=dp), public, allocatable :: wire(:)

heat diffusion flux

real(kind=dp), public, allocatable :: wire_DerdTL(:)
real(kind=dp), public, allocatable :: wire_DerdTR(:)

type, public ::  strand_t

Components

Type Visibility Attributes Name Initial
type(hdf_desc_t), public :: hdf
type(StateVariable_strand_t), public :: StVar

StateVariable updated by BDF 2 scheme -> time n+1

type(StateVariable_strand_t), public :: StVarOld

StateVariable -> time n

type(StateVariable_strand_t), public :: StVarOld2

StateVariable -> time n-1

type(StateVariable_strand_t), public :: StVarOld3

StateVariable -> time n-2

type(StateVariable_strand_t), public :: StVarOld4

StateVariable -> time n-3

type(StateVariable_strand_t), public :: StVarOld5

StateVariable -> time n-4

type(StateVariable_strand_t), public :: StVarOld6

StateVariable -> time n-5

type(strand_prop_t), public :: SC_Prop

Variables relative to strand global properties

integer, public :: NbConst

Number of constituents

type(constituent_t), public, allocatable :: ct(:)

Constituent fixed properties

real(kind=dp), public :: ro_M

Density of the composite

type(scenario_t), public :: scen

Electro-magnetic + Heat scenario

type(big_arrays_strand_t), public :: big

Big arrays

type(arrays_linear_system_strand_t), public :: bigLS

Big arrays for Linear system

type(flux_strand_t), public :: flxS

Heat diffusion fluxes

real(kind=dp), public :: err
real(kind=dp), public :: err_den
class(material_t), public, pointer :: mat_stab

Material dependent properties

class(material_t), public, pointer :: mat_supc

Material dependent properties


Subroutines

public subroutine all_strand_allocation(me)

Arguments

Type IntentOptional Attributes Name
type(strand_t), intent(inout) :: me

public subroutine strand_init_part1(me, krn, cfg, h5, sim)

Arguments

Type IntentOptional Attributes Name
type(strand_t), intent(out) :: me
type(krn_t), intent(inout) :: krn
class(input_t), intent(in), pointer :: cfg
class(hdf5_t), intent(inout) :: h5
type(simulation_t), intent(inout) :: sim

public subroutine strand_init_part2(me, krn, cfg)

Fluid port initialisation for strands

Arguments

Type IntentOptional Attributes Name
type(strand_t), intent(inout), target :: me
type(krn_t), intent(inout) :: krn
class(input_t), intent(in), pointer :: cfg