create_side Subroutine

public subroutine create_side(new_side, id, global_coordinate, cell_info, integration, ierr)

Arguments

Type IntentOptional Attributes Name
class(abst_side), intent(inout), allocatable :: new_side
integer(kind=int32), intent(in) :: id
type(type_dp_3d), intent(in), pointer :: global_coordinate
type(type_vtk_cell), intent(in) :: cell_info
type(type_geometry_settings), intent(in) :: integration
integer(kind=int32), intent(inout) :: ierr

Called by

proc~~create_side~~CalledByGraph proc~create_side create_side proc~initialize_type_domain type_domain%initialize_type_domain proc~initialize_type_domain->proc~create_side

Source Code

    subroutine create_side(new_side, id, global_coordinate, cell_info, integration, ierr)
        implicit none
        class(abst_side), allocatable, intent(inout) :: new_side
        integer(int32), intent(in) :: id
        type(type_dp_3d), pointer, intent(in) :: global_coordinate
        type(type_vtk_cell), intent(in) :: cell_info
        type(type_geometry_settings), intent(in) :: integration
        integer(int32), intent(inout) :: ierr

        character(:), allocatable :: type_name

        ierr = 0
        if (allocated(new_side)) deallocate (new_side)

        type_name = cell_info%cell_type_name

        select case (type_name)
        case ("Line")
            new_side = type_side_first(id, global_coordinate, cell_info, integration)
        case ("QuadraticEdge")
            new_side = type_side_second(id, global_coordinate, cell_info, integration)
        case default
            write (*, '(a)') "Error: Unknown side shape type = "//type_name
            ierr = -1
        end select

    end subroutine create_side