Exemple #1
0
    def CreateAssignmentProcess(self, params):

        if (self.value_is_numeric):
            params.AddValue("variable_name", self.settings["variable_name"])
            counter = 0
            for i in self.value:
                params["value"][counter].SetDouble(i)
                counter += 1
            self.AssignValueProcess = KratosSolid.AssignVectorToConditionsProcess(
                self.model_part, params)
        else:
            #function values are assigned to a vector variable :: transformation is needed
            if (isinstance(self.var, KratosMultiphysics.Array1DVariable3)):
                variable_name = self.settings["variable_name"].GetString(
                ) + "_VECTOR"
                #print("::[--Assign_Variable--]:: "+variable_name)
                params.AddEmptyValue("variable_name")
                params["variable_name"].SetString(variable_name)
            else:
                params.AddValue("variable_name",
                                self.settings["variable_name"])
            counter = 0
            for i in self.value:
                params["value"][counter].SetDouble(i)
                counter += 1
            params.AddEmptyValue("entity_type").SetString("CONDITIONS")
            self.AssignValueProcess = KratosSolid.AssignVectorFieldToEntitiesProcess(
                self.model_part, self.compiled_function, "function",
                self.value_is_spatial_function, params)

        # in case of going to previous time step for time step reduction
        self.CreateUnAssignmentProcess(params)
Exemple #2
0
 def CreateUnAssignmentProcess(self, params):
     params["compound_assignment"].SetString(
         self.GetInverseAssigment(
             self.settings["compound_assignment"].GetString()))
     if (self.value_is_numeric):
         self.UnAssignValueProcess = KratosSolid.AssignVectorToConditionsProcess(
             self.model_part, params)
     else:
         self.UnAssignValueProcess = KratosSolid.AssignVectorFieldToEntitiesProcess(
             self.model_part, self.compiled_function, "function",
             self.value_is_spatial_function, params)