Gas diffusivity models
The diffusivity models are created in appSrc file createDiffusivityModels.H. For both air and fuel, a pointerList of diffusivity models is declared. On the air side, this is airDiffModels. Creation of a new diffusivity model requires a scalar field for the calculated diffusivity values, a label list of cells for which the diffusivity is to be calculated (normally corresponding to a cell zone), and a dictionary specifying the model type along with the corresponding type-specific parameters.
On the air side, a scalarField, airDiff, is used by each airDiffusivityModel[m] to return its calculated values. Then, a diffusivity model is established for each air zone and a pointer to it is added to the pointerList. There is one model for the entire air zone. Its dictionary is located in the constant/air/airProperties case file. There is also one model for each porous zone within the air region, with dictionaries in the corresponding zone in the case file constant/air/porousZones. The cellZone labelLists are found in the polyMesh directory for the air region.
An analogous story holds on the fuel side. How the SOFC model uses the diffusivity models will be described below.