## FCSys.Regions.CaCLs

Cathode catalyst layers

### Information

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

### Package Content

Name | Description
--- | ---
CaCL | Cathode catalyst layer
CaCGDL | Integrated cathode catalyst/gas diffusion layer

## FCSys.Regions.CaCLs.CaCL

Cathode catalyst layer

### Information

This model represents the cathode catalyst layer of a PEMFC. It is identical to the anode catalyst layer except for the included species, the exchange current density (Jo), and the activation energy (). For more information, please see the anCL model.

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

### Parameters

Type | Name | Default | Description
--- | --- | --- | ---
replaceable model Subregion | Subregions.Subregion (common… | Base subregion model
CurrentAreic | J0 | 0.023*U.mA/U.cm^2 | Exchange current density @ 300 K [N/(L2.T)]
Geometry
Length | L_x[:] | {28.7}*U.um | Lengths along the x axis [L]
Length | L_y[:] | {8}*U.cm | Lengths along the y axis [L]
Length | L_z[:] | {6.25}*U.cm | Lengths across the z axis [L]
NumberAbsolute | epsilon | 0.4 | Porosity [1]
Assumptions
Included transport axes
Boolean | inclTransX | true | X
Boolean | inclTransY | false | Y
Boolean | inclTransZ | false | Z

### Connectors

Type | Name | Description
--- | --- | ---
replaceable model Subregion | Base subregion model
BoundaryBus | xNegative[n_y, n_z] | Negative boundary along the x axis
BoundaryBus | xPositive[n_y, n_z] | Positive boundary along the x axis
BoundaryBus | yNegative[n_x, n_z] | Negative boundary along the y axis
BoundaryBus | yPositive[n_x, n_z] | Positive boundary along the y axis
BoundaryBus | zNegative[n_x, n_y] | Negative boundary along the z axis
BoundaryBus | zPositive[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_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),
                final zeta=0),
              N2(
                initEnergy=Init.none,
                upstreamX=false,
                final zeta=0),
              O2(
                initEnergy=Init.none,
                upstreamX=false,
                I(each stateSelect=StateSelect.always, each fixed=true),
                final zeta=0,
                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.75*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=0.1*U.S/U.cm),
              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,
                N0=0.1*U.C,
                T(each stateSelect=StateSelect.default))),
            volume(inclCapillary=true,capillary(R=5*U.um))),
        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.023*U.mA/U.cm^2
        "Exchange current density @ 300 K";

    protected
      outer Conditions.Environment environment "Environmental conditions";

    initial equation

    end CaCL;

## FCSys.Regions.CaCLs.CaCGDL

Integrated cathode catalyst/gas diffusion layer

### 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

Type | Name | Default | Description
--- | --- | --- | ---
replaceable model Subregion | Subregions.Subregion (common… | Base subregion model
CurrentAreic | J0 | 0.023*U.mA/U.cm^2 | Exchange current density @ 300 K [N/(L2.T)]
Geometry
Length | L_x[:] | {(28.7*U.um + 0.235*U.mm)} | Lengths along the x axis [L]
Length | L_y[:] | {8}*U.cm | Lengths along the y axis [L]
Length | L_z[:] | {6.25}*U.cm | Lengths across the z axis [L]
NumberAbsolute | epsilon | 0.16 | Porosity [1]
Assumptions
Included transport axes
Boolean | inclTransY | false | Y
Boolean | inclTransZ | false | Z

### Connectors

Type | Name | Description
--- | --- | ---
BoundaryBus | xNegative[n_y, n_z] | Negative boundary along the x axis
BoundaryBus | xPositive[n_y, n_z] | Positive boundary along the x axis
BoundaryBus | yNegative[n_x, n_z] | Negative boundary along the y axis
BoundaryBus | yPositive[n_x, n_z] | Positive boundary along the y axis
BoundaryBus | zNegative[n_x, n_y] | Negative boundary along the z axis
BoundaryBus | zPositive[n_x, n_y] | Positive boundary along the z axis

### Modelica definition

    model CaCGDL "Integrated cathode catalyst/gas diffusion layer"
      import Modelica.Constants.inf;

      extends CaCLs.CaCL(
        L_x={(28.7*U.um + 0.235*U.mm)},
        epsilon=0.16,
        subregions(
          gas(
            H2O(each final eta=0),
            N2(each final eta=0),
            O2(each final eta=0)),
          ionomer('H+_H2O'(each k_Phi={1,1,1}),'H+'(each sigma=0.8*U.S/U.cm)),
          liquid(H2O(each final eta=0))));

    end CaCGDL;