subroutine initialize()
integer :: i
real(wp),dimension(:),allocatable :: Tmb,Pb
Tmb = [288.15_wp] ! (K)
do i = 1, (size(Hb) - 1)
Tmb = [Tmb, Tmb(i) + Lmb(i) * (Hb(i + 1) - Hb(i))]
end do
Pb = [101325.0_wp]
do i = 1, (size(Hb) - 1)
if (Lmb(i) == 0) then
Pb = [Pb, Pb(i) * exp(-g0 * M0 * (Hb(i + 1) - Hb(i)) / (Rstar * Tmb(i)))]
else
Pb = [Pb, Pb(i) * (Tmb(i) / (Tmb(i) + Lmb(i) * (Hb(i + 1) - Hb(i)))) ** (g0 * M0 / (Rstar * Lmb(i)))]
end if
end do
write(*,*) ''
write(*,'(A,*(E30.18E3,1x))') 'Tmb = ', Tmb
write(*,*) ''
write(*,'(A,*(E30.18E3,1x))') 'Pb = ', Pb
write(*,*) ''
end subroutine initialize