initialize Subroutine

private subroutine initialize()

Arguments

None

Contents

Source Code


Source Code

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