Diffusion Material classes

Diffusion materials cover a wide variety of problems governed by the Laplace equation. Stationary problems require the diffusivity constant for the (isotropic) Darcy’s equation.

Derived classes provide interfaces for material properties commonly used in the context of one particular diffusion type problem, translating them to the DiffusionGeneral class’ specific parameters, and inherit all other methods from DiffusionGeneral.

Parent class

class femedu.materials.DiffusionGeneral.DiffusionGeneral(params={'capacity': 1.0, 'density': 1.0, 'diffusivity': 1.0, 'thickness': 1.0})

Generic diffusion model for 2D and 3D diffusion problems.

Use subclasses Thermal, Seapage, etc., for actual analyses.

getCapacity()

returns \(C := \varrho c\)

getDiffusivity()

Returns diffusivity of a 2D plate, or 1.0 if none given

getFlux()
Returns:

flux (numpy.ndarray)

getGrad()
Returns gradPhi:

gradient \(\nabla \phi\) of the scalar potential \(\phi\)

getThickness()

Returns thickness of a 2D plate, or 1.0 if none given or 3D problem

setGrad(gradPhi)
Parameters:

gradPhi (numpy.ndarray) – gradient \(\nabla \phi\) of the scalar potential \(\phi\)

updateState()

Update the material state after \(\nabla \phi\)

Derived Classes

class femedu.materials.Thermal.Thermal(params)

Thermal diffusion material description

parameters inside the params dictionary

key

default value

description

conductivity

1.0

thermal conductivity

specifict heat

1.0

specific heat capacity

density

1.0

mass density

Parameters:

params (dict) – isotropic thermal properties