eulerian_obj_AssignEulerianObj Subroutine

private impure subroutine eulerian_obj_AssignEulerianObj(this, in)

Performs assignment for Eulerian_obj.

Type Bound

eulerian_obj_base

Arguments

Type IntentOptional Attributes Name
class(eulerian_obj_base), intent(inout) :: this

An Eulerian object

class(eulerian_obj_base), intent(in) :: in

Object to assign


Source Code

    impure subroutine eulerian_obj_AssignEulerianObj(this,in)
      !> Performs assignment for Eulerian_obj.
      implicit none
      class(eulerian_obj_base), intent(inout) :: this                          !! An Eulerian object
      class(eulerian_obj_base), intent(in)    :: in                            !! Object to assign

      select type (this)
      type is (eulerian_obj_r)
        select type(in)
        type is (eulerian_obj_r)
          this%cell = in%cell
        type is (eulerian_obj_i)
          this%cell = real(in%cell,wp)
        class default
          call this%parallel%Stop("Error assigning Eulerian object")
        end select

      type is (eulerian_obj_i)
        select type(in)
        type is (eulerian_obj_i)
          this%cell = in%cell
        class default
          call this%parallel%Stop("Error assigning Eulerian object")
        end select

      class default
        call this%parallel%Stop("Error assigning Eulerian object")
      end select

      return
    end subroutine eulerian_obj_AssignEulerianObj