(pseudo-)Ternary liquidus/solidus diagrams¶
Perple_X can contour the temperature (or any other thermodynamic potential variable) of the liquidus or solidus surface above a ternary or pseudo-ternary composition space. The relevant code was introduced by George Helffrich (ELSI) in 6.8.5 and revised in 7.1.0. This page provides a brief description of its usage and links to relevant examples (Fig. 1 and Fig. 2).
The term solidus surface is melt-specific jargon. The more general term is saturation surface. And, more broadly, the code is capable of contouring the ternary saturation surface for any phase as a function of any thermodynamic potential variable, e.g., mapping the temperature at which a fluid phase becomes stable as a function of a system’s bulk composition.
Fig. 1 Liquidus surface for the silica-saturated CaO-MgO-Al2O3-SiO2 system calculated by vertex and plotted by pssect (input files). This is a true ternary liquidus diagram because the silica-saturation constraint removes SiO2 from the thermodynamic composition space. The overlapping black circles at non-stoichiometric compositions indicate the liquidus compositions of clinopyroxene (Cpx) and orthopyroxene (Opx).¶
Fig. 2 Liquidus surface for the an-fo-q pseudo-ternary system calculated by vertex and plotted by pssect (input files). Example courtesy of Debaditya Bandopadhyay (Academia Sinica). The orange fields indicate conditions where the liquidus surface lies below the minimum temperature for the search range specified in an-fo-q_liquidus.dat.¶
Workflow¶
Run
buildto define the computational problem (e.g., filemy_project.dat). The prompts are largely self-explanatory. Follow this link for a specific example of thebuilddialogue or consult a more general tutorial.Modify
perplex_option.dat. Perple_X uses only the lowest level of its multi-level computational grid to contour a liquidus surface, whereas cotectics are located at the resolution of the full grid. Because the default resolution of the lowest grid level is relatively coarse (40x40), users are advised to increase the auto-refine-stage values ofx_nodesandy_nodes, i.e., the second value for each option. If users wish to maintain the default resolution of the full grid (317x317), the auto-refine-stage value ofgrid_levelsshould be reduced accordingly. The following settings were used to generate the examples shown in Fig. 1 and Fig. 2:grid_levels 1 3 | [1 4] ... ... liquidus_resolution 0.1 | [1.0] ... ... x_nodes 20 80 | [20 40] ... y_nodes 20 80 | [20 40] ...
liquidus_resolutionspecifies the resolution of the dependent potential variable. Reducingliquidus_resolutionsharpens cotectics and reduces the number of cotectic labels.Run
vertexto calculate the liquidus/solidus surface.Run
pssectto plot the results. The contour interval for temperature or pressure as the dependent potential variable is specified, respectively, by thecontour_t_interval(default50K) orcontour_p_interval(default1000bar) options inperplex_plot_option.dat. The contour variable for any other potential variable choice is specified by thecontour_z_interval(default1) option.pssectuses the following special notations:red fields indicate the composition is stoichiometrically infeasible.
orange fields indicate the surface does not occur within the user-specified range for the dependent potential (in
my_project.dat).filled black circles indicate the composition of the first or last solid phase to coexist with liquid below or above the surface of interest. When these symbols obscure the surface, solid-solution compositions can be suppressed by setting
solution_compositionstoFinperplex_plot_option.dat.
Run
weramito extract information about the state of the system on the liquidus/solidus surface. For liquidus calculations,weramireports the last computed state before the system becomes fully liquid, and for solidus calculations,weramireports the last computed state before the system becomes fully solid.Links to the input files for the examples shown above are provided in the figure captions.