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.
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
edgebased_levelset_solver.EdgeBasedLevelSetSolver Class Reference
Inheritance diagram for edgebased_levelset_solver.EdgeBasedLevelSetSolver:
Collaboration diagram for edgebased_levelset_solver.EdgeBasedLevelSetSolver:

Classes

class  PorousResistanceComputation
 

Public Member Functions

def __init__ (self, KratosMultiphysics.Model model, KratosMultiphysics.Parameters parameters)
 Default parameters. More...
 
None AddVariables (self)
 
None AddDofs (self)
 
None ImportModelPart (self)
 
None PrepareModelPart (self)
 
None Check (self)
 
None Initialize (self)
 
None InitializeSolutionStep (self)
 
float AdvanceInTime (self, float current_time)
 Compute a bounded variable time step and create new step data. More...
 
bool SolveSolutionStep (self)
 Perform a local solution loop until the time step size shrinks to the target bounds. More...
 
KratosMultiphysics.ModelPart GetComputingModelPart (self)
 
None ExportModelPart (self)
 
def Finalize (self)
 

Static Public Member Functions

KratosMultiphysics.Parameters GetDefaultParameters ()
 
int GetMinimumBufferSize ()
 

Public Attributes

 model_part
 
 domain_size
 
 density
 
 viscosity
 
 wall_law_y
 
 stabdt_pressure_factor
 
 stabdt_convection_factor
 
 redistance_frequency
 
 extrapolation_layers
 
 tau2_factor
 
 max_safety_factor
 
 max_time_step_size
 
 initial_time_step_size
 
 number_of_initial_time_steps
 
 reduction_on_failure
 
 use_mass_correction
 
 assume_constant_pressure
 
 use_parallel_distance_calculation
 
 compute_porous_resistance_law
 
 pressure_linear_solver
 
 distance_size
 
 matrix_container
 
 distance_utils
 
 fluid_solver
 
 safety_factor
 
 current_step_size
 
 current_max_step_size
 
 timer
 

Constructor & Destructor Documentation

◆ __init__()

def edgebased_levelset_solver.EdgeBasedLevelSetSolver.__init__ (   self,
KratosMultiphysics.Model  model,
KratosMultiphysics.Parameters  parameters 
)

Default parameters.

{ "model_part_name" : "", "domain_size" : 3, "density" : 0.0, "viscosity" : 0.0, "wall_law_y" : 0.0, "stabdt_pressure_factor" : 1.0, "stabdt_convection_factor" : 0.1, "use_mass_correction" : true, "redistance_frequency" : 5, "extrapolation_layers" : 5, "tau2_factor" : 0.0, "max_safety_factor" : 0.5, "max_time_step_size" : 1e-2, "initial_time_step_size" : 1e-5, "number_of_initial_time_steps" : 10, "reduction_on_failure" : 0.3, "assume_constant_pressure" : true, "use_parallel_distance_calculation" : false, "compute_porous_resistance_law" : "NONE", ["NONE", "ERGUN", "CUSTOM"] "echo_level" : 0, "solver_type" : "EdgebasedLevelset", "linear_solver_settings" : { "solver_type" : "amgcl" }, "model_import_settings" : { } }

Member Function Documentation

◆ AddDofs()

None edgebased_levelset_solver.EdgeBasedLevelSetSolver.AddDofs (   self)

◆ AddVariables()

None edgebased_levelset_solver.EdgeBasedLevelSetSolver.AddVariables (   self)

◆ AdvanceInTime()

float edgebased_levelset_solver.EdgeBasedLevelSetSolver.AdvanceInTime (   self,
float  current_time 
)

Compute a bounded variable time step and create new step data.

Note: this function modifies -> self.safety_factor -> self.current_max_step_size -> self.current_step_size

◆ Check()

None edgebased_levelset_solver.EdgeBasedLevelSetSolver.Check (   self)

◆ ExportModelPart()

None edgebased_levelset_solver.EdgeBasedLevelSetSolver.ExportModelPart (   self)

◆ Finalize()

def edgebased_levelset_solver.EdgeBasedLevelSetSolver.Finalize (   self)

◆ GetComputingModelPart()

KratosMultiphysics.ModelPart edgebased_levelset_solver.EdgeBasedLevelSetSolver.GetComputingModelPart (   self)

◆ GetDefaultParameters()

KratosMultiphysics.Parameters edgebased_levelset_solver.EdgeBasedLevelSetSolver.GetDefaultParameters ( )
static

◆ GetMinimumBufferSize()

int edgebased_levelset_solver.EdgeBasedLevelSetSolver.GetMinimumBufferSize ( )
static

◆ ImportModelPart()

None edgebased_levelset_solver.EdgeBasedLevelSetSolver.ImportModelPart (   self)

◆ Initialize()

None edgebased_levelset_solver.EdgeBasedLevelSetSolver.Initialize (   self)

◆ InitializeSolutionStep()

None edgebased_levelset_solver.EdgeBasedLevelSetSolver.InitializeSolutionStep (   self)

◆ PrepareModelPart()

None edgebased_levelset_solver.EdgeBasedLevelSetSolver.PrepareModelPart (   self)

◆ SolveSolutionStep()

bool edgebased_levelset_solver.EdgeBasedLevelSetSolver.SolveSolutionStep (   self)

Perform a local solution loop until the time step size shrinks to the target bounds.

Member Data Documentation

◆ assume_constant_pressure

edgebased_levelset_solver.EdgeBasedLevelSetSolver.assume_constant_pressure

◆ compute_porous_resistance_law

edgebased_levelset_solver.EdgeBasedLevelSetSolver.compute_porous_resistance_law

◆ current_max_step_size

edgebased_levelset_solver.EdgeBasedLevelSetSolver.current_max_step_size

◆ current_step_size

edgebased_levelset_solver.EdgeBasedLevelSetSolver.current_step_size

◆ density

edgebased_levelset_solver.EdgeBasedLevelSetSolver.density

◆ distance_size

edgebased_levelset_solver.EdgeBasedLevelSetSolver.distance_size

◆ distance_utils

edgebased_levelset_solver.EdgeBasedLevelSetSolver.distance_utils

◆ domain_size

edgebased_levelset_solver.EdgeBasedLevelSetSolver.domain_size

◆ extrapolation_layers

edgebased_levelset_solver.EdgeBasedLevelSetSolver.extrapolation_layers

◆ fluid_solver

edgebased_levelset_solver.EdgeBasedLevelSetSolver.fluid_solver

◆ initial_time_step_size

edgebased_levelset_solver.EdgeBasedLevelSetSolver.initial_time_step_size

◆ matrix_container

edgebased_levelset_solver.EdgeBasedLevelSetSolver.matrix_container

◆ max_safety_factor

edgebased_levelset_solver.EdgeBasedLevelSetSolver.max_safety_factor

◆ max_time_step_size

edgebased_levelset_solver.EdgeBasedLevelSetSolver.max_time_step_size

◆ model_part

edgebased_levelset_solver.EdgeBasedLevelSetSolver.model_part

◆ number_of_initial_time_steps

edgebased_levelset_solver.EdgeBasedLevelSetSolver.number_of_initial_time_steps

◆ pressure_linear_solver

edgebased_levelset_solver.EdgeBasedLevelSetSolver.pressure_linear_solver

◆ redistance_frequency

edgebased_levelset_solver.EdgeBasedLevelSetSolver.redistance_frequency

◆ reduction_on_failure

edgebased_levelset_solver.EdgeBasedLevelSetSolver.reduction_on_failure

◆ safety_factor

edgebased_levelset_solver.EdgeBasedLevelSetSolver.safety_factor

◆ stabdt_convection_factor

edgebased_levelset_solver.EdgeBasedLevelSetSolver.stabdt_convection_factor

◆ stabdt_pressure_factor

edgebased_levelset_solver.EdgeBasedLevelSetSolver.stabdt_pressure_factor

◆ tau2_factor

edgebased_levelset_solver.EdgeBasedLevelSetSolver.tau2_factor

◆ timer

edgebased_levelset_solver.EdgeBasedLevelSetSolver.timer

◆ use_mass_correction

edgebased_levelset_solver.EdgeBasedLevelSetSolver.use_mass_correction

◆ use_parallel_distance_calculation

edgebased_levelset_solver.EdgeBasedLevelSetSolver.use_parallel_distance_calculation

◆ viscosity

edgebased_levelset_solver.EdgeBasedLevelSetSolver.viscosity

◆ wall_law_y

edgebased_levelset_solver.EdgeBasedLevelSetSolver.wall_law_y

The documentation for this class was generated from the following file: