Using IPhreeQC Com Module with Matlab

Hi All I am trying to use the com module in matlab and i can't find a refrence for the syntax for the string (which you can send to the RunString). Can anyone give me an example (a simple one)? thanks a lot
paz

Answers (2)

Hi Paz,
That was a long time ago, but there is a simple example in the PHREEQC users' forum:
iphreeqc = actxserver('IPhreeqcCOM.Object'); iphreeqc.LoadDatabase(['whatever path' '\USGS\IPhreeqcCOM 3.3.7-11094\database\phreeqc.dat']);
iphreeqc.ClearAccumulatedLines;
iphreeqc.AccumulateLine ('USER_PUNCH') iphreeqc.AccumulateLine ('-head Spec_Cond'); iphreeqc.AccumulateLine ('PUNCH SC');
iphreeqc.AccumulateLine ('SELECTED_OUTPUT'); iphreeqc.AccumulateLine ('-activities Ca+2 CO3-2'); iphreeqc.AccumulateLine ('-ionic_strength'); iphreeqc.AccumulateLine ('-pH');
iphreeqc.AccumulateLine ('SOLUTION 1 '); iphreeqc.AccumulateLine ('-pH 7 charge'); iphreeqc.AccumulateLine ('-temp 25'); iphreeqc.AccumulateLine ('-units mol/L'); iphreeqc.AccumulateLine (['C(4) ' num2str(c(1))]); iphreeqc.AccumulateLine (['Ca ' num2str(c(2))]); iphreeqc.AccumulateLine (['Cl ' num2str(c(3))]); iphreeqc.AccumulateLine (['N(-3) ' num2str(c(4))]);
try iphreeqc.RunAccumulated; catch break; end
out_PHREEQC = iphreeqc.GetSelectedOutputArray;
The original thread is at the address below.
Best regards,
Leo.
Here is work that we did that demonstrate using IPhreeqcCOM with Matlab.

2 Comments

Thank you, but as interesting as your paper is - it does not give an example of the syntax....
No problem, what kind of syntax are you referring to? The general descriptions about IPhreeqc methods can be found in the paper by Charlton and Parkhurst (2011), ADWR or in the PHREEQC site: https://wwwbrr.cr.usgs.gov/projects/GWC_coupled/iphreeqc/classIPhreeqc.html

Sign in to comment.

Asked:

on 19 Mar 2015

Commented:

on 28 Mar 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!