Quick-Guide to THERIAK-DOMINO
This blog post gives a brief and most simple walk-through for THERIAK-DOMINO to generate phase isochemical equilibria diagrams (pseudosections) modeled from the major-element composition of metamorphic rocks.
A: Calculate phases / isopleths
- We need to define the chemical composition within a preferred chemical system relevant for the metamorphic reactions. In the
therin.txtfile, you need to add these compositions following the following structure to the end of the file:
500 4000
0 SI(111.8429)AL(31.9729)FE(7.7807)MG(6.1284)MN(0.0846)CA(2.8175)NA(11.4878)K(6.3272)TI(0.6887)H(80)O(?) * HT-9 MnNCKFMASHTHere, the first line gives the expected temperature (in °C) and pressure (kbar) for the modeling, and the second line specifies the concentrations of the elements relevant for our metamorphism.
To generate this line from your geochemical data, you may use my Bulk to therin app
Go to Bulk_to_therin and upload your major element composition (wt. %).
Select your desired chemical system and other optional parameters.
Copy the result under THERIN (mol) and paste it at the end of your
therin.txtfile.
- Next run
start.batfile in the Working subfolder of your Theriak-Domino directory. Then type
dominofollowed by <enter>
data base definition: Select database for the modelling (e.g.
tcds55_p07.txt)definition of X-axis: Define X-axis and its range (
TCfor Temperature (in ° Celsius), and then two numbers indicating the minimum and maximum temperature):
TC 300 800- definition of X-axis: Define Y-axis and its range (
Pfor pressure followed by the minimum maximum pressure in kbar):
P 1000 7000definition of calculation type: Type
.for equilibrium phase diagram (eq) or jump to part B for mineral composition isoplethlabeling of reactions, precision and smoothness: type
1for assemblages
CALCULATION STARTS
B: (Optional): Calculate phases AND isopleths
For eq and isopleths of phase compositions (e.g. garnet), follow steps up to 3. and type:
scriptNew JOB filename:
domjob.batscript name for eq diagram:
script_001_eqFollow steps described in A3 - A7
Almandine file name
script_002_almFollow steps described in B4 - B8. Define the calculation type. The input must follow this structure:
phase key nr min max step.
phasemust be a mineral phase from the database (GT07W2for garnet data in the databasetcds55_p07.txt)nris 1keyis an end-member of that mineral phase (e.g.almfor almandine,grfor grossular,pypyrope,spssspessartine) as defined in the database file for thatphasemin,maxandstepspecify the range and the step-size for which isopleths the compositions should be calculated for (0 1 0.02`means from 0 to 100% in 2% steps.)
GT07W2 alm 1 0 1 0.02To label the reactions, type:
1Repeat steps 3-7 for additional garnet phases.
For example:
GT07W2 alm 1 0.5 0.8 0.01
GT07W2 py 1 0.01 0.05 0.01
GT07W2 gr 1 0.2 0.5 0.01
GT07W2 spss 1 0.05 0.3 0.01- Final database definition
end- To start the scripts type and run
domjob.batC: Export mineral reactions as table and plot
Next, we have to clean up the labels of the reactions lines and then plot a phase diagram. Therefore, we run the two routines GUZZLER and EXPLOT (GUZZLER: cleans the labels, while EXPLOT, creates the plot and saves it in the plot.ps file).
In the command shell type and run the following functions in this sequence:
guzzler- Enter input name. Usually you can just hit ENTER here, unless your specified a script. In that case you may check all the different
*.pltfile in your working directory and repeat all this steps for each file. - Specify the extent of the X-axis (temperature): min and max values (can be the ones specified earlier in domino, followed by a width value, e.g. 15)
- Specify the extent of the Y-axis (pressure) min and max values (can be the ones specified earlier in domino, followed by a height value, e.g. 15)
- Specify the size of the labels: 0.2
- Specify if you want to label the plot: 3 (means YES)
- Enter input name. Usually you can just hit ENTER here, unless your specified a script. In that case you may check all the different
explot- Enter output name: Same as above, but now for all
*.clnfiles in your working directory.
- Enter output name: Same as above, but now for all
Now make a copy of the generated *.ps or *.svg file and repeat the same procedure, but this time we create a plot without labels (so you have a look-up file and a clean plot for further editing).
Type and execute
guzzler: Specify if you want to label the plot: 0 (means No)Type and execute
explot
Finally generated the phase diagrams as a postscript file (*.ps) and *.svg, which you can further edit with vector graphics software, such as the free inkscape program.
D: Quickly search the reaction table for mineral phases
If you open the postscript file, you will see a complicated equilibrium phase diagram with some reactions numbered instead of labeled (because there is not enough room for labels.) To see a list of reactions and numbers, open the file table (created by GUZZLER) in the Working folder.
To quickly find the reaction belonging to a number, you may use my GUZZLER Filter app:
Open the GUZZLER Filter tab
Upload your reaction table (table)
Type in the mineral of interest to see in which reaction lines the mineral is involved.
Some tipps
Run several models overnight
In case you wan to run a bunch of samples over the weekend, you can create scripts and run them through a batch file. You can create those scripts through domino via script (as described in B). But it its easier and faster to do that yourself:
Each sample and their modelling parameters must be in a single script file (txt file), and they all must this structure:
script.script_001.txt
script_001.plt
tcds55_m11.txt
1.0000 300 0.010000 0.1000000E-08 0.1000000E-08 0.1000000E+01 0.1000000E-03 25 25 500
0 SI(126.3225)AL(25.0095)FE(1.3919)MG(2.1338)CA(2.1756)NA(7.8736)K(8.7477)TI(0.0501)H(80)O(?) * 022 NCKFMASHT
TC 150 800
P 1000 8000
.
1
0.0000000E+00 0.0000000E+00
_script_001_pix\
This is stored in a file called script_001.txt. The first line is the name of the script file, the second gives the name of the final plot file, third line specifies the database, the next two lines give the input parameters, the next 5 lines are empty, the next lines gives the temperature and pressure ranges, the . indicates that a phase equilibrium diagram should be created…
You can then copy this file, create a new script script_002.txt, and modify it to input the new parameters. You can create multiple files like this.
Next you create a file called domjob.bat. This is a batch file that tells THERIAK-DOMINO the order in which the subroutines should be executed. The batch file has the following structure:
:: This is a comment. Run script 1
domino script_001.txt
guzzler script_001.plt script_001.cln script_001.rxn
explot script_001.cln script_001.ps
:: Script 2
domino script_002.txt
guzzler script_002.plt script_002.cln script_002.rxn
explot script_002.cln script_002.ps
:: Script 3
domino script_003.txt
guzzler script_003.plt script_003.cln script_003.rxn
explot script_003.cln script_003.ps
:: Script 4
domino script_004.txt
guzzler script_004.plt script_004.cln script_004.rxn
explot script_004.cln script_004.ps
The names of the script files doesn’t matter as long as they are correctly spelled in both the script files and the
domjobbatch file.
You can include comment lines using
::followed by the comment (these lines are ignored and just serve as an additional information)
Finally, you open a terminal using start.bat in the Working folder and call domjob
(Or in UNIX: source .bashrc followed by source domjob.bat)
Additional ressources
- A more detailed quick-guide: https://cdn.serc.carleton.edu/files/research_education/equilibria/theriak-domino_getting_started.v3.pdf
- Official manual: https://earth.geology.yale.edu/~ajs/SupplementaryData/2016/theriakd/Documentation/TheriakDominoGuide.pdf
- Create pixel-maps: https://muse.union.edu/hollochk/kurt-hollocher/some-theriak-domino-tips-and-tools/