Describe material state and specify state equations
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
logical, | private, | parameter | :: | debug | = | .true. | |
integer, | private, | parameter | :: | name_len | = | 15 | |
integer, | private, | parameter | :: | nlen | = | 80 |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=psb_dpk_), | intent(in) | :: | t | |||
type(material), | intent(in) | :: | mat |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=psb_dpk_), | intent(in) | :: | t(:) | |||
type(material), | intent(in) | :: | mat |
Physical Properties Laws
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(material), | intent(in) | :: | mat | |||
real(kind=psb_dpk_), | intent(in) | :: | t | |||
character(len=*), | intent(in) | :: | property | |||
real(kind=psb_dpk_), | intent(out) | :: | f |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(matptr), | intent(in), | optional | target | :: | mats(:) | |
integer, | intent(in) | :: | im | |||
real(kind=psb_dpk_), | intent(in) | :: | t | |||
type(dimensions), | intent(in) | :: | dim | |||
real(kind=psb_dpk_), | intent(out) | :: | f |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(matptr), | intent(in), | optional | target | :: | mats(:) | |
integer, | intent(in) | :: | im(:) | |||
real(kind=psb_dpk_), | intent(in) | :: | t(:) | |||
type(dimensions), | intent(in) | :: | dim | |||
real(kind=psb_dpk_), | intent(out) | :: | f(:) |
Global Constructor
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(material), | intent(out) | :: | mat | |||
character(len=*), | intent(in) | :: | input_file | |||
integer, | intent(in) | :: | block_id |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(material), | intent(in) | :: | mat |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(material), | intent(inout) | :: | mat |
Getter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(material), | intent(in) | :: | mat |
Getter
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(material), | intent(in) | :: | mat |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(material), | intent(in) | :: | mat |
Encapsulate material properties and equations of state
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=psb_dpk_), | private | :: | dtemp | ||||
integer, | private | :: | ilaw(4) | ||||
real(kind=psb_dpk_), | private, | allocatable | :: | lambda(:) | elastic modulus |
||
integer, | private | :: | mat_id | ||||
character(len=name_len), | private | :: | mat_type | ||||
real(kind=psb_dpk_), | private, | allocatable | :: | mu(:) | viscosity |
||
character(len=name_len), | private | :: | name | ||||
real(kind=psb_dpk_), | private, | allocatable | :: | rho(:) | density |
||
real(kind=psb_dpk_), | private, | allocatable | :: | sh(:) | shear modulus |
||
character(len=1), | private | :: | state | ||||
real(kind=psb_dpk_), | private | :: | tmax | ||||
real(kind=psb_dpk_), | private | :: | tmin |
procedure, public :: create_material | |
procedure, public :: free_material | |
generic, public :: mat_id_ => get_material_id | |
generic, public :: name_ => get_material_name | |
generic, public :: nemo_sizeof => nemo_material_sizeof | |
procedure, private :: get_material_id | |
procedure, private :: get_material_name | |
procedure, private :: nemo_material_sizeof |