Explicit control external circuit#

Current is explicitly specified, either by a function or in terms of other variables.

class pybamm.external_circuit.ExplicitCurrentControl(param, options)#

External circuit with current control.

Extends: pybamm.models.submodels.external_circuit.base_external_circuit.BaseModel

View inheritance diagram for this model

Inheritance diagram of pybamm.models.submodels.external_circuit.explicit_control_external_circuit.ExplicitCurrentControl

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

class pybamm.external_circuit.ExplicitPowerControl(param, options)#

External circuit with current set explicitly to hit target power.

Extends: pybamm.models.submodels.external_circuit.base_external_circuit.BaseModel

View inheritance diagram for this model

Inheritance diagram of pybamm.models.submodels.external_circuit.explicit_control_external_circuit.ExplicitPowerControl

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

class pybamm.external_circuit.ExplicitResistanceControl(param, options)#

External circuit with current set explicitly to hit target resistance.

Extends: pybamm.models.submodels.external_circuit.base_external_circuit.BaseModel

View inheritance diagram for this model

Inheritance diagram of pybamm.models.submodels.external_circuit.explicit_control_external_circuit.ExplicitResistanceControl

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