Observation version 1 (dynamic size) since 22-feb-2021:
The section size is now dynamic and can offer space for less or more
than 3 lines, always with mhfslin nline. mhfslin, and thus the array sizes (mhfsfit), is implicit and
can be guessed from the section length (by reverting the class_sec_hfs_len formula below). Using mhfslin
ensures backward compatibility with older CLASS versions. Other
values are read incorrectly with such versions.
Observation version 1 (static size):
! HFS: "Hyperfine Structure" profile fit results (e.g. NH3, HCN, for spectra).
integer(kind=4), parameter :: class_sec_hfs_id=-13
integer(kind=4), parameter :: mhfslin=3
integer(kind=4), parameter :: nhfspar=4 ! Number of parameters per line
integer(kind=4), parameter :: mhfsfit=nhfspar*mhfslin
integer(kind=4), parameter :: class_sec_hfs_len=3+2*mhfsfit
type hfs
sequence
integer(kind=4) :: nline ! Number of components
real(kind=4) :: sigba ! Sigma on base
real(kind=4) :: sigra ! Sigma on line
real(kind=4) :: nfit(mhfsfit) ! Fit results
real(kind=4) :: nerr(mhfsfit) ! Errors
end type hfs