News:

alphaMELTS 1.9 is available at the download and information site.
alphaMELTS 2 standalone & for MATLAB/Python are available on request
(see the Version 2 tab on the download site for more details).
For news of all MELTS software see the MELTS Facebook page.

Main Menu

Degree of melting

Started by Mauro, November 20, 2007, 11:35:34 AM

Previous topic - Next topic

Mauro

Hello again,

I have a question about what kind of degree of melting adiabat gives as an output.  In the file Liq_tbl.txt it gives F and phi...I assume the first is by mass and the second by volume.  Is this the amount of melt produced at that specific Pressure?  There's also the liquid_0 mass given in the file Phase_props.txt and it is different.  So I am just a little confused about who's who.  Thanks again!

M.



Mauro

I also forgot to ask, how do you calculate the melt productivity (dF/dP) because I am not getting anything close to what has been published so far.  I believe my problem is in the definition of F here.

Paula

#2
Hi Mauro,

Yes, F and Phi in Liq_tbl.txt are by mass and volume respectively (see Table 2 in the documentation for more details).  These are the melt fractions at a given pressure and temperature, i.e. liquid / (liquid + solid), before melt is extracted.  Note also that 'solid + liquid' in this case the current system mass or volume, not the original mass or volume from before melting started.  Phase_props.txt is also written before melt extraction but records the actual masses of melt, and solids, not the proportion of melt.  (The file itself is badly named, for historical reasons, but the title 'Phase Masses' is correct.)  As the mass of (liquid + solid) is reduced each time melt is extracted the liquid masses in Phase_props.txt do not correspond to F, even if you start with exactly 100 grams of material.

If you are using the same files as in yesterday's thread then you have ADIABAT_MINPHI set to 0.01 or something similar.  If the melt fraction, by volume, is less the 0.01 then no melt will be extracted.  If it is more, then an amount of melt will be extracted such that the residual melt fraction, after extraction, is exactly 0.01.  So, for a given calculation step the current amount of melt will be made up of any melt not extracted in previous steps (i.e. at higher pressure for an isentropic calculation like this) plus any new melt generated in that step.

If you want to calculate the melt productivity you want the melt fraction to be the extracted melt, relative to the starting mass.  One easy way to get that is use option 12 to calculate the aggregate melt fraction and composition for each pressure (i.e. F; see Table 4 in the documentation for more details) and then numerically calculate dFdP.  You could also use the ADIABAT_OUTPUT_INTEGRATE_FILE; if the program tends to crash before you get to option 12 this will be your only alternative.

Note that the ADIABAT_OUTPUT_INTEGRATE_FILE (AOIF) and "Calculated integrated output file" are not quite the same thing.  The AOIF is normally only needed if adiabat_1ph crashes before you get a chance to call menu option 12 - it contains the same information that is passed internally to option 12 in a format that can be input to the standalone cubicquad2 instead.  However, if you try running the model with ADIABAT_OUTPUT_INTEGRATE_FILE variable set (if you use option 12 make sure to give a different name so that the AOIF is not overwritten) you will see that the AOIF contains the melt fraction extracted in a given step, relative to the original mass, plus the composition of each extracted melt increment.  So by scaling by 1/ADIABAT_DELTAP you can get dF/dP (for a 1-D column, isentropic mode) directly from the AOIF and without going through the option 12 or cubicquad2 step.

Hope that helps.
Paula

Mauro

Hey Paula,  thanks again for the help.  I've spent sometime playing with the output files and I just realized something:

Option #12 output of melt fraction is identical to (100-mass) of the file Liq_tbl.txt, so option 12 is actually not necessary (the 2 outputs are of course slightly different for a non-perfect fractional melt extraction by a factor of ADIABAT_MINF)

I've checked several times and it appears to work.  This also makes sense since the mass of the residual system = initial mass (in my case 100 gr) - melt extracted (-trapped melt). I'm attaching a figure showing this.

As reference these are my files for the execution of

./run_adiabat.pl -p RunFolder -f adiabat_DRY_env.dat -b batch_DRY_sequence.dat

(1) adiabat_DRY_env.dat
ADIABAT_VERSION       pMELTS

ADIABAT_MODE          isentropic

ADIABAT_DELTAP -100
ADIABAT_MAXP 40000         !!! pMELTS is valid from < 4 GPa
ADIABAT_MINP 0

ADIABAT_CONTINUOUS  true
ADIABAT_MINPHI 0.01

ADIABAT_CELSIUS_OUTPUT true

Initial Temperature: 1380
Initial Pressure: 40000
Log fO2 Path: NONE

Melts Filename: input_DRY_file.melts
Output Filename: Output_DRY.out

(2) batch_DRY_sequence.dat
1
input_DRY_file.melts
4
0
olivine
orthopyroxene
clinopyroxene
spinel
garnet
x
11
Output_DRY.out
12
1
Integrated.out
1
2D_out
1D_out
0

(3) input_DRY_file.melts

Title: DMM of Workmann & Hart 2005
Initial Mass: 100.00
Initial Composition: SiO2 44.71
Initial Composition: TiO2 0.13
Initial Composition: Al2O3 3.98
Initial Composition: Fe2O3 0.191
Initial Composition: FeO 8.008
Initial Composition: MgO 38.73
Initial Composition: CaO 3.17
Initial Composition: Na2O 0.28

Then

./column_pick.pl matlab_list_file > Run_4GPa_1380.txt

with

(1) matlab_list_file:

Delimiter: \t

Header: matlab

File: Integrated.out
Table: Integrated
Columns: P F

File: Liq_tbl.txt
Table: Liquid
Columns: Pressure Temperature F phi mass fO2(absolute) rhol rhos

that I then compare to

./column_pick.pl matlab_integrated > PF.txt

(2) matlab_integrated

Delimiter: \t

Header: matlab

File: Integrated.out
Table: Integrated
Columns: P F

where in Integrated.out I removed the first two lines and renamed the table Integrated.

Anyway, with those 2 files I generated the plot in matlab that I am attaching here.  Thanks again!

Mauro.


Paula


Hi Mauro,

Yes, there's several ways to do it and (100-mass) should work for exactly the reasons you give  :)

Strictly (100-mass) at a given P=P1 is actually the integrated F for the previous P (i.e. P=P2=P1-DELTAP) as Liq_tbl.txt is written before melt extraction.  It's easy enough to adjust once it's in Matlab.  But for a relatively small DELTAP like you have (-0.1kbars) the difference is negligible anyway, as the plots show nicely.  I'm glad the column_pick is working out.

Paula