flow360.SlidingInterface#
- pydantic model SlidingInterface[source]#
SlidingInterface
class for setting up sliding interface- Parameters:
center (Coordinate) – axis : Vector stationary_patches : List[str] rotating_patches : List[str] volume_name : Union[str, int, List[str], List[int]] parent_volume_name : Optional[str] = None name : Optional[str] = None theta_radians : Optional[str] = None theta_degrees : Optional[str] = None omega_radians : Optional[float] = None omega_degrees : Optional[float] = None is_dynamic : Optional[bool] = None
center – Coordinate representing the origin of rotation, eg. (0, 0, 0)
axis (Axis) – Axis of rotation, eg. (0, 0, 1)
stationary_patches (List[str]) – A list of static patch names of an interface
rotating_patches (List[str]) – A list of dynamic patch names of an interface
volume_name (Union[str, int, List[str], List[int]]) – A list of dynamic volume zones related to the above {omega, centerOfRotation, axisOfRotation}
name (str, optional) – Name of slidingInterface
parent_volume_name (str, optional) – Name of the volume zone that the rotating reference frame is contained in, used to compute the acceleration in the nested rotating reference frame
theta_radians (str, optional) – Expression for rotation angle (in radians) as a function of time
theta_degrees (str, optional) – Expression for rotation angle (in degrees) as a function of time
omega (Union[float, Omega], optional) – Nondimensional rotating speed, radians/nondim-unit-time
omega_radians – Nondimensional rotating speed, radians/nondim-unit-time
omega_degrees – Nondimensional rotating speed, degrees/nondim-unit-time
is_dynamic – Whether rotation of this interface is dictated by userDefinedDynamics
- Returns:
An instance of the component class SlidingInterface.
- Return type:
Example
>>> si = SlidingInterface( center=(0, 0, 0), axis=(0, 0, 1), stationary_patches=['patch1'], rotating_patches=['patch2'], volume_name='volume1', omega=1 )
- Fields:
axis (flow360.component.types.Vector)
center (Tuple[float, float, float])
is_dynamic (bool | None)
name (str | None)
omega_degrees (float | None)
omega_radians (float | None)
parent_volume_name (str | None)
rotating_patches (List[str])
stationary_patches (List[str])
theta_degrees (str | None)
theta_radians (str | None)
volume_name (str | int | List[str] | List[int])
- field center [Required] (alias 'centerOfRotation')#
- field axis [Required] (alias 'axisOfRotation')#
- Constraints:
type = array
minItems = 3
maxItems = 3
items = [{‘type’: ‘number’}, {‘type’: ‘number’}, {‘type’: ‘number’}]
- field stationary_patches [Required] (alias 'stationaryPatches')#
- field rotating_patches [Required] (alias 'rotatingPatches')#
- field volume_name [Required] (alias 'volumeName')#
- field parent_volume_name = None (alias 'parentVolumeName')#
- field name = None (alias 'interfaceName')#
- field theta_radians = None (alias 'thetaRadians')#
- field theta_degrees = None (alias 'thetaDegrees')#
- field omega_radians = None (alias 'omegaRadians')#
- field omega_degrees = None (alias 'omegaDegrees')#
- field is_dynamic = None (alias 'isDynamic')#
- classmethod add_type_field()#
Automatically place “type” field with model name in the model field dictionary.
- append(params, overwrite=False)#
append parametrs to the model
- Parameters:
params (Flow360BaseModel) – Flow360BaseModel parameters to be appended
overwrite (bool, optional) – Whether to overwrite if key exists, by default False
- classmethod construct(_fields_set=None, **values)#
Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values
- copy(update=None, **kwargs)#
Copy a Flow360BaseModel. With
deep=True
as default.
- dict(*args, exclude=None, **kwargs)#
Returns dict representation of the model.
- Parameters:
*args – Arguments passed to pydantic’s
dict
method.**kwargs – Keyword arguments passed to pydantic’s
dict
method.
- Returns:
A formatted dict.
- Return type:
Example
>>> params.dict()
- classmethod dict_from_file(filename)#
Loads a dictionary containing the model from a .json or .yaml file.
- Parameters:
filename (str) – Full path to the .yaml or .json file to load the
Flow360BaseModel
from.- Returns:
A dictionary containing the model.
- Return type:
Example
>>> params = Flow360Params.from_file(filename='folder/flow360.json')
- classmethod flow360_schema()#
Generate a schema json string for the flow360 model
- classmethod flow360_ui_schema()#
Generate a UI schema json string for the flow360 model
- classmethod from_file(filename)#
Loads a
Flow360BaseModel
from .json, or .yaml file.- Parameters:
filename (str) – Full path to the .yaml or .json file to load the
Flow360BaseModel
from.- Returns:
An instance of the component class calling load.
- Return type:
Flow360BaseModel
Example
>>> simulation = Simulation.from_file(filename='folder/sim.json')
- classmethod from_json(filename, **parse_obj_kwargs)#
Load a
Flow360BaseModel
from .json file.- Parameters:
filename (str) – Full path to the .json file to load the
Flow360BaseModel
from.- Returns:
Flow360BaseModel
– An instance of the component class calling load.**parse_obj_kwargs – Keyword arguments passed to pydantic’s
parse_obj
method.
Example
>>> params = Flow360Params.from_json(filename='folder/flow360.json')
- classmethod from_orm(obj)#
- classmethod from_yaml(filename, **parse_obj_kwargs)#
Loads
Flow360BaseModel
from .yaml file.- Parameters:
filename (str) – Full path to the .yaml file to load the
Flow360BaseModel
from.**parse_obj_kwargs – Keyword arguments passed to pydantic’s
parse_obj
method.
- Returns:
An instance of the component class calling from_yaml.
- Return type:
Flow360BaseModel
Example
>>> params = Flow360Params.from_yaml(filename='folder/flow360.yaml')
- classmethod generate_docstring()#
Generates a docstring for a Flow360 model and saves it to the __doc__ of the class.
- help(methods=False)#
Prints message describing the fields and methods of a
Flow360BaseModel
.- Parameters:
methods (bool = False) – Whether to also print out information about object’s methods.
Example
>>> solver_params.help(methods=True)
- json(*args, exclude=None, **kwargs)#
Returns json representation of the model.
- Parameters:
*args – Arguments passed to pydantic’s
json
method.**kwargs – Keyword arguments passed to pydantic’s
json
method.
- Returns:
A formatted json. Sets default vaules by_alias=True, exclude_none=True
- Return type:
json
Example
>>> params.json()
- classmethod parse_file(path, *, content_type=None, encoding='utf8', proto=None, allow_pickle=False)#
- classmethod parse_obj(obj)#
- classmethod parse_raw(b, *, content_type=None, encoding='utf8', proto=None, allow_pickle=False)#
- classmethod schema(by_alias=True, ref_template='#/definitions/{model}')#
- classmethod schema_json(*, by_alias=True, ref_template='#/definitions/{model}', **dumps_kwargs)#
- set_will_export_to_flow360(flag)#
Recursivly sets flag will_export_to_flow360
- Parameters:
flag (bool) – set to true before exporting to flow360 json
- to_file(filename)#
Exports
Flow360BaseModel
instance to .json or .yaml file- Parameters:
filename (str) – Full path to the .json or .yaml or file to save the
Flow360BaseModel
to.
Example
>>> params.to_file(filename='folder/flow360.json')
- to_json(filename)#
Exports
Flow360BaseModel
instance to .json file- Parameters:
filename (str) – Full path to the .json file to save the
Flow360BaseModel
to.
Example
>>> params.to_json(filename='folder/flow360.json')
- to_solver(params, exclude=None, required_by=None)#
Loops through all fields, for Flow360BaseModel runs .to_solver() recusrively. For dimensioned value performs
unit conversion to flow360_base system.
- Parameters:
params (Flow360Params) – Full config definition as Flow360Params.
exclude (List[str] (optional)) – List of fields to ignore on returned model.
required_by (List[str] (optional)) – Path to property which requires conversion.
- Returns:
returns caller class with units all in flow360 base unit system
- Return type:
caller class
- to_yaml(filename)#
Exports
Flow360BaseModel
instance to .yaml file.- Parameters:
filename (str) – Full path to the .yaml file to save the
Flow360BaseModel
to.
Example
>>> params.to_yaml(filename='folder/flow360.yaml')
- classmethod update_forward_refs(**localns)#
Try to update ForwardRefs on fields based on this Model, globalns and localns.
- classmethod validate(value)#