Icepak.create_resistor_network_from_matrix(sources_power, faces_ids, matrix, network_name=None, node_names=None)[source]#

Create a thermal network.

sources_powerlist of str or list of float

List containing all the power value of the internal nodes. If the element of the list is a float, the W unit is used. Otherwise, the unit specified in the string is used.

faces_idslist of int

All the face IDs that are network nodes.

matrixlist of list

Strict lower-square triangular matrix containing the link values between the nodes of the network. If the element of the matrix is a float, the cel_per_w unit is used. Otherwise, the unit specified in the string is used. The element of the matrix in the i-th row and j-th column is the link value between the i-th node and j-th node. The list of nodes is automatically created from the lists for the sources_power and faces_ids parameters (in this order).

network_namestr, optional

Name of the network boundary. The default is None, in which case the boundary name is generated automatically.

node_nameslist of str, optional

Name of all the nodes in the network.


Boundary network object when successful or None when failed.


>>> oModule.AssignNetworkBoundary


>>> from pyaedt import Icepak
>>> app = Icepak()
>>> box = app.modeler.create_box([0, 0, 0], [20, 50, 80])
>>> faces_ids = [ for face in box.faces][0, 1]
>>> sources_power = [3, "4mW"]
>>> matrix = [[0, 0, 0, 0],
>>>           [1, 0, 0, 0],
>>>           [0, 3, 0, 0],
>>>           [1, 2, 4, 0]]
>>> boundary = app.assign_resistor_network_from_matrix(sources_power, faces_ids, matrix)