fluid_adv Subroutine

public subroutine fluid_adv(ns, vs1, Ts, vs2, vs3, J1, E1, Teinf, t, dt, x, nn, vn1, vn2, vn3, Tn, iver, f107, f107a, ymd, UTsec, flagprecfile, dtprec, precdir, flagglow, dtglow)

now add in photoionization sources enforce minimum production rate to preserve conditioning for species that rely on constant production testing should probably be done to see what the best choice is...

thermal electron heating rate from Swartz and Nisbet, (1978)

photoion ionrate and heating calculated seperately, added together with ionrate and heating from Fang or GLOW

Arguments

Type IntentOptional AttributesName
real(kind=wp), intent(inout), dimension(-1:,-1:,-1:,:):: ns
real(kind=wp), intent(inout), dimension(-1:,-1:,-1:,:):: vs1
real(kind=wp), intent(inout), dimension(-1:,-1:,-1:,:):: Ts
real(kind=wp), intent(inout), dimension(-1:,-1:,-1:,:):: vs2
real(kind=wp), intent(inout), dimension(-1:,-1:,-1:,:):: vs3
real(kind=wp), intent(in), dimension(:,:,:):: J1
real(kind=wp), intent(inout), dimension(:,:,:):: E1
real(kind=wp), intent(in) :: Teinf
real(kind=wp), intent(in) :: t
real(kind=wp), intent(in) :: dt
type(curvmesh), intent(in) :: x
real(kind=wp), intent(in), dimension(:,:,:,:):: nn
real(kind=wp), intent(in), dimension(:,:,:):: vn1
real(kind=wp), intent(in), dimension(:,:,:):: vn2
real(kind=wp), intent(in), dimension(:,:,:):: vn3
real(kind=wp), intent(in), dimension(:,:,:):: Tn
real(kind=wp), intent(out), dimension(:,:,:):: iver
real(kind=wp), intent(in) :: f107
real(kind=wp), intent(in) :: f107a
integer, intent(in), dimension(3):: ymd
real(kind=wp), intent(in) :: UTsec
integer, intent(in) :: flagprecfile
real(kind=wp), intent(in) :: dtprec
character(len=*), intent(in) :: precdir
integer, intent(in) :: flagglow
real(kind=wp), intent(in) :: dtglow

Calls

proc~~fluid_adv~~CallsGraph proc~fluid_adv fluid_adv proc~etd_uncoupled ETD_uncoupled proc~fluid_adv->proc~etd_uncoupled interface~srcsmomentum srcsMomentum proc~fluid_adv->interface~srcsmomentum interface~rk2_prep_mpi RK2_prep_mpi proc~fluid_adv->interface~rk2_prep_mpi interface~advec_prep_mpi advec_prep_mpi proc~fluid_adv->interface~advec_prep_mpi proc~clean_param clean_param proc~fluid_adv->proc~clean_param proc~precipbcs_fileinput precipBCs_fileinput proc~fluid_adv->proc~precipbcs_fileinput proc~ionrate_fang08 ionrate_fang08 proc~fluid_adv->proc~ionrate_fang08 proc~eheating eheating proc~fluid_adv->proc~eheating proc~sza sza proc~fluid_adv->proc~sza proc~srcscontinuity srcsContinuity proc~fluid_adv->proc~srcscontinuity interface~div3d div3D proc~fluid_adv->interface~div3d proc~srcsenergy srcsEnergy proc~fluid_adv->proc~srcsenergy proc~ionrate_glow98 ionrate_glow98 proc~fluid_adv->proc~ionrate_glow98 proc~photoionization photoionization proc~fluid_adv->proc~photoionization interface~trbdf23d TRBDF23D proc~fluid_adv->interface~trbdf23d interface~advec3d_mc_mpi advec3D_MC_mpi proc~fluid_adv->interface~advec3d_mc_mpi proc~precipbcs precipBCs proc~fluid_adv->proc~precipbcs proc~srcsmomentum_curv srcsMomentum_curv interface~srcsmomentum->proc~srcsmomentum_curv proc~rk2_prep_mpi RK2_prep_mpi interface~rk2_prep_mpi->proc~rk2_prep_mpi proc~advec_prep_mpi_23 advec_prep_mpi_23 interface~advec_prep_mpi->proc~advec_prep_mpi_23 mpi_recv mpi_recv proc~precipbcs_fileinput->mpi_recv proc~interp1 interp1 proc~precipbcs_fileinput->proc~interp1 interface~get_grid2 get_grid2 proc~precipbcs_fileinput->interface~get_grid2 interface~get_simsize2 get_simsize2 proc~precipbcs_fileinput->interface~get_simsize2 mpi_send mpi_send proc~precipbcs_fileinput->mpi_send proc~date_filename date_filename proc~precipbcs_fileinput->proc~date_filename interface~interp2 interp2 proc~precipbcs_fileinput->interface~interp2 proc~dateinc dateinc proc~precipbcs_fileinput->proc~dateinc proc~fang2008 fang2008 proc~ionrate_fang08->proc~fang2008 proc~doy_calc doy_calc proc~sza->proc~doy_calc interface~div3d_curv_23 div3D_curv_23 interface~div3d->interface~div3d_curv_23 proc~maxwell_colln maxwell_colln proc~srcsenergy->proc~maxwell_colln proc~coulomb_colln coulomb_colln proc~srcsenergy->proc~coulomb_colln proc~ionrate_glow98->proc~doy_calc proc~photoionization->mpi_recv proc~photoionization->mpi_send proc~trbdf23d_curv TRBDF23D_curv interface~trbdf23d->proc~trbdf23d_curv proc~advec3d_mc_mpi_curv_23 advec3D_MC_mpi_curv_23 interface~advec3d_mc_mpi->proc~advec3d_mc_mpi_curv_23 proc~div3d_curv_23 div3D_curv_23 interface~div3d_curv_23->proc~div3d_curv_23 interface~halo halo proc~advec_prep_mpi_23->interface~halo proc~get_grid2 get_grid2 interface~get_grid2->proc~get_grid2 proc~get_simsize2 get_simsize2 interface~get_simsize2->proc~get_simsize2 proc~daysmonth daysmonth proc~doy_calc->proc~daysmonth proc~utsec2filestem utsec2filestem proc~date_filename->proc~utsec2filestem proc~interp2 interp2 interface~interp2->proc~interp2 proc~day_wrap day_wrap proc~dateinc->proc~day_wrap proc~trbdf21d TRBDF21D proc~trbdf23d_curv->proc~trbdf21d proc~srcsmomentum_curv->proc~maxwell_colln proc~srcsmomentum_curv->proc~coulomb_colln interface~grad3d1 grad3D1 proc~srcsmomentum_curv->interface~grad3d1 proc~rk2_prep_mpi->interface~halo proc~advec1d_mc_curv advec1D_MC_curv proc~advec3d_mc_mpi_curv_23->proc~advec1d_mc_curv proc~advec3d_mc_mpi_curv_23->interface~halo proc~minmod minmod proc~advec1d_mc_curv->proc~minmod proc~day_wrap->proc~day_wrap proc~day_wrap->proc~daysmonth proc~gbsv gbsv proc~trbdf21d->proc~gbsv interface~halo_23 halo_23 interface~halo->interface~halo_23 proc~utsec2filestem->proc~day_wrap interface~grad3d1_curv_23 grad3D1_curv_23 interface~grad3d1->interface~grad3d1_curv_23 proc~halo_23 halo_23 interface~halo_23->proc~halo_23 dgbsv dgbsv proc~gbsv->dgbsv sgbsv sgbsv proc~gbsv->sgbsv proc~grad3d1_curv_23 grad3D1_curv_23 interface~grad3d1_curv_23->proc~grad3d1_curv_23 mpi_isend mpi_isend proc~halo_23->mpi_isend mpi_irecv mpi_irecv proc~halo_23->mpi_irecv proc~grid2id grid2ID proc~halo_23->proc~grid2id mpi_waitall mpi_waitall proc~halo_23->mpi_waitall

Contents

None