================================================== structure to hold a scalar and array settings ==================================================
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| character(len=:), | public, | allocatable | :: | keyword | |||
| character(len=:), | public, | allocatable | :: | txtdata | |||
| character(len=:), | public, | allocatable | :: | c2d(:) | |||
| integer, | public, | allocatable | :: | i1d(:) | |||
| integer, | public, | allocatable | :: | i2d(:,:) | |||
| integer, | public, | allocatable | :: | idata | |||
| logical, | public, | allocatable | :: | l1d(:) | |||
| logical, | public, | allocatable | :: | ldata | |||
| real(kind=dp), | public, | allocatable | :: | r1d(:) | |||
| real(kind=dp), | public, | allocatable | :: | r2d(:,:) | |||
| real(kind=dp), | public, | allocatable | :: | rdata |
type settings_data !!================================================== !! structure to hold a scalar and array settings !!================================================== ! for simplicity, consider arrays of different rank ! as different types; otherwise reshape, etc. character(len=:), allocatable :: keyword ! token character(len=:), allocatable :: txtdata ! text data item character(len=:), allocatable :: c2d(:) ! integer data integer, allocatable :: i1d(:) integer, allocatable :: i2d(:, :) integer, allocatable :: idata ! logical data logical, allocatable :: l1d(:) logical, allocatable :: ldata ! fp data real(kind=dp), allocatable :: r1d(:) real(kind=dp), allocatable :: r2d(:, :) real(kind=dp), allocatable :: rdata end type settings_data