Previous topic

Fickian Diffusion

Next topic

Polynomial Profile

This Page

X-averaged Fickian Diffusion

class pybamm.particle.no_distribution.XAveragedFickianDiffusion(param, domain)

Class for molar conservation in a single x-averaged particle, employing Fick’s law. I.e., the concentration varies with r (internal spherical coordinate) but not x (electrode coordinate).

Parameters
  • param (parameter class) – The parameters to use for this submodel

  • domain (str) – The domain of the model either ‘Negative’ or ‘Positive’

  • **Extends (** pybamm.particle.BaseParticle) –

get_coupled_variables(variables)

A public method that creates and returns the variables in a submodel which require variables in other submodels to be set first. For example, the exchange current density requires the concentration in the electrolyte to be created before it can be created. If a variable can be created independent of other submodels then it should be created in ‘get_fundamental_variables’ instead of this method.

Parameters

variables (dict) – The variables in the whole model.

Returns

The variables created in this submodel which depend on variables in other submodels.

Return type

dict

get_fundamental_variables()

A public method that creates and returns the variables in a submodel which can be created independent of other submodels. For example, the electrolyte concentration variables can be created independent of whether any other variables have been defined in the model. As a rule, if a variable can be created without variables from other submodels, then it should be placed in this method.

Returns

The variables created by the submodel which are independent of variables in other submodels.

Return type

dict

set_boundary_conditions(variables)

A method to set the boundary conditions for the submodel. Note: this method modifies the state of self.boundary_conditions. Unless overwritten by a submodel, the default behaviour of ‘pass’ is used a implemented in pybamm.BaseSubModel.

Parameters

variables (dict) – The variables in the whole model.

set_initial_conditions(variables)

For single or x-averaged particle models, initial conditions can’t depend on x so we arbitrarily set the initial values of the single particles to be given by the values at x=0 in the negative electrode and x=1 in the positive electrode. Typically, supplied initial conditions are uniform x.

set_rhs(variables)

A method to set the right hand side of the differential equations which contain a time derivative. Note: this method modifies the state of self.rhs. Unless overwritten by a submodel, the default behaviour of ‘pass’ is used as implemented in pybamm.BaseSubModel.

Parameters

variables (dict) – The variables in the whole model.