KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
|
Functions | |
def | PrintResults (model_part) |
Variables | |
domain_size = ProjectParameters.domain_size | |
setting the domain size for the problem to be solved More... | |
dictionary | variables_dictionary |
defining variables to be used More... | |
lagrangian_model_part = ModelPart("LagrangianPart"); | |
SolverType = problem_settings.SolverType | |
importing the solvers needed More... | |
fluid_only_model_part = ModelPart("FluidOnlyPart"); | |
element_type = problem_settings.lagrangian_element | |
Choosing element type for lagrangian_model_part. More... | |
SolverSettings = ProjectParameters.FluidSolverConfiguration | |
solver_lagr = import_solver(SolverSettings) | |
bool | compute_reactions = False |
gid_mode = GiDPostMode.GiD_PostBinary | |
deformed_mesh_flag = WriteDeformedMeshFlag.WriteDeformed | |
write_conditions = WriteConditionsFlag.WriteConditions | |
multifile = MultiFileFlag.SingleFile | |
string | input_file_name = "lagrangian_droplet_test" |
gid_io = GidIO(input_file_name,gid_mode,multifile,deformed_mesh_flag, write_conditions) | |
model_part_io_structure = ModelPartIO(input_file_name) | |
box_corner1 = Vector(3); | |
box_corner2 = Vector(3); | |
string | outstring2 = "convergence_info.txt" |
outputfile1 = open(outstring2, 'w') | |
add_nodes = problem_settings.adaptive_refinement | |
bulk_modulus = problem_settings.bulk_modulus | |
density = problem_settings.density | |
FSI = problem_settings.FSI | |
int | eul_model_part = 0 |
float | gamma = 0.072 |
float | contact_angle = 360.0 |
float | zeta_dissapative_JM = 0.0 |
this is for sessile droplets#### More... | |
float | zeta_dissapative_BM = 0.0 |
float | zeta_dissapative_SM = 0.0 |
lag_solver = solver_lagr.CreateSolver(lagrangian_model_part, SolverSettings, eul_model_part, gamma, contact_angle, zeta_dissapative_JM, zeta_dissapative_BM, zeta_dissapative_SM) | |
the dissipative force is added utilizing the power law model, utilizing the capillary number when the velocity is the tangential component at the contact line, More... | |
bool | reform_dofs_at_each_step = False |
pDiagPrecond = DiagonalPreconditioner() | |
alpha_shape | |
echo_level | |
bool | Multifile = True |
Dt = ProjectParameters.Dt | |
Nsteps = ProjectParameters.nsteps | |
final_time = ProjectParameters.max_time | |
output_time = ProjectParameters.output_time | |
time = ProjectParameters.Start_time | |
int | out = 0 |
int | step = 0 |
res_name1 = str("water") | |
def lagrangian_droplet_test.PrintResults | ( | model_part | ) |
lagrangian_droplet_test.add_nodes = problem_settings.adaptive_refinement |
lagrangian_droplet_test.alpha_shape |
lagrangian_droplet_test.box_corner1 = Vector(3); |
lagrangian_droplet_test.box_corner2 = Vector(3); |
lagrangian_droplet_test.bulk_modulus = problem_settings.bulk_modulus |
int lagrangian_droplet_test.compute_reactions = False |
float lagrangian_droplet_test.contact_angle = 360.0 |
lagrangian_droplet_test.deformed_mesh_flag = WriteDeformedMeshFlag.WriteDeformed |
lagrangian_droplet_test.density = problem_settings.density |
lagrangian_droplet_test.domain_size = ProjectParameters.domain_size |
setting the domain size for the problem to be solved
lagrangian_droplet_test.Dt = ProjectParameters.Dt |
lagrangian_droplet_test.echo_level |
lagrangian_droplet_test.element_type = problem_settings.lagrangian_element |
Choosing element type for lagrangian_model_part.
int lagrangian_droplet_test.eul_model_part = 0 |
lagrangian_droplet_test.final_time = ProjectParameters.max_time |
lagrangian_droplet_test.fluid_only_model_part = ModelPart("FluidOnlyPart"); |
lagrangian_droplet_test.FSI = problem_settings.FSI |
float lagrangian_droplet_test.gamma = 0.072 |
lagrangian_droplet_test.gid_io = GidIO(input_file_name,gid_mode,multifile,deformed_mesh_flag, write_conditions) |
lagrangian_droplet_test.gid_mode = GiDPostMode.GiD_PostBinary |
string lagrangian_droplet_test.input_file_name = "lagrangian_droplet_test" |
lagrangian_droplet_test.lag_solver = solver_lagr.CreateSolver(lagrangian_model_part, SolverSettings, eul_model_part, gamma, contact_angle, zeta_dissapative_JM, zeta_dissapative_BM, zeta_dissapative_SM) |
the dissipative force is added utilizing the power law model, utilizing the capillary number when the velocity is the tangential component at the contact line,
you can choose one of the three models as:
or
or
or
references:
lagrangian_droplet_test.lagrangian_model_part = ModelPart("LagrangianPart"); |
lagrangian_droplet_test.model_part_io_structure = ModelPartIO(input_file_name) |
lagrangian_droplet_test.multifile = MultiFileFlag.SingleFile |
bool lagrangian_droplet_test.Multifile = True |
lagrangian_droplet_test.Nsteps = ProjectParameters.nsteps |
int lagrangian_droplet_test.out = 0 |
lagrangian_droplet_test.output_time = ProjectParameters.output_time |
lagrangian_droplet_test.outputfile1 = open(outstring2, 'w') |
string lagrangian_droplet_test.outstring2 = "convergence_info.txt" |
lagrangian_droplet_test.pDiagPrecond = DiagonalPreconditioner() |
bool lagrangian_droplet_test.reform_dofs_at_each_step = False |
lagrangian_droplet_test.res_name1 = str("water") |
lagrangian_droplet_test.solver_lagr = import_solver(SolverSettings) |
lagrangian_droplet_test.SolverSettings = ProjectParameters.FluidSolverConfiguration |
lagrangian_droplet_test.SolverType = problem_settings.SolverType |
importing the solvers needed
int lagrangian_droplet_test.step = 0 |
lagrangian_droplet_test.time = ProjectParameters.Start_time |
dictionary lagrangian_droplet_test.variables_dictionary |
defining variables to be used
lagrangian_droplet_test.write_conditions = WriteConditionsFlag.WriteConditions |
float lagrangian_droplet_test.zeta_dissapative_BM = 0.0 |
float lagrangian_droplet_test.zeta_dissapative_JM = 0.0 |
this is for sessile droplets####
float lagrangian_droplet_test.zeta_dissapative_SM = 0.0 |