coesa_initialize Subroutine

public subroutine coesa_initialize()

Arguments

None

Source Code

subroutine coesa_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(*,*) ''   ! E30.18E3 for doubles
    write(*,'(A/,*(ss,E46.35E5,"_wp, &"/))') 'Tmb = [', Tmb
    write(*,*) ''
    write(*,'(A/,*(ss,E46.35E5,"_wp, &"/))') 'Pb = [', Pb
    write(*,*) ''

end subroutine coesa_initialize