parameters: (self)
docstring: This method is executed in order to initialize the current step
  
          Keyword arguments:
          self -- It signifies an instance of a class.
docstring_summary: This method is executed in order to initialize the current step
docstring_tokens: This method is executed in order to initialize the current step
function: def ExecuteInitializeSolutionStep(self):
          """ This method is executed in order to initialize the current step
  
          Keyword arguments:
          self -- It signifies an instance of a class.
          """
  
          # If not previous remesh
          if not self.remesh_executed:
              if not self.initial_remeshing:
                  # We need to check if the model part has been modified recently
                  if self.main_model_part.Is(KratosMultiphysics.MODIFIED):
                      self.main_model_part.Set(KratosMultiphysics.MODIFIED, False)
                      self.step = 0  # Reset (just to be sure)
                      self.time = 0.0  # Reset (just to be sure)
                  else:
                      current_time = self.main_model_part.ProcessInfo[KratosMultiphysics.TIME]
                      if self.interval.IsInInterval(current_time):
                          # We remesh if needed
                          if self.__execute_remesh():
                              if self.strategy in ["hessian", "levelset", "optimization"]:
                                  if self.settings["blocking_threshold_size"].GetBool():
                                      MeshingApplication.BlockThresholdSizeElements(self.main_model_part, self.settings["threshold_sizes"])
                                  self._ExecuteRefinement()
                                  self.initial_step_done = True
                                  self.step = 0  # Reset
                                  self.time = 0.0
function_tokens: def ExecuteInitializeSolutionStep ( self ) : # If not previous remesh if not self . remesh_executed : if not self . initial_remeshing : # We need to check if the model part has been modified recently if self . main_model_part . Is ( KratosMultiphysics . MODIFIED ) : self . main_model_part . Set ( KratosMultiphysics . MODIFIED , False ) self . step = 0 # Reset (just to be sure) self . time = 0.0 # Reset (just to be sure) else : current_time = self . main_model_part . ProcessInfo [ KratosMultiphysics . TIME ] if self . interval . IsInInterval ( current_time ) : # We remesh if needed if self . __execute_remesh ( ) : if self . strategy in [ "hessian" , "levelset" , "optimization" ] : if self . settings [ "blocking_threshold_size" ] . GetBool ( ) : MeshingApplication . BlockThresholdSizeElements ( self . main_model_part , self . settings [ "threshold_sizes" ] ) self . _ExecuteRefinement ( ) self . initial_step_done = True self . step = 0 # Reset self . time = 0.0