Project configuration file#
The project configuration file is the most comprehensive format that allows to apply a set of variables, materials, setup, mesh, and boundaries to a new project or save an existing one. This code creates the JSON file:
from ansys.aedt.core import Icepak
ipk = Icepak()
filename = "test"
ipk.export_3d_model(file_name=filename,
file_path=ipk.working_directory,
file_format=".step",
object_list=[],
removed_objects=[])
conf_file = ipk.configurations.export_config()
ipk.release_desktop()
This code imports the project configuration from the JSON file:
app.modeler.import_3d_cad(file_path)
out = app.configurations.import_config(conf_file)
File structure examples:
{
"general": {
"pyaedt_version": "0.8.dev0",
"model_units": "mm",
"design_name": "IcepakDesign1",
"date": "09/01/2024 08:22:17",
"object_mapping": {
# object_id: [
# object_name,
# object_center
# ],
"12": [
"Region",
[
80.0,
14.243,
-55.0
]
]
},
"output_variables": {},
"variables": {},
"postprocessing_variables": {}
},
"setups": {
# Setup Name : {Setup Properties}
"MySetupAuto": {
"Enabled": true,
"Flow Regime": "Turbulent",
"Include Temperature": true,
}
},
"boundaries": {
# Boundary Name : {Boundary Properties}
"CPU": {
"Objects": [
"CPU"
],
"Block Type": "Solid",
"Use External Conditions": false,
"Total Power": "25W",
"BoundType": "Block"
},
},
"mesh": {
"Settings": {
# mesh_properties,
"MeshMethod": "MesherHD",
"UserSpecifiedSettings": true,
"ComputeGap": true,
"MaxElementSizeX": "16mm",
"MaxElementSizeY": "3.5mm",
"MaxElementSizeZ": "11mm",
# ....
}
},
"materials": {
# Material Name : {Material Properties}
"Al-Extruded": {
"CoordinateSystemType": "Cartesian",
"BulkOrSurfaceType": 1,
"PhysicsTypes": {
"set": [
"Thermal"
]
},
"AttachedData": {
"MatAppearanceData": {
"property_data": "appearance_data",
"Red": 232,
"Green": 235,
"Blue": 235
}
},
"thermal_conductivity": "205",
"mass_density": "2800",
"specific_heat": "900",
"thermal_material_type": {
"property_type": "ChoiceProperty",
"Choice": "Solid"
},
"clarity_type": {
"property_type": "ChoiceProperty",
"Choice": "Opaque"
}
},
},
"objects": {
# Object Name: {object properties}
"Region": {
"SurfaceMaterial": "",
"Material": "air",
"SolveInside": true,
"Model": true,
"Group": "",
"Transparency": 0.0,
"Color": [
255,
0,
0
],
"CoordinateSystem": "Global"
},
},
"datasets": [
# Dataset Name : {Dataset Properties}
],
"monitors": [
# Monitor Name : {Monitor Properties}
],
"native components": {
# Component Name : {Component Properties}
}
}
For a practical demonstration, see the Project configuration file example