News:

alphaMELTS 2.3 standalone & for MATLAB/Python is now open source and available on GitHub (https://github.com/magmasource/alphaMELTS).
alphaMELTS 1.9 is available at the legacy download and information site.
For news of all MELTS software see the MELTS Facebook page.

Main Menu
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Ri Cao

#1
Dear Paula,
Thank you very much for your prompt response.

Yes, I have emailed you my modified RC12frac.m.

I incorporated the Find Liquidus function from tutorial.m into RC12frac.m at the beginning of the script, but the problem still exists. Please have a look through it. Thank you very much.

Best regards,
Ri
#2
Dear Paula,
Thank you very much for your prompt response and clarification.

Yes, I run the Matlab-MELTS from the terminal.

I have documented the error message from terminal there:
%%%%%%%
Assertion failed: (mxCreateString called with non-UTF-8 input: bulk                oxygen              olivine            orthopyroxene      clinopyroxene      clinopyroxene      biotite            plagioclase        rutile              spinel              water              ?
), function mxArray *(anonymous namespace)::MxCreateStringNCharsT_safe<char>::operator()(const char *, const SourceType *, size_t) const [SourceType = char], file array2.cpp, line 500.
Caught SIGABRT: usually caused by an abort() or assert()
MATLAB_maci64(50312,0x11249be00) malloc: Incorrect checksum for freed object 0x7faf38edf838: probably modified after being freed.
Corrupt value: 0x4500010001000100
MATLAB_maci64(50312,0x11249be00) malloc: *** set a breakpoint in malloc_error_break to debug
Caught SIGABRT: usually caused by an abort() or assert()
Caught SIGILL: illegal instruction
%%%%
Perhaps this is caused by so many minerals precipitating in the system that closes Matlab automatically?


Another scenario where the systems stop automatically and leave an error message. there is:
%%%%%
MATLAB_maci64(51628,0x700003183000) malloc: Incorrect checksum for freed object 0x7f8ba7b2f400: probably modified after being freed.
Corrupt value: 0x0
MATLAB_maci64(51628,0x700003183000) malloc: *** set a breakpoint in malloc_error_break to debug
%%%%%
I have a thought about this, and it seems that this is related to the inhibition of leucite precipitation. For instance, if I remove "Suppress" "leucite" in the settings, then that works.

One exercise I am currently trying to do is generate 1000 random parental magma datasets of Venus composition within the errorbar (1 sigma). I was wondering if there is a way we could ask Matlab to jump or ignore automatically during the run. For instance, perhaps there is a range for each oxide (i.e., SiO2) that we can set before each run? Any thoughts on this will be really helpful! Thank you very much.

Best regards,
Ri Cao
#3
Great, thanks and that works now. Just a quick question there:

Sometimes, when I tried to loop around different bulk compositions or pressures, MATLAB stopped working and closed automatically. Is there something we can do there to optimize/ resolve this issue? Thank you very much.

Best regards,
Ri
#4
Dear Paula,
Thank you very much for your prompt response and clarification.

Yes, I use a Mac computer so the code below works!

For looping around different pressures or FMQ for the same bulk compositions using Matlab-MELTS, perhaps I can just add a ''for'' loop on top of the original RC12frac.m script so that can work? Thank you very much and I look forward to your response.

Best regards,
Ri Cao
#5
Dear Paula,
Thank you very much for your response and clarification. Sorry for the slow response since I was involved in fieldwork and many teaching assignments this term.

The above questions have all been resolved. I can now successfully use MATLAB-MELTS to reproduce the results of LLD predicted from Rhyolite-MELTS

I have a follow-up question there regarding setting up the automatic running for looping different temperatures, pressures, or bulk compositions (keeping T, P the same for each run).

For instance, I was wondering shall I write a ''for loop'' based on the RC12frac.m file so that can loop around different pressures? What kind of strings or code can I add on top of the original Matlab script that can help me save the output of each run (i.e., at each pressure) separately? Any thoughts on this would be really helpful! Thank you very much.

Best regards,
Ri Cao  [/b]
#6
Dear Paula and Paul,
This is Ri. It is really nice to meet you in person during the MELTS workshop in Rotorua.

Sorry for my interruption again but I am currently trying to setup the MELTS MATLAB version for Rhyolite-MELTS 1.2.0 to try to run a loop over a wide range of pressures, temperatures and water content.

I started from RC12frac.m script, which we discussed during the workshop. I have some naive questions there:

1: I was wondering are there a way to compute the redox state automatically at a given composition, and a specific redox buffering as we did on Rhyolite-MELTS GUI or AlphaMELTS?

2: I am currently obtaining the major elements LLD data through 'ptpath.getListProperty('dispComposition', 'liquid1', 'FeO')'. I was wondering if that's possible to get the melts.out or phase.tbl files, as generated by RMELTS GUI after each run in Matlab? so that based on the discussion with Paula and Bradley during the poster session, if I loop the script at different pressures (constant T exercise), presumably I can find a path that saves all the output files (i.e., melts-loiq.csv) separately? Thank you very much and I look forward to your response.

Sincerely,
Ri Cao

3: Perhaps
#7
Dear Paula,
This is Ri. Sorry for my interruption again and hope you are doing well.

I have a question there regarding the isentropic calculation for fractional crystallization on Rhyolite-MELTS changes both temperature and pressure simultaneously.

Basically, I setup the initial composition, oxygen fugacity. I tried both decrease temperature and pressure (or increase temperature or pressure) during the calculation, but the calculation cannot stops (Rhyolite-MELTS just keep iteration....).

I tried to setup the temperature step size or pressure step size the same the exercise I did previously for isobaric fractional crystallisation. I was wondering did I miss some fundamental understanding of the isentropic calculation? or are there any particular requirements for temperature and pressure setup? Any thoughts on this will be very helpful! Thank you very much and I look forward to your response.

Sincerely,
Ri Cao   
#8
Dear Paula,
Great, thanks for the clarification.

I also got some replies from the conference organizer as well. Sorry for missing the Goldsmith workshop since I was ill at that time period.

Hopefully and definitely, I will be able to attend the next MELTS conference in Newzeland. Please keep me in the loop if there is anything new that comes through. Thank you very much.

Best regards,
Ri Cao
#9
Dear Paula,
Sorry for my interruption again and hope you are doing well.

I just realized that there is another MELTS workshop for the IAVCEI conference in New Zealand, early next year. I was wondering how shall I sign up for this workshop? Are there any links for registration and how much will that cost? Thank you very much and I look forward to your response.

Sincerely,
Ri Cao
#10
Dear Paula,
Thank you very much for your response and clarification. Sorry for my slow response and everything is running slowly here due to COVID.

Yes, I tried to replace ''PHMELTS'' with ''MELTS'' and everything works now. I also got a reply from the author of that paper and yes, he suggested the same thing ( he used a DOS-based ‘normal’ MELTS (Smith and Asimow, 2005, G3, Q02004, doi:10.1029/2004GC000816). Thank you very much.

Sincerely,
Ri Cao
#11
Dear Paula,
Thank you very much for your response.

Since I am a completely fresher user in alphamelts, pHMELTS, I just got the alphamelts_default_env.txt file there:

%%%%%
!Default values of environment variables (version 1.6)
!Variables preceeded by '!' are 'unset' (i.e. 'false')

ALPHAMELTS_VERSION pHMELTS
!ALPHAMELTS_OLD_GARNET true
ALPHAMELTS_OLD_SPINEL true
!ALPHAMELTS_OLD_BIOTITE true
!ALPHAMELTS_2_AMPH true
!ALPHAMELTS_NO_CHLORITE true
ALPHAMELTS_MODE isobaric
!ALPHAMELTS_PTPATH_FILE filename
ALPHAMELTS_DELTAP 0
ALPHAMELTS_DELTAT -5
ALPHAMELTS_MAXP +10000
ALPHAMELTS_MINP +0
ALPHAMELTS_MAXT +1400
ALPHAMELTS_MINT +600
!ALPHAMELTS_ALTERNATIVE_FO2 true
!ALPHAMELTS_LIQUID_FO2 true
!ALPHAMELTS_IMPOSE_FO2 true
!ALPHAMELTS_FO2_PRESSURE_TERM true
!ALPHAMELTS_CONTINUOUS_MELTING true
ALPHAMELTS_MINF 0.005
!ALPHAMELTS_MINPHI 0.002
!ALPHAMELTS_CONTINUOUS_RATIO float
!ALPHAMELTS_CONTINUOUS_VOLUME true
!ALPHAMELTS_FRACTIONATE_SOLIDS true
ALPHAMELTS_MASSIN  0.001
ALPHAMELTS_FRACTIONATE_WATER true
!ALPHAMELTS_MINW float
!ALPHAMELTS_FRACTIONATE_TARGET true
!ALPHAMELTS_MGO_TARGET 8.0
!ALPHAMELTS_MGNUMBER_TARGET float
!ALPHAMELTS_ASSIMILATE true
!ALPHAMELTS_FLUX_MELTING true
!ALPHAMELTS_DRY_ITER_PATIENCE 100
!ALPHAMELTS_DO_TRACE true
!ALPHAMELTS_DO_TRACE_H2O true
!ALPHAMELTS_HK_OL_TRACE_H2O true
!ALPHAMELTS_HK_PXGT_TRACE_H2O true
!ALPHAMELTS_2X_OPX_TRACE_H2O true
!ALPHAMELTS_TRACE_DEFAULT_DPTX true
!ALPHAMELTS_TRACE_NORMALIZATION integer
!ALPHAMELTS_TRACE_INPUT_FILE filename
!ALPHAMELTS_TRACE_USELIQFEMG true
!ALPHAMELTS_MULTIPLE_LIQUIDS true
!ALPHAMELTS_FRACTIONATE_SECOND_LIQUID true
!ALPHAMELTS_FOCUS true
!ALPHAMELTS_FOCUS_FACTOR float
!ALPHAMELTS_ADIABAT_FILE true
!ALPHAMELTS_CELSIUS_OUTPUT true
!ALPHAMELTS_SAVE_ALL true
!ALPHAMELTS_SKIP_FAILURE true
!ALPHAMELTS_FAILED_ITER_PATIENCE 10
!ALPHAMELTS_INTEGRATE_FILE filename
!ALPHAMELTS_LATENT_HEAT true
!ALPHAMELTS_QUICK_OUTPUT true

! Use Celsius instead of Kelvin
ALPHAMELTS_CELSIUS_OUTPUT true
%%%%

Regarding potassium at higher pressures, does that mean I should change the potassium from ''Initial Composition: K2O 0.2000'' to something like '' Initial Trace: K ''?

I am trying to reproduce the data from this paper (https://agupubs.onlinelibrary.wiley.com/doi/full/10.1002/jgre.20094), where all the calculation for batch melting and fractional crystallisation for Venera 13, 14 are based on pHMELTS. For fractional crystallisation, my current setting in pHEMTLS could almost reproduce their data well. However, I am a little bit confused there regarding batch melting calculation since I cannot reproduce the chemical composition of liquid appropriately. Any thoughts on this will be very helpful! Thank you very much.

Sincerely,
Ri Cao
#12
Dear Paula,
Thank you very much for your prompt response and useful clarification.

One thing I was wondering is that since I just found a large difference for the solidus temperature and SiO2 content that estimated by Rhyolite-MELTS 1.0.2 version and pHMELTS for the following two compositions at higher pressures (i.e., 1 GPa):
Composition 1: SiO2: 46.64wt.%  TiO2 1.65 wt.%  Al2O3: 16.34 wt.%  FeO: 9.62 wt.%  MnO: 0.21 wt.%  MgO: 11.79 wt.%  CaO: 7.34 wt.% Na2O: 2.07 wt.% K2O: 4.14 wt.% H2O:0.2 wt.%

Composition 2 (close to MORB): SiO2: 49.69 wt.% TiO2: 1.28 wt.% Al2O3: 18.26 wt.% MnO: 0.16 wt.%  MgO: 8.26 wt.%  CaO: 10.51 wt.% Na2O: 2.45 wt.% K2O: 0.2 wt.% H2O: 0.2 wt.%.


I was wondering do you have some recommendations on which versions of MELTS should be used for compositions 1, 2, separately? (i.e., Composition 1: pHMELTS, composition 2: rhyolite-MELTS)? Any thoughts on this will be very helpful! Thank you very much and I look forward to your response.

Sincerely,
Ri Cao
#13
Dear Paula,
This is Ri. Sorry for my interruption again and hope you are doing well. Thanks for your advice regarding MELTS running. I have a naive question there regarding the MELTS download:

Recently, I just have comparisons between Rhyolite-MELTS and pHMELTS regarding SiO2 content and solidus temperature of liquids. I was wondering are there still any official websites/places for the download of pHMELTS software? 

After reading the documentation, just to double-check does that mean I could run this pHMELTS based on alphamelts as well? Thank you very much and I look forward to your response.

Sincerely,
Ri Cao
#14
Dear Paula,
Thank you very much for this clarification and will keep an eye on this registration.

Best regards,
Ri Cao
#15
Dear Paula,
Sorry for my interruption again and hope you are doing well.

Just saw the MELTS workshop for Goldsmith this year (https://magmasource.caltech.edu/workshops/goldschmidt/). Just want to double-check with you whether this workshop will be a hybrid version or just an in-person workshop? Does that mean I should double-register for both Goldsmith and this workshop as well? Thank you very much and I look forward to your response.

Sincerely,
Ri Cao