FCSys.Regions.CaCLs

Cathode catalyst layers

Information

Extends from Modelica.Icons.Package (Icon for standard packages).

Package Content

NameDescription
FCSys.Regions.CaCLs.CaCL CaCL Cathode catalyst layer
FCSys.Regions.CaCLs.CaCGDL CaCGDL Integrated cathode catalyst/gas diffusion layer

FCSys.Regions.CaCLs.CaCL FCSys.Regions.CaCLs.CaCL

Cathode catalyst layer FCSys.Regions.CaCLs.CaCL

Information

This model represents the cathode catalyst layer of a PEMFC. The x axis extends from the anode to the cathode. By default, the cross-sectional area in the yz plane is 50 cm2.

The default thickness (Lx = {28.7*U.um}) is from [Gurau1998]. The default thermal conductivity of the carbon (θ = U.m*U.K/(1.18*U.W)) represents a compressed SGL Sigracet 10 BA gas diffusion layer [Nitta2008]. The default electronic mobility (σ = 40*U.S/(12*U.cm)) is for SGL Carbon Group Sigracet® 10 BA (see CAGDLs.Sigracet10BA). The default activation energy for the oxygen reduction reaction (E_A = 73.2e3*U.J/U.mol) is from [Siversten2005].

Default assumptions (may be adjusted):

  1. All of the species have the same temperature, even in different phases.
  2. Half of the solid is graphite and half is ionomer (by volume).

For more information, please see the Region model.

Extends from Region (Base model for a 3D array of subregions).

Parameters

TypeNameDefaultDescription
replaceable model SubregionSubregions.Subregion (common…Base subregion model
CurrentAreicJ00.11*U.mA/U.cm^2Exchange current density @ 300 K [N/(L2.T)]
Geometry
LengthL_x[:]{28.7}*U.umLengths along the x axis [L]
LengthL_y[:]{8}*U.cmLengths along the y axis [L]
LengthL_z[:]{6.25}*U.cmLengths across the z axis [L]
NumberAbsoluteepsilon0.4Porosity [1]
Assumptions
Included transport axes
BooleaninclTransXtrueX
BooleaninclTransYfalseY
BooleaninclTransZfalseZ

Connectors

TypeNameDescription
replaceable model SubregionBase subregion model
BoundaryBusxNegative[n_y, n_z]Negative boundary along the x axis
BoundaryBusxPositive[n_y, n_z]Positive boundary along the x axis
BoundaryBusyNegative[n_x, n_z]Negative boundary along the y axis
BoundaryBusyPositive[n_x, n_z]Positive boundary along the y axis
BoundaryBuszNegative[n_x, n_y]Negative boundary along the z axis
BoundaryBuszPositive[n_x, n_y]Positive boundary along the z axis

Modelica definition

model CaCL "Cathode catalyst layer"
  import Modelica.Constants.inf;
  // extends FCSys.Icons.Names.Top4;

  extends Region(
    L_x={28.7}*U.um,
    L_y={8}*U.cm,
    L_z={6.25}*U.cm,
    final inclTransX=true,
    inclTransY=false,
    inclTransZ=false,
    redeclare replaceable model Subregion = Subregions.Subregion (
        common(k_Q=0),
        gasLiq(k_Phi={2,2,2}, k_Q=inf),
        gas(
          common(k_Q=inf),
          k=fill(epsilon^(-0.5), 3),
          inclH2O=true,
          inclN2=true,
          inclO2=true,
          H2O(
            initEnergy=Init.none,
            upstreamX=false,
            phi(each stateSelect=StateSelect.always, each fixed=true),
            zeta=100*Characteristics.H2O.Gas.zeta()),
          N2(
            initEnergy=Init.none,
            upstreamX=false,
            zeta=100*Characteristics.N2.Gas.zeta()),
          O2(
            initEnergy=Init.none,
            upstreamX=false,
            I(each stateSelect=StateSelect.always, each fixed=true),
            zeta=100*Characteristics.O2.Gas.zeta(),
            p_stop=12*U.Pa)),
        graphite(
          k=fill((0.5*(1 - epsilon))^(-0.5), 3),
          'inclC+'=true,
          'incle-'=true,
          'incle-Transfer'=true,
          'C+'(theta=U.m*U.K/(1.18*U.W)*(0.5*(1 - epsilon))^1.5, epsilon=0.5*(1 -
                epsilon)),
          'e-'(sigma=40*U.S/(12*U.cm)/(0.5*(1 - epsilon))^1.5),
          'e-Transfer'(E_A=0.46*U.V)),
        ionomer(
          k=fill((0.5*(1 - epsilon))^(-0.5), 3),
          'inclSO3-'=true,
          'inclH+'=true,
          inclH2O=true,
          'SO3-'(epsilon=0.5*(1 - epsilon), T(each fixed=false, each 
                stateSelect=StateSelect.default)),
          'H+'(initEnergy=Init.none, sigma=40*U.S/U.m),
          H2O(initEnergy=Init.none,phi(each stateSelect=StateSelect.always, 
                each fixed=true))),
        liquid(
          k=fill(epsilon^(-0.5), 3),
          inclH2O=true,
          H2O(
            upstreamX=false,
            epsilon_IC=1e-5,
            phi(each stateSelect=StateSelect.always, each fixed=true),
            each initEnergy=Init.none,
            mu=100*Characteristics.H2O.Liquid.mu(),
            T(each stateSelect=StateSelect.default))),
        volume(kappa=6.46e-6*U.mm^2)),
    subregions(graphite('e-Transfer'(final I0=J0*subregions.A[Axis.x]))));

  // See the documentation layer of Phases.PartialPhase regarding the
  // settings of k for each phase.

  parameter Q.NumberAbsolute epsilon(nominal=1) = 0.4 "Porosity";

  parameter Q.CurrentAreic J0(min=0) = 0.11*U.mA/U.cm^2 
    "Exchange current density @ 300 K";

  // Auxiliary variables (for analysis)
  output Q.Potential Deltaw[n_y, n_z]=-subregions[n_x, :, :].graphite.'e-'.g_boundaries[
      1, Side.p] - subregions[1, :, :].ionomer.'H+'.g_boundaries[1, Side.n] if 
    environment.analysis "Electrical potential differences over the yz plane";

protected 
  outer Conditions.Environment environment "Environmental conditions";

initial equation 

end CaCL;

FCSys.Regions.CaCLs.CaCGDL FCSys.Regions.CaCLs.CaCGDL

Integrated cathode catalyst/gas diffusion layer FCSys.Regions.CaCLs.CaCGDL

Information

The default thickness is the total thickness of CaCL and CaGDL.

For more information, please see the CaCL model.

Extends from CaCLs.CaCL (Cathode catalyst layer).

Parameters

TypeNameDefaultDescription
replaceable model SubregionSubregions.Subregion (common…Base subregion model
CurrentAreicJ00.11*U.mA/U.cm^2Exchange current density @ 300 K [N/(L2.T)]
Geometry
LengthL_x[:]{(28.7*U.um + 0.3*U.mm)}Lengths along the x axis [L]
LengthL_y[:]{8}*U.cmLengths along the y axis [L]
LengthL_z[:]{6.25}*U.cmLengths across the z axis [L]
NumberAbsoluteepsilon0.5Porosity [1]
Assumptions
Included transport axes
BooleaninclTransYfalseY
BooleaninclTransZfalseZ

Connectors

TypeNameDescription
BoundaryBusxNegative[n_y, n_z]Negative boundary along the x axis
BoundaryBusxPositive[n_y, n_z]Positive boundary along the x axis
BoundaryBusyNegative[n_x, n_z]Negative boundary along the y axis
BoundaryBusyPositive[n_x, n_z]Positive boundary along the y axis
BoundaryBuszNegative[n_x, n_y]Negative boundary along the z axis
BoundaryBuszPositive[n_x, n_y]Positive boundary along the z axis

Modelica definition

model CaCGDL "Integrated cathode catalyst/gas diffusion layer"
  extends CaCLs.CaCL(
    L_x={(28.7*U.um + 0.3*U.mm)},
    epsilon=0.5,
    subregions(
      common(each k_Phi={0.3,0.3,0.3}),
      gas(H2(each final eta=0),H2O(each final eta=0)),
      ionomer('H+'(each sigma=650*U.S/U.m)),
      liquid(H2O(each final eta=0))));

end CaCGDL;