sGrid_compare Subroutine

private subroutine sGrid_compare(sf, tocompare, is_same)

compare to sf grid with input grid to see if they are the same

Type Bound

t_sGrid

Arguments

Type IntentOptional Attributes Name
class(t_sGrid), intent(in) :: sf

self

class(c_sgrid), intent(in) :: tocompare
logical, intent(out) :: is_same

Called by

proc~~sgrid_compare~~CalledByGraph proc~sgrid_compare t_sGrid%sGrid_compare proc~restartfromstate RestartFromState proc~restartfromstate->proc~sgrid_compare interface~readstate ReadState proc~restartfromstate->interface~readstate proc~sbase_compare t_sBase%sBase_compare proc~sbase_compare->proc~sgrid_compare proc~sgrid_test sGrid_test proc~sgrid_test->proc~sgrid_compare proc~sgrid_init t_sGrid%sGrid_init proc~sgrid_test->proc~sgrid_init proc~base_compare t_base%base_compare proc~base_compare->proc~sbase_compare proc~sbase_change_base t_sBase%sBase_change_base proc~sbase_change_base->proc~sbase_compare proc~sbase_test sBase_test proc~sbase_test->proc~sbase_compare proc~sbase_test->proc~sbase_change_base proc~sbase_new sBase_new proc~sbase_test->proc~sbase_new proc~sgrid_init->proc~sgrid_test proc~initmhd3d t_functional_mhd3d%InitMHD3D proc~initmhd3d->proc~sgrid_init proc~base_new Base_new proc~initmhd3d->proc~base_new proc~readstatefilefromascii ReadStateFileFromASCII proc~readstatefilefromascii->proc~sgrid_init proc~readstatefilefromascii->proc~sbase_new proc~readstatefilefromascii->proc~base_new proc~sbase_init t_sBase%sBase_init proc~sbase_init->proc~sbase_test proc~sgrid_copy t_sGrid%sGrid_copy proc~sgrid_copy->proc~sgrid_init interface~readstate->proc~readstatefilefromascii proc~init Init proc~init->proc~initmhd3d proc~rungvec rungvec proc~rungvec->proc~initmhd3d proc~sbase_copy t_sBase%sBase_copy proc~sbase_copy->proc~sbase_init proc~sbase_new->proc~sbase_init proc~transform_sfl_new transform_sfl_new proc~transform_sfl_new->proc~sgrid_copy proc~transform_sfl_init t_transform_sfl%transform_SFL_init proc~transform_sfl_new->proc~transform_sfl_init program~gvec_post GVEC_POST program~gvec_post->proc~initmhd3d proc~base_copy t_base%base_copy proc~base_copy->proc~sbase_copy proc~base_new->proc~sbase_new proc~init_gvec_to_jorek init_gvec_to_jorek proc~init_gvec_to_jorek->interface~readstate proc~init_base Init_Base proc~init_gvec_to_jorek->proc~init_base proc~start_rungvec start_rungvec proc~start_rungvec->proc~rungvec program~gvec GVEC program~gvec->proc~rungvec proc~init_base->proc~base_new proc~transform_sfl_init->proc~base_new

Source Code

SUBROUTINE sGrid_compare( sf , tocompare,is_same)
! MODULES
IMPLICIT NONE
!-----------------------------------------------------------------------------------------------------------------------------------
! INPUT VARIABLES
  CLASS(t_sgrid), INTENT(IN   ) :: sf !! self
  CLASS(c_sgrid), INTENT(IN   ) :: tocompare
!-----------------------------------------------------------------------------------------------------------------------------------
! OUTPUT VARIABLES
  LOGICAL       , INTENT(  OUT) :: is_same   !
!-----------------------------------------------------------------------------------------------------------------------------------
! LOCAL VARIABLES
  LOGICAL :: cond(2)
!===================================================================================================================================
  SELECT TYPE(tocompare); TYPE IS(t_sgrid)
  IF(.NOT.tocompare%initialized) THEN
    CALL abort(__STAMP__, &
        "sgrid_compare: tried to compare with a not initialized sgrid!")
  END IF
  cond(1)=(sf%nElems.EQ.tocompare%nElems)
  cond(2)=(sf%grid_type.EQ.tocompare%grid_type)

  is_same=ALL(cond)

  !IF(.NOT.is_same) WRITE(*,*)'DEBUG,grid is not same... nElems ',cond(1),', grid_type', cond(2)

  END SELECT !TYPE
END SUBROUTINE sGrid_compare