jacobian_det_square_second Module Function

pure elemental module function jacobian_det_square_second(self, r) result(jacobian_det)

Arguments

Type IntentOptional Attributes Name
class(type_square_second), intent(in) :: self
type(type_dp_vector_3d), intent(in) :: r

Return Value real(kind=real64)


Calls

proc~~jacobian_det_square_second~~CallsGraph proc~jacobian_det_square_second jacobian_det_square_second interface~jacobian_square_second type_square_second%jacobian_square_second proc~jacobian_det_square_second->interface~jacobian_square_second proc~jacobian_square_second jacobian_square_second interface~jacobian_square_second->proc~jacobian_square_second interface~dpsi_square_second type_square_second%dpsi_square_second proc~jacobian_square_second->interface~dpsi_square_second proc~get_coordinate abst_mesh%get_coordinate proc~jacobian_square_second->proc~get_coordinate proc~get_num_nodes~3 abst_mesh%get_num_nodes proc~jacobian_square_second->proc~get_num_nodes~3 proc~dpsi_square_second dpsi_square_second interface~dpsi_square_second->proc~dpsi_square_second

Called by

proc~~jacobian_det_square_second~~CalledByGraph proc~jacobian_det_square_second jacobian_det_square_second interface~jacobian_det_square_second type_square_second%jacobian_det_square_second interface~jacobian_det_square_second->proc~jacobian_det_square_second proc~get_area_square_second get_area_square_second proc~get_area_square_second->interface~jacobian_det_square_second proc~is_in_square_second is_in_square_second proc~is_in_square_second->interface~jacobian_det_square_second interface~get_area_square_second type_square_second%get_area_square_second interface~get_area_square_second->proc~get_area_square_second interface~is_in_square_second type_square_second%is_in_square_second interface~is_in_square_second->proc~is_in_square_second

Source Code

    pure elemental module function jacobian_det_square_second(self, r) result(jacobian_det)
        implicit none
        class(type_square_second), intent(in) :: self
        type(type_dp_vector_3d), intent(in) :: r
        real(real64) :: jacobian_det

        real(real64) :: dx_xi, dx_eta
        real(real64) :: dy_xi, dy_eta

        dx_xi  = self%jacobian(1, 1, r) !&
        dx_eta = self%jacobian(1, 2, r) !&
        dy_xi  = self%jacobian(2, 1, r) !&
        dy_eta = self%jacobian(2, 2, r) !&

        jacobian_det = dx_xi * dy_eta - dx_eta * dy_xi

    end function jacobian_det_square_second