Model configuration#
This module contains a collection of classes for creating a model configuration.
The model configuration defines the model’s inputs, outputs, Global Coefficients,
build duration and project. The resulting
(ModelConfiguration
)
object is subsequently used to train a model.
GlobalCoefficientDefinition#
DomainAxisDefinition#
- class DomainAxisDefinition#
Defines an axis in the Domain of Analysis.
- Parameters:
position (Literal['relative_to_min', 'relative_to_max', 'relative_to_center', 'absolute']) –
Anchor point position.
relative_to_min: VolXmin = xmin - valuerelative_to_max: VolXmax = xmax + valuerelative_to_center: (xmin+xmax)/2 - valueabsolute: VolXmin = valuevalue (float) – Distance of the anchor from the position. When
position=absolute
, the distance can be either positive or negative. In any other case, only positive values are accepted.length (float) – Length of the Domain of Analysis along the axis. Only positive numbers are accepted.
Example
Define the Z-axis(i.e., height) in a Domain of Analysis
from ansys.simai.core.data.models import DomainAxisDefinition, DomainOfAnalysis # Get the last configuration from a project bld_conf = my_project.last_model_configuration # Define a new axis for the Domain of Analysis new_doa_height = DomainAxisDefinition("relative_to_min", 180.5, 99.1) # Assign the new Domain of Analysis to the configuration bld_conf.domain_of_analysis.height = new_doa_height
DomainOfAnalysis#
- class DomainOfAnalysis#
Defines the Domain of Analysis.
- Parameters:
length (DomainAxisDefinition) – Domain of Analysis along the X axis
width (DomainAxisDefinition) – Domain of Analysis along the Y axis
height (DomainAxisDefinition) – Domain of Analysis along the Z axis
Example
Get the Domain of Analysis from a configuration and replace it with a new one
from ansys.simai.core.data.models import DomainOfAnalysis # Get the last configuration from a project bld_conf = my_project.last_model_configuration # Define a new Domain of Analysis new_doa = DomainOfAnalysis( length=("relative_to_max", 5, 8.1), width=("relative_to_max", 5, 8.1), height=("absolute", -4.5, 0.1), ) # Assign the new Domain of Analysis to the configuration bld_conf.domain_of_analysis = new_doa
ModelInput#
ModelOutput#
ModelConfiguration#
- class ModelConfiguration#
Configures the build of a model.
- Parameters:
project (Project) – the project of the configuration.
build_preset (str | None) –
indicates the build duration. Available options:
debug: < 30 min, only 4 datshort: < 24 hoursdefault: < 2 days, default value.long: < 1 weekcontinuous (bool) – indicates if continuous learning is enabled. Default is False.
input (ModelInput | None) – the inputs of the model.
output (ModelOutput | None) – the outputs of the model.
global_coefficients (list[GlobalCoefficientDefinition] | None) – the Global Coefficients of the model.
domain_of_analysis (DomainOfAnalysis | None) – The Domain of Analysis of the model configuration.
pp_input (PostProcessInput | None) – The post-processing input (e.g. a surface variable).
Example
Define a new configuration and launch a build.
import ansys.simai.core as asc from ansys.simai.core.data.model_configuration import ( DomainAxisDefinition, DomainOfAnalysis, ModelConfiguration, ModelInput, ModelOutput, PostProcessInput, ) simai = asc.from_config() # Get the project of interest aero_dyn_project = simai.projects.get(name="aero-dyn") # Define the inputs of the model model_input = ModelInput(surface=["Velocity"], boundary_conditions=["Vx"]) # Define the outputs of the model model_output = ModelOutput( surface=["Pressure", "WallShearStress_0"], volume=["Velocity_0", "Pressure"] ) # Define the surface post-processing input pp_input = PostProcessInput(surface=["Temperature_1"]) # Define the model coefficients global_coefficients = [("max(Pressure)", "maxpress")] # Set the Domain of Analysis doa = DomainOfAnalysis( length=("relative_to_max", 5, 8.1), width=("relative_to_max", 5, 8.1), height=("absolute", -4.5, 0.1), ) # Define the build configuration for the model new_conf = ModelConfiguration( project=aero_dyn_project, build_preset="debug", continuous=False, input=model_input, output=model_output, global_coefficients=global_coefficients, domain_of_analysis=doa, pp_input=pp_input, ) # Launch a mode build with the new configuration new_model = simai.models.build(new_conf)
Sets the properties of a build configuration.
- compute_global_coefficient()#
Computes the results of the formula for all global coefficients with respect to the project’s sample.