def Initialize(self):
        csprint(self.lvl, yellow(self.__class__.__name__ + ":") + " Starting to initialize Empire")
        import empire_wrapper
        csprint(self.lvl, yellow(self.__class__.__name__ + ":") + " Wrapper-Import Successful")
        self.empire = empire_wrapper.EmpireWrapper()
        csprint(self.lvl, yellow(self.__class__.__name__ + ":") + " Wrapper Created")
        self.empire.Connect(self.xml_file_name)

        self.empire.ReceiveMesh("client_mesh", self.client_model_part)
Пример #2
0
def SetNodalValues(counter): # Somehow Modify the Nodal Values
    for node in model_part.Nodes:
        value = sum(node.GetSolutionStepValue(VELOCITY)) + counter
        node.SetSolutionStepValue(PRESSURE, value)

print("This is kratos_client_2")

model_part = ModelPart("MyModelPart")
model_part.AddNodalSolutionStepVariable(VELOCITY)
model_part.AddNodalSolutionStepVariable(PRESSURE)

print("Starting to initialize Empire")
import empire_wrapper
print("Import Successfull")
empire = empire_wrapper.EmpireWrapper()
print("Wrapper Created")
empire.Connect("kratos_client_2.xml")

empire.ReceiveMesh("myMesh2", model_part)

for i in range(10):
    is_converged = 0
    k = 0
    while not is_converged:
        k += 1
        empire.ReceiveDataField("myMesh2", "velocity", [VELOCITY, VELOCITY]) # receiving an (Empire) "doubleVector"
        SetNodalValues(i)
        empire.SendDataField("myMesh2", "pressure", PRESSURE)

        is_converged = empire.ReceiveConvergenceSignal()
Пример #3
0
print("Mesh 1 ::::: Finished extracting properties from the model part !!")

for i in range(0, int(len(elements) / 4)):
    sys.stdout.flush()
    model_part.CreateNewElement("Element2D4N", i + 1, [
        int(elements[4 * i + 0]),
        int(elements[4 * i + 1]),
        int(elements[4 * i + 2]),
        int(elements[4 * i + 3])
    ], prp)
print("Mesh 1 ::::: Finished Adding Elements to model part !!")

print("Starting to initialize Empire")
import empire_wrapper

print("Import Successfull")
empire = empire_wrapper.EmpireWrapper(echo_level=2)
print("Wrapper Created")
empire.Connect("kratos_client_1.xml")

empire.SendMesh("myMesh1", model_part)

for i in range(10):
    empire.SendDataField(
        "myMesh1", "displacement",
        [DISPLACEMENT, DISPLACEMENT])  # sending an (Empire) "doubleVector"
    empire.ReceiveDataField("myMesh1", "temperature", TEMPERATURE)

    SetNodalValues(i)

empire.Disconnect()
Пример #4
0
gid_io.InitializeMesh(mesh_name)
gid_io.WriteMesh(fluid_model_part.GetMesh())
gid_io.FinalizeMesh()

# Stepping and time settings
full_Dt = ProjectParameters.Dt
initial_Dt = 0.001 * full_Dt  # 0.05 #0.01
Nsteps = ProjectParameters.nsteps

time = ProjectParameters.Start_time

#
import empire_wrapper

print('Create object wrapper ...')
wrapper = empire_wrapper.EmpireWrapper(fluid_model_part)

# loop information
it = 0
maxit = 1

for i in range(1, Nsteps + 1):
    print('################## Current time step: {}'.format(i))

    # while it < maxit:
    # print '--------------Iteration: {}'.format(it)

    if (i < 3):
        deltaT = initial_Dt

    else: