cross Function

public pure function cross(a, b) result(c)

3次元ベクトルの外積を返す基本演算。

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(in) :: a(3)
real(kind=dp), intent(in) :: b(3)

Return Value real(kind=dp), (3)


Called by

proc~~cross~2~~CalledByGraph proc~cross~2 cross proc~boris_update_velocity boris_update_velocity proc~boris_update_velocity->proc~cross~2 proc~boris_push boris_push proc~boris_push->proc~boris_update_velocity proc~build_particle_step_candidate build_particle_step_candidate proc~build_particle_step_candidate->proc~boris_push proc~advance_particle_step advance_particle_step proc~advance_particle_step->proc~build_particle_step_candidate proc~advance_particle_step_upper_panel_fourier advance_particle_step_upper_panel_fourier proc~advance_particle_step_upper_panel_fourier->proc~build_particle_step_candidate proc~resolve_particle_boundary_candidate resolve_particle_boundary_candidate proc~resolve_particle_boundary_candidate->proc~build_particle_step_candidate

Source Code

  pure function cross(a, b) result(c)
    real(dp), intent(in) :: a(3), b(3)
    real(dp) :: c(3)
    c(1) = a(2)*b(3) - a(3)*b(2)
    c(2) = a(3)*b(1) - a(1)*b(3)
    c(3) = a(1)*b(2) - a(2)*b(1)
  end function cross