cideMOD.models.particle_models.implicit_coupling

Classes

NondimensionalSpectralModel(order)

SpectralLegendreModel(order)

Particle Intercalation resolved with Legendre Polinomials.

StressEnhancedSpectralModel(order)

class cideMOD.models.particle_models.implicit_coupling.NondimensionalSpectralModel(order)[source]

Bases: SpectralLegendreModel

get_value(value, index, f, electrode)[source]
wf_implicit_coupling(f_0, f_1, test, electrode, dx: ufl.Measure, DT, materials: List, nd_model)[source]

Weak formulation without using this implicit method

class cideMOD.models.particle_models.implicit_coupling.SpectralLegendreModel(order)[source]

Bases: StrongCoupledPM

Particle Intercalation resolved with Legendre Polinomials. Diffusion is modeled with Fick’s law.

Li_amount(f, electrode, materials: List, dx, volume_factor=1)[source]
build_legendre(order)[source]

Builds mass matrix, stiffness matrix and boundary vector using Legendre Polinomials. The domain used is [0,1] and only pair Legendre polinomials are used to enforce zero flux at x=0.

Parameters:

order (int) – number of Legendre polinomials to use

Returns:

Mass matrix, Stiffness matrix, boundary vector

Return type:

tuple

c_s_r_average(f, electrode)[source]
c_s_surf(f, electrode)[source]

Update implicit model with results calculated without it

fields(n_mat, electrode)[source]

List of fields that will be used in the mesoscale formulation, defaults to an empty list.

Returns:

Names of fields used

Return type:

List

get_value(value, f, electrode, mat)[source]
initial_guess(f_0, electrode, c_s_ini, fs_mapper)[source]

Assign initial guess to the corresponding fields

Parameters:
  • Function (Function) – Dolfin Function to assign initial values

  • Expression (Expression or Function) – Dolfin Expression or Function containing the initial values

wf_0(f_0, f_1, test, electrode, dx)[source]

Weak Formulation for the initialization of the problem dc_s/dt = 0

wf_explicit_coupling(f_0, f_1, test, electrode, dx)[source]

Weak Formulation for this implicit method

wf_implicit_coupling(f_0, f_1, test, electrode, dx: ufl.Measure, DT, materials: List, F, R)[source]

Weak formulation without using this implicit method

class cideMOD.models.particle_models.implicit_coupling.StressEnhancedSpectralModel(order)[source]

Bases: SpectralLegendreModel

build_legendre(order)[source]

Builds mass matrix, stiffness matrix and boundary vector using Legendre Polinomials. The domain used is [0,1] and only pair Legendre polinomials are used to enforce zero flux at x=0.

Parameters:

order (int) – number of Legendre polinomials to use

Returns:

Mass matrix, Stiffness matrix, boundary vector

Return type:

tuple

get_average_c_s(f, domain)[source]
theta(material, R, T)[source]
wf_implicit_coupling(f_0, f_1, test, electrode, dx: ufl.Measure, DT, materials, F, R)[source]

Weak formulation without using this implicit method