resolve_species_drift_speed Function

public function resolve_species_drift_speed(spec, drift_mode, inward_normal) result(speed)

Arguments

Type IntentOptional Attributes Name
type(sheath_model_species), intent(in) :: spec
character(len=*), intent(in) :: drift_mode
real(kind=dp), intent(in) :: inward_normal(3)

Return Value real(kind=dp)


Calls

proc~~resolve_species_drift_speed~~CallsGraph proc~resolve_species_drift_speed resolve_species_drift_speed proc~lower_ascii lower_ascii proc~resolve_species_drift_speed->proc~lower_ascii

Called by

proc~~resolve_species_drift_speed~~CalledByGraph proc~resolve_species_drift_speed resolve_species_drift_speed proc~resolve_sheath_injection_context resolve_sheath_injection_context proc~resolve_sheath_injection_context->proc~resolve_species_drift_speed proc~init_particle_batch_from_config init_particle_batch_from_config proc~init_particle_batch_from_config->proc~resolve_sheath_injection_context

Source Code

  real(dp) function resolve_species_drift_speed(spec, drift_mode, inward_normal) result(speed)
    type(sheath_model_species), intent(in) :: spec
    character(len=*), intent(in) :: drift_mode
    real(dp), intent(in) :: inward_normal(3)

    select case (trim(lower_ascii(drift_mode)))
    case ('full')
      speed = sqrt(sum(spec%drift_velocity*spec%drift_velocity))
    case ('normal')
      speed = dot_product(spec%drift_velocity, inward_normal)
    case default
      error stop 'Unknown sheath drift mode.'
    end select
  end function resolve_species_drift_speed