cross_product_dble Function

public function cross_product_dble(a, b)

Computes 3D cross product of double precision vectors

Arguments

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

Return Value real(kind=8), DIMENSION( 3 )


Called by

proc~~cross_product_dble~~CalledByGraph proc~cross_product_dble cross_product_dble interface~cross_product cross_product interface~cross_product->proc~cross_product_dble proc~influence3dgeogaussianraycen Influence3DGeoGaussianRayCen proc~influence3dgeogaussianraycen->interface~cross_product proc~influence3dgeohatraycen Influence3DGeoHatRayCen proc~influence3dgeohatraycen->interface~cross_product proc~reflect3d Reflect3D proc~reflect3d->interface~cross_product proc~step3d Step3D proc~step3d->interface~cross_product proc~bellhopcore BellhopCore proc~bellhopcore->proc~influence3dgeogaussianraycen proc~bellhopcore->proc~influence3dgeohatraycen proc~traceray3d TraceRay3D proc~bellhopcore->proc~traceray3d proc~traceray3d->proc~reflect3d proc~traceray3d->proc~step3d program~bellhop3d BELLHOP3D program~bellhop3d->proc~bellhopcore

Source Code

  FUNCTION cross_product_dble( a, b )
    !! Computes 3D cross product of double precision vectors

    REAL (KIND=8), DIMENSION( 3 ) :: cross_product_dble
    REAL (KIND=8), DIMENSION( 3 ), INTENT(  IN ) :: a, b

    cross_product_dble( 1 ) = a( 2 ) * b( 3 ) - a( 3 ) * b( 2 )
    cross_product_dble( 2 ) = a( 3 ) * b( 1 ) - a( 1 ) * b( 3 )
    cross_product_dble( 3 ) = a( 1 ) * b( 2 ) - a( 2 ) * b( 1 )

  END FUNCTION cross_product_dble