How to create temperature dependent material property in Icepak?

ansys-satyajeet
ansys-satyajeet Member, Employee Posts: 14
Photogenic First Anniversary Ansys Employee First Comment
✭✭✭

How to create temperature dependent material property in AEDT Icepak using PyAEDT?

Tagged:

Best Answer

  • ansys-satyajeet
    ansys-satyajeet Member, Employee Posts: 14
    Photogenic First Anniversary Ansys Employee First Comment
    ✭✭✭
    Answer ✓

    Start by importing pyaedt.

    import pyaedt
    

    Start an Icepak session

    ipk = pyaedt.Icepak(project="create_temp_dep_materials.aedt", design="new_design",
                        version=2024.2, new_desktop=True)
    

    Define material name and dataset entries for new material

    matname = "silicon_temp_dep"
    

    List of temperatures (x-axis) with unit cel

    temp = [0.28, 11.16, 22.03, 35.74, 50.87,
            75.94, 100.54, 142.17, 159.20, 199.89,
            225.93, 271.36, 300.70, 327.20]
    

    List of thermal conductivity (y-axis) with unit W_per_Kelm

    k = [179.62, 170.08, 159.27, 149.74, 138.29,
         126.23, 114.17, 100.22, 93.24, 85.03,
         79.97, 73.04, 67.99, 63.57]
    

    Create the dataset

    dsname = matname + "_k"
    ipk.create_dataset1d_project(dsname, x=temp, y=k, x_unit="cel", y_unit="W_per_Kelm")
    

    Create a new material with a thermal modifier for thermal conductivity

    if not ipk.materials.checkifmaterialexists(matname):
        mat = ipk.materials.add_material(matname)
        mat.thermal_conductivity = 1
        mat.mass_density = 1
        mat.specific_heat = 1
        # Add thermal modifier for thermal conductivity
        modifier_dataset = "$" + dsname
        mat.thermal_conductivity.add_thermal_modifier_dataset(modifier_dataset)
    

    Release AEDT desktop session

    ipk.release_desktop(close_projects=True, close_desktop=True)