I see the key to calculating meaningful pseudosections in Perplex lies in the choice of solution models I have tried to understand the solution files with limited success. The part I have the most difficulty with is ³read 7a². If you could explain it with an example for me I would be most grateful. i could write a book on this question and in fact i should at least update the documentation and put it on-line because it's a frequent question. basically one can always write for the free energy of a solution Gsol = sum( y[i] * G[i], i = 1..s) where y[i] is the fraction of the ith endmember, however for reciprocal solutions like (A,B)(C,D) (where A and B are things that mix independently of C and D on site 1 and C and D mix on site 2, so the solution as four possible endmembers AC, BC, AD, BD) the free energy can be expressed as Gsol = sum(sum(X[1j]*X[2j]*G[ij]), i = 1..s1) j = 1..s2) which i refer to as a bragg-williams summation (eq 7 in "vdoc.pdf"), here the X[ij] is the fraction of species j on site i and s1 is the number of things that mix on site 1 and s2 is the number of things that mix on site 2. Thus if we specify that AB is the endmember with the first thing on the first site and the first thing on the second site, X[11] is the fraction of A on site 1 and X[21] is the fraction of C on the second site. expanding the bragg williams summation it is possible to show that the endmember fraction of AB, say y[1] is the product y[1] = X[11] * X[21] or more generally the fraction of an endmember with i on the first site j on the second site and so forth is y[h] = X[1i] * X[2j] * X[3k] .... so now coming to read 7a, first in the case that there is only one chemical mixing site [e.g., Gt(HP), AnPl etc in solut.dat)] the bragg-williams summation simplifies to Gsol = sum(X[1j]*G[ij]), i = 1..s1) from which it should be clear that y[j] = X[1j], in the version of perplex you have requires that you keep the first index on the X even though it is always 1. then supposing you have an excess energy model (as for AnPl, Mu, etc) Gexcess = W[1]*X[11]*X[11]*X[12] + W[2]**X[11]*X[12] *X[12] the expression has 2 terms, each of which has three X's (and is hence third order) thus read 7 is 2 3 and read 7a would expect the data 1 1 1 1 1 2 value of W[1] 1 1 1 2 1 2 value of W[2] ok, now for our (A,B)(C,D) solution (aChl, Bio, T, etc) people adopt different methods of describing excess function for example one might describe the excess function as the sum of intra-site interactions as in Gexcess = W[A-B]*X[A]*X[B] + W[C-D]*X[C]*X[D] + ... then if AC is the 1st endmember and BC is the second endmember (therefore defining the A-B site as site 1 and A as the 1st species on site C as the first species on site 2) read 7 is 2 2 and read 7a expects 1 1 1 2 i.e., X[11]*X[12] = X[A]*X[B] value of W[A-B] 2 1 2 2 i.e., X[21]*X[22] = X[C]*X[C] value of W[A-B] alternatively, one might describe the excess energy in terms of endmembers (as holland & powell usually do) in which case we might have Gexcess = W[AC-BC]*y[AC]*y[BC] + W[AC-BD]*y[AC]*y[BD] + ... for perplex you would then need to convert the endmember fractions to bragg-williams fractions using the relation i mentioned above, e.g., y[AC] = X[A]*X[C] = X[11]*X[21] so the complete converted expression is then Gexcess = W[AC-BC]*X[11]*X[21]*X[12]*X[21] + W[AC-BD]*X[11]*X[21]*X[21]*X[22] + ... read 7 is then 2 4 and read 7a expects: 1 1 2 1 1 2 2 1 value of W[AC-BC] 1 1 2 1 2 1 2 2 value of W[AC-BD] i attach a postscript file "chlorite.ps" that illustrates some of these things graphically. it happens that i have a new version of perplex in which you can use either endmember fractions or bragg-williams fractions according to your preference. the revised version is not "on-line" but i can send you a copy if you'd like. I really want to understand the solution models properly so that I can compare them with those we use for Thermocalc. Could you give a few pointers on selecting appropriate solution models? I imagine that it is appropriate to modify/create solution files that suite the specific needs of the problem at hand. i have checked with roger and so far as we could tell there are no differences between thermocalc and perplex results (there shouldn't be if they are programmed correctly). this means that any differences you get are due to differences in the solution models, since thermocalc changes fairly frequently the surest way to get the same results from both programs is to convert the thermocalc models by hand. in general i think the models that holland and powell provide are about as good as can be justified by the data so the simplest tip is to take their models when available. in some cases i have found that there models are not so good, but there is no simple criteria, you have to compare the results to some experimental or field constraint and then make a subjective judgement as to what model you think is best. I have attached a pseudosection that I calculated in the MnKFMASH system. I have used Perplex and Thermocalc (the perplex section has been relabelled so that K-Phen = Ms, MnCtd=Ctd, MnSt = St, MnChl = Chl, and Gt(HP) = Gt). I have also attached the input file created by Build and the Thermocalc datafile used to do the calculations. Both calculations were done with the 2001 Holland and Powell database. Would you be able to comment on the differences between the sections? For example ­ 1. The Ms, Ctd, Chl, Gt divariant field has pointed corners at high pressures and has a disjointed geometry at the Ms Ctd [Gt Chl absent] pseudo-invariant point. this is a typical perplex problem, it shows that at least one of the solutions involved is not resolved accurately enough, i.e., you must increase the number of pseudocompounds used to describe the solution in question. as a general rule all solutions should be resolved with comparable accuracy. 2. The larger (in Perplex) stability of the Ms St Gt Ky divariant field. 3. The generally higher pressure of reactions in the perplex generated section. these differences are undoubtedly due to differences in the models parameters for Chl, Bio, St and Gt, and a different set of endmembers for the Ms (in perplex i suspect you have just mu, in thermocalc you have K-Phen). I have a list of other questions for you regarding the operation of the software. 1. Section 4 of the Perplex Program Documentation says that no mo more than three molecular species can mix on a given site, yet the solution files have examples with four (e.g. Gt(HP)). What is the current limit? to put more than 4 species on a site you (or i) would have to change a parameter and recompile vertex, this only takes a couple of minutes so just tell me if you need more. the real limitation is in the total number of pseudocompounds that you can consider, a limit imposed by 64-bit addressing. i'm not sure what this limit is, but i have done calculations with 10^6 compounds and the program is still pretty fast (though i'd recomment gridded minimization rather than the default mode that you are using). 2. If you specify a solution, should you exclude the end member phases (e.g. ab when using AbPl)? What is the effect of doing this? ah... ab is not an endmember of AbPl (AbPl is a solution for the high structural state, i.e., between abh and an). 3. While attempting to generate an NCMnKFMASH pseudosection I was unable to select some of the solution models such as KN-Phen. Why? the dependent endmembers nfcel and ncel are missing, you can create these with frendly, or if i remember i'll send you them tomorrow. 4. Some solution models produces an error message in Vertex because of missing end members in the database (e.g. mame from MnChl in solut.dat, hp01ver.dat database). Do these need to be created using FRENDLY, and if so, how? yes, for a dependent endmember you can write a mass balance relationship of the form, e.g., for mame (i won't balance them since i assume you can work out the stoichiometries): mame + x clin = ames + x mnclin or mame = ames + x mnclin - x clin then you can create mame by "calculating properties for a reaction" corresponding to the RIGHT HAND SIDE of this relation in FRENDLY, then after you calculate at some arbitrary condition, FRENDLY asks you if you want to modify/output the data, say yes and then that you want to output reaction properties, give the reaction the name "mame" and FRENDLY will then the data to the file). if you do make the endmembers please send me them, otherwise i'll send you the full file when i get around to adding them.