module implments the optical property abstract type and the types that inheirt from it abstract optical property type
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(opticalProp_base), | intent(in) | :: | rhs |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in), | allocatable | :: | mus(:,:) | ||
real(kind=wp), | intent(in), | allocatable | :: | mua(:,:) | ||
real(kind=wp), | intent(in), | allocatable | :: | hgg(:,:) | ||
real(kind=wp), | intent(in), | allocatable | :: | n(:,:) | ||
real(kind=wp), | intent(in), | allocatable | :: | flux(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(opticalProp_base), | intent(inout) | :: | this | |||
real(kind=wp), | intent(out) | :: | wavelength |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=wp), | public | :: | albedo |
|
|||
real(kind=wp), | public | :: | g2 |
g factor squared |
|||
real(kind=wp), | public | :: | hgg |
g factor |
|||
real(kind=wp), | public | :: | kappa |
|
|||
real(kind=wp), | public | :: | mua |
absoprtion coeff. |
|||
real(kind=wp), | public | :: | mus |
scattering coeff. |
|||
real(kind=wp), | public | :: | n |
refractive index |
private function init_mono (mus, mua, hgg, n) |
procedure, public :: update => updateMono |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=wp), | public | :: | albedo |
|
|||
real(kind=wp), | public | :: | g2 |
g factor squared |
|||
real(kind=wp), | public | :: | hgg |
g factor |
|||
real(kind=wp), | public | :: | kappa |
|
|||
real(kind=wp), | public | :: | mua |
absoprtion coeff. |
|||
real(kind=wp), | public | :: | mus |
scattering coeff. |
|||
real(kind=wp), | public | :: | n |
refractive index |
procedure(updateInterface), public, deferred :: update |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=wp), | public | :: | albedo |
|
|||
real(kind=wp), | public | :: | g2 |
g factor squared |
|||
real(kind=wp), | public | :: | hgg |
g factor |
|||
real(kind=wp), | public | :: | kappa |
|
|||
real(kind=wp), | public | :: | mua |
absoprtion coeff. |
|||
real(kind=wp), | public | :: | mus |
scattering coeff. |
|||
real(kind=wp), | public | :: | n |
refractive index |
|||
class(opticalProp_base), | public, | allocatable | :: | value |
private function opticaProp_new (rhs) |
generic, public :: assignment(=) => opticalProp_t_assign | |
procedure, private :: opticalProp_t_assign | |
procedure, public :: update => update_opticalProp_t |
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
real(kind=wp), | public | :: | albedo |
|
|||
type(piecewise1D), | private | :: | flux | ||||
real(kind=wp), | public | :: | g2 |
g factor squared |
|||
real(kind=wp), | public | :: | hgg |
g factor |
|||
type(piecewise1D), | private | :: | hgg_a | ||||
real(kind=wp), | public | :: | kappa |
|
|||
real(kind=wp), | public | :: | mua |
absoprtion coeff. |
|||
type(piecewise1D), | private | :: | mua_a | ||||
real(kind=wp), | public | :: | mus |
scattering coeff. |
|||
type(piecewise1D), | private | :: | mus_a | ||||
real(kind=wp), | public | :: | n |
refractive index |
|||
type(piecewise1D), | private | :: | n_a |
private function init_spectral (mus, mua, hgg, n, flux) |
procedure, public :: update => updateSpectral |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in) | :: | mus | |||
real(kind=wp), | intent(in) | :: | mua | |||
real(kind=wp), | intent(in) | :: | hgg | |||
real(kind=wp), | intent(in) | :: | n |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=wp), | intent(in), | allocatable | :: | mus(:,:) | ||
real(kind=wp), | intent(in), | allocatable | :: | mua(:,:) | ||
real(kind=wp), | intent(in), | allocatable | :: | hgg(:,:) | ||
real(kind=wp), | intent(in), | allocatable | :: | n(:,:) | ||
real(kind=wp), | intent(in), | allocatable | :: | flux(:,:) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(opticalProp_base), | intent(in) | :: | rhs |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(opticalProp_t), | intent(inout) | :: | lhs | |||
class(opticalProp_base), | intent(in) | :: | rhs |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(mono), | intent(inout) | :: | this | |||
real(kind=wp), | intent(out) | :: | wavelength |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(spectral), | intent(inout) | :: | this | |||
real(kind=wp), | intent(out) | :: | wavelength |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(opticalProp_t), | intent(inout) | :: | this | |||
real(kind=wp), | intent(out) | :: | wavelength |