(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.

CMAS liquidus

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).

an-fo-q liquidus

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

  1. Run build to define the computational problem (e.g., file my_project.dat). The prompts are largely self-explanatory. Follow this link for a specific example of the build dialogue or consult a more general tutorial.

  2. 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 of x_nodes and y_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 of grid_levels should 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_resolution specifies the resolution of the dependent potential variable. Reducing liquidus_resolution sharpens cotectics and reduces the number of cotectic labels.

  3. Run vertex to calculate the liquidus/solidus surface.

  4. Run pssect to plot the results. The contour interval for temperature or pressure as the dependent potential variable is specified, respectively, by the contour_t_interval (default 50 K) or contour_p_interval (default 1000 bar) options in perplex_plot_option.dat. The contour variable for any other potential variable choice is specified by the contour_z_interval (default 1) option. pssect uses 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_compositions to F in perplex_plot_option.dat.

  5. Run werami to extract information about the state of the system on the liquidus/solidus surface. For liquidus calculations, werami reports the last computed state before the system becomes fully liquid, and for solidus calculations, werami reports the last computed state before the system becomes fully solid.

  6. Links to the input files for the examples shown above are provided in the figure captions.