Skip to content

Conversation

@flbrandao
Copy link
Collaborator

@flbrandao flbrandao commented Oct 11, 2025

The enhancement factor based on the penetration theory for a pseudo 1st order reaction us added in this PR. The equation is given in:

[1] Putta, K. R., Tobiesen, F. A., Svendsen, H. F., & Knuutila, H. K. (2017).
Applicability of enhancement factor models for CO2 absorption into aqueous MEA solutions.
Applied Energy, 206, 765-783.

[2] Danckwerts PV. Gas-liquid reactions. McGraw-Hill; 1970.

Enhancement factor Capture efficiency (%)
$E=Ha$ 13.7632
Penetration_theory 14.5219

@flbrandao flbrandao self-assigned this Oct 11, 2025
@flbrandao flbrandao requested a review from kincaidkc October 11, 2025 16:27
@flbrandao flbrandao force-pushed the ffn/penetration_pseudofirst branch from 106eb10 to ff6f557 Compare October 16, 2025 16:50
@flbrandao flbrandao force-pushed the ffn/penetration_pseudofirst branch from f727f2c to 937b485 Compare October 30, 2025 18:09
volScalarField arg = Foam::min(Ha, 15.0);
//

E_ = (1.0 + (pi/(8.0 * Foam::pow(Ha,2)))) * Foam::erf(Ha * Foam::pow(4.0/pi,0.5));
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Make sure to use spaces before and after operators like /, as well as after commas, to maintain readability. Also please use 2.0 instead of 2 to ensure everything is cast as a double, not an int.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done


D1_(dimArea/dimTime/dimTemperature, massTransferModelCoeffs_.lookup<scalar>("Dl1")),
D2_(dimArea/dimTime, massTransferModelCoeffs_.lookup<scalar>("Dl2")),
tStart_(massTransferModelCoeffs_.lookupOrDefault<scalar>("tStart", 0.0))
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we should probably move the start time logic into the enhancementModel base class at some point, since we are duplicating the code in every new model

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree, but let's merge all models first. Then I create another request to modify that

Comment on lines +86 to +88
// this is to avoid that Foam::exp blows up due to very high values
volScalarField arg = Foam::min(Ha, 15.0);
//
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

these lines are indented with a tab instead of spaces and it is messing up the format. please use 8 spaces

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Description
Enhancement factor according to the penetration model
where E = Ha[{1 + pi/8*Ha^2}*erf{sqrt(4*Ha^2/pi)} + exp(4*Ha^2/pi)/2*Ha].
Model more appropriate for 3 < Ha < E_inf;
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i would add a note here that the actual value of Ha is capped at 15 so the exponential doesn't blow up

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants