derivs_advect Subroutine

private subroutine derivs_advect(t_s, x, dxdt)

Uses

  • proc~~derivs_advect~~UsesGraph proc~derivs_advect derivs_advect module~mod_geometry mod_geometry proc~derivs_advect->module~mod_geometry module~mod_global_parameters mod_global_parameters proc~derivs_advect->module~mod_global_parameters module~mod_comm_lib mod_comm_lib module~mod_geometry->module~mod_comm_lib module~mod_basic_types mod_basic_types module~mod_global_parameters->module~mod_basic_types module~mod_connectivity mod_connectivity module~mod_global_parameters->module~mod_connectivity module~mod_constants mod_constants module~mod_global_parameters->module~mod_constants module~mod_physicaldata mod_physicaldata module~mod_global_parameters->module~mod_physicaldata module~mod_variables mod_variables module~mod_global_parameters->module~mod_variables mpi mpi module~mod_global_parameters->mpi module~mod_variables->module~mod_basic_types

Arguments

Type IntentOptional Attributes Name
double precision :: t_s
double precision :: x(ndir)
double precision :: dxdt(ndir)

Calls

proc~~derivs_advect~~CallsGraph proc~derivs_advect derivs_advect proc~get_vec_advect get_vec_advect proc~derivs_advect->proc~get_vec_advect proc~interpolate_var interpolate_var proc~get_vec_advect->proc~interpolate_var proc~mpistop mpistop proc~interpolate_var->proc~mpistop mpi_abort mpi_abort proc~mpistop->mpi_abort

Called by

proc~~derivs_advect~~CalledByGraph proc~derivs_advect derivs_advect proc~advect_get_particle_dt advect_get_particle_dt proc~advect_get_particle_dt->proc~derivs_advect proc~advect_integrate_particles advect_integrate_particles proc~advect_integrate_particles->proc~derivs_advect proc~advect_integrate_particles->proc~advect_get_particle_dt

Source Code

  subroutine derivs_advect(t_s,x,dxdt)
    use mod_global_parameters
    use mod_geometry
    double precision :: t_s, x(ndir)
    double precision :: dxdt(ndir)

    double precision :: v(ndir)

    call get_vec_advect(igrid_working,x,t_s,v,vp(1),vp(ndir))
    select case (coordinate)
    case (cylindrical)
      v(phi_) = v(phi_)/x(r_)
    case (spherical)
      v(2) = v(2)/x(1)
      v(3) = v(3)/(x(1)*sin(x(2)))
    end select
    dxdt(:) = v(:)

  end subroutine derivs_advect