TBI: Handle 3D reordering if necessary
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
class(type_domain), | intent(inout) | :: | self |
subroutine apply_reordering(self) implicit none class(type_domain), intent(inout) :: self integer(int32) :: iElem, iSide if (self%computaion_dimension >= 3) then !! TBI: Handle 3D reordering if necessary end if if (self%computaion_dimension >= 2) then do iElem = 1, self%num_elements call allocate_array(self%elements(iElem)%e%connectivity_reordered, self%elements(iElem)%e%get_num_nodes()) call self%reordering%to_reordered(self%elements(iElem)%e%connectivity, & self%elements(iElem)%e%connectivity_reordered) if (associated(self%elements(iElem)%e%interpolate)) then nullify (self%elements(iElem)%e%interpolate) end if self%elements(iElem)%e%interpolate => interpolate_reordered if (associated(self%elements(iElem)%e%get_connectivity)) then nullify (self%elements(iElem)%e%get_connectivity) end if self%elements(iElem)%e%get_connectivity => get_connectivity_reordered end do end if if (self%computaion_dimension >= 1) then do iSide = 1, self%num_sides call allocate_array(self%sides(iSide)%s%connectivity_reordered, self%sides(iSide)%s%get_num_nodes()) call self%reordering%to_reordered(self%sides(iSide)%s%connectivity, & self%sides(iSide)%s%connectivity_reordered) end do end if end subroutine apply_reordering