slippy.contact.ContactModel

class slippy.contact.ContactModel(name: str, surface_1: slippy.core.abcs._SurfaceABC, surface_2: Optional[slippy.core.abcs._SurfaceABC] = None, lubricant: Optional[slippy.core.abcs._LubricantModelABC] = None, adhesion: Optional[slippy.core.abcs._AdhesionModelABC] = None, output_dir: Optional[str] = None)[source]

A container for multi step contact mechanics and lubrication problems

Parameters
  • name (str) – The name of the contact model, used for output and log files by default

  • surface_1 (_SurfaceABC) – A surface object with the height profile and the material for the surface set. The first surface will be the master surface, when grid points are not aligned surface 2 will be interpolated on the grid points for surface 1.

  • surface_2 (_SurfaceABC) – A surface object with the height profile and the material for the surface set. The first surface will be the master surface, when grid points are not aligned surface 2 will be interpolated on the grid points for surface 1.

  • lubricant (_LubricantModelABC, optional (None)) – A lubricant model

  • adhesion (_AdhesionModelABC, optional (None)) – An adhesion model

  • output_dir (str, optional (None)) – Path to an output directory can be relative or absolute, slippy will attempt to make directory if it does not exist, defaults to slippy.OUTPUT_DIR, which defaults to the current working directory.

steps

The model steps in the order they will be solved in, each value will be a ModelStep object.

Type

OrderedDict

surface_1, surface_2

Surface objects of the two model surfaces

Type

_SurfaceABC

lubricant_model

A lubricant model

Type

_LubricantModelABC

add_step()[source]

Adds a step object to the model

add_output()[source]

Adds an output request to the model or selected steps

data_check()[source]

Performs analysis checks for each of the steps and the model as a whole, prints the results to the log file

solve()[source]

Solves all of the model steps in sequence, writing history and field outputs to the output file. Writes progress to the log file

__init__(name: str, surface_1: slippy.core.abcs._SurfaceABC, surface_2: Optional[slippy.core.abcs._SurfaceABC] = None, lubricant: Optional[slippy.core.abcs._LubricantModelABC] = None, adhesion: Optional[slippy.core.abcs._AdhesionModelABC] = None, output_dir: Optional[str] = None)[source]

Methods

__init__(name, surface_1[, surface_2, ...])

add_output(output_request[, active_steps])

Add an output to one or more steps in the model

add_step([step_instance, position])

Adds a solution step to the current model

data_check()

solve([verbose, skip_data_check])

Solve all steps and sub-models in the model as well as writing all outputs

Attributes

log_file_name

lubricant_model

steps