Cross-Flow Model for Gas Separation by Membranes 
Author's Data: Housam BINOUS
Department of Chemical Engineering
National Institute of Applied Sciences and Technology
Tunis, TUNISIA
Email: binoushousam@yahoo.com

Reference:C. J. Geankoplis, Transport Processes and Unit Operations, 3rd edition, Prentice Hall, 1993.

The separation factor for this binary mixture (components A and B) that we want to separate by membrane permeation is \(TraditionalForm\`\(α\^*\)\)=((Subscript[(P '), A])/(Subscript[(P '), B]))=10.

\(\(\(α\^*\) = 10;\)\)

The pressure of the feed side is (Subscript[p, h]) = 190 cmHg while (Subscript[p, l])=19 cmHg is the pressure on the permeate side.

(Subscript[p, l]) = 19;

(Subscript[p, h]) = 190;

Feed mole fraction is (Subscript[x, f]) = 0.209. Permeate mole fraction is (Subscript[y, pi]) = 0.654834.They are related by the following equation:

(Subscript[x, f]) = 0.209;

\(Solve[
      y/\((1 - y)\) == 
\(α\^*\)\ \((\((x\_f - 
                  p\_l/p\_h\ y)\)/\((1 - x\_f - p\_l/p\_h\ \((1 - y)\))\))\), 
      y]\)

(Subscript[y, Pi]) = 0.654834;

Stage cut is equal to θ=0.2.

θ = 0.2;

t= 2.54 (10^(-3))cm is membrane thickness. \(TraditionalForm\`q\_O = \(\((1 - θ)\)\(\ \)\(q\_f\)\(\ \)\)\)is reject out flow rate. (Subscript[q, f]) = 1 (10^6) (cm^3) (STP)/s is feed flow rate. (Subscript[(P'), B])=50 \(TraditionalForm\`10\^\(-10\)\ cm\^3\ \((STP)\)\ cm/\((s\ cm\^2\ cmHg)\)\) is the permeability of component B. 
Governing equations for mole fraction x and y in the reject and permeate sides as well as q flow rate in the low pressure side are given by:

(Subscript[q, O]) = 8 10^5;

(Subscript[q, f]) = 1 10^6;

t=2.54 10^-3;

(Subscript[(P'), B]) = 50 10^-10;

(Subscript[(P'), A]) = 500 10^-10;

myODEsoln[Ω_] := 
      NDSolve[{y[(Subscript[A, m])] D[q[(Subscript[A, m])], {(Subscript[A, m]), 1}] == 
            D[q[(Subscript[A, m])] x[(Subscript[A, m])], {(Subscript[A, m]), 1}], -y[(Subscript[A, m])] D[
                q[(Subscript[A, m])], {(Subscript[A, m]), 1}] == (Subscript[(P'), A])/
                t ((Subscript[p, h]) x[(Subscript[A, m])] - 
                  (Subscript[p, l]) y[(Subscript[A, m])]), -(1 - y[(Subscript[A, m])]) D[
                q[(Subscript[A, m])], {(Subscript[A, m]), 1}] == (Subscript[(P'), B])/
                t ((Subscript[p, h]) (1 - x[(Subscript[A, m])]) - (Subscript[p, l]) (1 - y[(Subscript[A, m])])), 
          x[0] == (Subscript[x, f]), y[0] == (Subscript[y, Pi]), 
          q[0] == (Subscript[q, f])}, {x[(Subscript[A, m])], y[(Subscript[A, m])], q[(Subscript[A, m])]}, {(Subscript[A, m]), 
          0, Ω}]

Use FindRoot to compute surface area of the separation module. Surface area must verify θ = 0.2 . Surface area is (Subscript[A, sol]).

Off[NDSolve::pdord]

Off[NDSolve::ivres]

qend[Ω_?NumericQ] := 
      Flatten[(q[(Subscript[A, m])] /. myODEsoln[Ω]) /. 
          (Subscript[A, m]) -> Ω]
(Subscript[A, sol]) = 
        FindRoot[((Subscript[q, f]) - qend[Ω])/
              (Subscript[q, f]) == θ, {Ω, 2 10^8, 3 10^8}, 
          MaxIterations -> 1000];

(Subscript[A, sol])

Checking the values of the mole fractions x and y at the entrance and exit of the module.

x[(Subscript[A, m])] /. myODEsoln[Ω /. (Subscript[A, sol])] /. 
        (Subscript[A, m]) -> Ω /. (Subscript[A, sol])

x[(Subscript[A, m])] /. myODEsoln[Ω /. (Subscript[A, sol])] /. 
      (Subscript[A, m]) -> 0

y[(Subscript[A, m])] /. myODEsoln[Ω /. (Subscript[A, sol])] /. 
        (Subscript[A, m]) -> Ω /. (Subscript[A, sol])

y[(Subscript[A, m])] /. myODEsoln[Ω /. (Subscript[A, sol])] /. 
      (Subscript[A, m]) -> 0

Stage cut is equal to θ=0.2. Knowing that reject mole fraction equal to (Subscript[x, O]) = 0.119036, a material balance gives a permeate mole fraction (Subscript[y, P]) = 0.568856.

(Subscript[x, O]) = 0.119036;

Solve[θ y + (1 - θ)  (Subscript[x, O]) == (Subscript[x, f]), 
      y]

(Subscript[y, P]) = 0.568856;

Permeate mole frcation is also obtained using the following equation:

Integrate[
          First[y[(Subscript[A, m])] /. myODEsoln[Ω /. (Subscript[A, sol])]] /. 
            (Subscript[A, m]) -> area, {area, 
            0, Ω /. (Subscript[A, sol])}]/Ω /. 
      (Subscript[A, sol])

Mole fraction at end of separation module is (Subscript[y, i]) = 0.466545. It is related to (Subscript[x, 0])by the following equation:

\(Solve[
      y/\((1 - y)\) == 
\((\(α\^*\)\ \((\((x\_O - p\_l/p\_h\ y)\)/\((1 - x\_O - p\_l/p\_h\ \((1 - y)\))\))\))\), 
      y]\)

Plotting x and y versus surface area of the separation module.

First[y[(Subscript[A, m])] /. myODEsoln[Ω /. (Subscript[A, sol])]] /. 
      (Subscript[A, m]) -> area

Plot[%, {area, 0.001, Ω /. (Subscript[A, sol])}, 
      PlotStyle -> RGBColor[1, 0, 0]]

First[x[(Subscript[A, m])] /. myODEsoln[Ω /. (Subscript[A, sol])]] /. 
      (Subscript[A, m]) -> area

Plot[%, {area, 0.001, Ω /. (Subscript[A, sol])}, 
      PlotStyle -> RGBColor[0, 1, 0]]