pycanha_core.tmm — Thermal Model Classes#

The tmm submodule provides the core classes used to build and inspect thermal mathematical models.

Enumerations#

class NodeType(*values)#

Bases: Enum

Thermal node type.

DIFFUSIVE = 68#
BOUNDARY = 66#

Nodes#

class Node(*args, **kwargs)#

Bases: object

Thermal node class.

property C#

(self) -> float

property T#

(self) -> float

__init__#

Overloaded function.

  1. __init__(self, node_num: int) -> None

Create an unassociated node.

  1. __init__(self, other: pycanha_core.pycanha_core.tmm.Node) -> None

Copy constructor.

property a#

(self) -> float

property aph#

(self) -> float

property capacity#

Alias for C (thermal capacity).

property eps#

(self) -> float

property fx#

(self) -> float

property fy#

(self) -> float

property fz#

(self) -> float

int_node_num#
property literal_C#

(self) -> str

property node_num#

(self) -> int

parent_pointer#
parent_pointer_address#

Memory address of the parent Nodes container.

property qa#

(self) -> float

property qe#

(self) -> float

property qi#

(self) -> float

property qr#

(self) -> float

property qs#

(self) -> float

property type#

(self) -> pycanha_core.pycanha_core.tmm.NodeType

class Nodes(*args, **kwargs)#

Bases: object

Container for thermal nodes.

__init__#
add_node#
property estimated_number_of_nodes#

(self) -> int

get_C#
get_C_value_pointer#
get_T#
get_T_value_pointer#
get_a#
get_a_value_pointer#
get_aph#
get_aph_value_pointer#
get_eps#
get_eps_value_pointer#
get_fx#
get_fx_value_pointer#
get_fy#
get_fy_value_pointer#
get_fz#
get_fz_value_pointer#
get_idx_from_node_num#
get_literal_C#
get_node_from_idx#
get_node_from_node_num#
get_node_num_from_idx#
get_qa#
get_qa_value_pointer#
get_qe#
get_qe_value_pointer#
get_qi#
get_qi_value_pointer#
get_qr#
get_qr_value_pointer#
get_qs#
get_qs_value_pointer#
get_type#
is_mapped#
is_node#
property num_bound_nodes#

(self) -> int

property num_diff_nodes#

(self) -> int

property num_nodes#

(self) -> int

remove_node#
set_C#
set_T#
set_a#
set_aph#
set_eps#
set_fx#
set_fy#
set_fz#
set_literal_C#
set_qa#
set_qe#
set_qi#
set_qr#
set_qs#
set_type#

Couplings#

class Coupling(*args, **kwargs)#

Bases: object

Thermal coupling between two nodes.

__init__#
property node_1#

(self) -> int

property node_2#

(self) -> int

property value#

(self) -> float

class CouplingMatrices(*args, **kwargs)#

Bases: object

Sparse coupling matrices.

__init__#
add_new_coupling_from_node_idxs#
add_ovw_coupling_from_node_idxs#
add_ovw_coupling_from_node_idxs_verbose#
add_sum_coupling_from_node_idxs#
add_sum_coupling_from_node_idxs_verbose#
coupling_exists_from_idxs#
get_conductor_value_address_from_idx#
get_conductor_value_from_idx#
get_conductor_value_pointer_from_idx#
get_idxs_and_coupling_value_from_coupling_idx#
property num_bound_bound_couplings#

(self) -> int

property num_bound_nodes#

(self) -> int

property num_diff_bound_couplings#

(self) -> int

property num_diff_diff_couplings#

(self) -> int

property num_diff_nodes#

(self) -> int

property num_nodes#

(self) -> int

property num_total_couplings#

(self) -> int

print_sparse#
reserve#
set_conductor_value_from_idx#
sparse_bb_copy#
sparse_db_copy#
sparse_dd_copy#
class Couplings(*args, **kwargs)#

Bases: object

Couplings manager.

__init__#
add_coupling#
add_new_coupling#
add_ovw_coupling#
add_ovw_coupling_verbose#
add_sum_coupling#
add_sum_coupling_verbose#
coupling_exists#
get_coupling_from_coupling_idx#
get_coupling_matrices#
get_coupling_value#
get_coupling_value_address#
get_coupling_value_pointer#
set_coupling_value#
class ConductiveCouplings(*args, **kwargs)#

Bases: object

Conductive (linear) couplings.

__init__#
add_coupling#
get_coupling_value#
set_coupling_value#
class RadiativeCouplings(*args, **kwargs)#

Bases: object

Radiative (T^4) couplings.

__init__#
add_coupling#
get_coupling_value#
set_coupling_value#

Network and model#

class ThermalNetwork(*args, **kwargs)#

Bases: object

Thermal network (nodes + couplings).

__init__#
add_node#
property conductive_couplings#

(self) -> pycanha_core.pycanha_core.tmm.ConductiveCouplings

property nodes#

(self) -> pycanha_core.pycanha_core.tmm.Nodes

property nodes_ptr#

(self) -> pycanha_core.pycanha_core.tmm.Nodes

property radiative_couplings#

(self) -> pycanha_core.pycanha_core.tmm.RadiativeCouplings

remove_node#
class ThermalData(*args, **kwargs)#

Bases: object

Class for storing thermal data.

__init__#
associate#
create_new_table#
create_reset_table#
get_table#
get_table_const#
has_table#
property network#

(self) -> pycanha_core.pycanha_core.tmm.ThermalNetwork

property network_ptr#

(self) -> pycanha_core.pycanha_core.tmm.ThermalNetwork

remove_table#
property size#

(self) -> int

class ThermalMathematicalModel(*args, **kwargs)#

Bases: object

Thermal Mathematical Model (TMM).

__init__#
add_conductive_coupling#
add_node#
add_radiative_coupling#
property c_callbacks_active#

(self) -> bool

callback_solver_loop#
callback_transient_after_timestep#
callback_transient_time_change#
property callbacks_active#

(self) -> bool

property conductive_couplings#

(self) -> pycanha_core.pycanha_core.tmm.ConductiveCouplings

property formulas#

(self) -> pycanha_core.pycanha_core.parameters.Formulas

property internal_callbacks_active#

(self) -> bool

property name#

(self) -> str

property network#

(self) -> pycanha_core.pycanha_core.tmm.ThermalNetwork

property network_ptr#

(self) -> pycanha_core.pycanha_core.tmm.ThermalNetwork

property nodes#

(self) -> pycanha_core.pycanha_core.tmm.Nodes

property nodes_ptr#

(self) -> pycanha_core.pycanha_core.tmm.Nodes

property parameters#

(self) -> pycanha_core.pycanha_core.parameters.Parameters

property python_apply_formulas#

(self) -> collections.abc.Callable[[], None]

property python_callbacks_active#

(self) -> bool

property python_extern_callback_solver_loop#

(self) -> collections.abc.Callable[[], None]

property python_extern_callback_transient_after_timestep#

(self) -> collections.abc.Callable[[], None]

property python_extern_callback_transient_time_change#

(self) -> collections.abc.Callable[[], None]

property python_formulas_active#

(self) -> bool

property radiative_couplings#

(self) -> pycanha_core.pycanha_core.tmm.RadiativeCouplings

read_tmd#

Read an ESATAN TMD file into this model.

property thermal_data#

(self) -> pycanha_core.pycanha_core.tmm.ThermalData

property time#

(self) -> float

class ESATANReader(*args, **kwargs)#

Bases: object

ESATAN TMD file reader.

__init__#
read_tmd#

Read an ESATAN TMD file into the associated model.

property verbose#

Enable verbose reader output.