bfieldtools.mesh_impedance.self_inductance_matrix

bfieldtools.mesh_impedance.self_inductance_matrix(mesh, Nchunks=None, quad_degree=2, approx_far=True, margin=2, chunk_clusters=False, planar=False, analytic_self_coupling=True)

Calculate a self inductance matrix for hat basis functions (stream functions) in a mesh.

Self-coupling terms are calculated anaytically.

Parameters
mesh: Trimesh mesh object
Nchunks: int

Number of serial chunks to divide the computation into

quad_degree: int >= 1

Quadrature degree (Dunavant scheme) to use. Self-inductance requires higher degree than mutual inductance

approx_far: Boolean (True)

If True, use approximate calculation for triangles that far from the source triangles using a simple quadrature (see integrals.triangle_potential_approx)

margin: float

Cut-off distance for “far” points measured in mean triangle side length

planar: boolean

This option is propagated to _triangle_coupling for planar meshes the analytic calculations can be made faster

analytic_self_coupling: boolean

If True: the diagonal elements obtained from _triangle_coupling are replaced with an analytic calculation

Returns
——-
M: (Nvertices x Nvertices) array

Self.inductance matrix of mesh