To account for pH based elution, how the pH data is converted to mol/L? (is it simply by taking 1000*log(-H+) ions)?
It is required for initialization of following initial condition.
Initial conditions (equilibrated empty column)
mGrm.initialBulk = [50.0 0.0 0.0]; % [mol / m^3], also used for the particle mobile phase
mGrm.initialSolid = [1.2e3 0.0 0.0]; % [mol / m^3]
CADET can be used for any consistent system of units. If you want to use SI units, then you have to raise 10 to the power of the negative pH value to get the molar concentration of protons and then multiply by 1000 to convert to SI units. I assume that is also what you meant. Just to be sure, this is how it would look in Python:
c_proton_molar = 10**(-pH)
c_proton_si = 1000 * proton_conc_molar
And to reverse (if you want to determine the pH profile after the simulation):
c_proton_molar = c_proton_si/1000
pH = -numpy.log10(c_proton_molar)
As I mentioned earlier, if it makes your life easier, you could also use another system of units, e.g. one that assumes molar concentrations in the first place. In the end it’s just a linear transformation and it makes no difference to the solver.
Thank you so much Johannes for the clarification. I will incorporate the same.