jadconnolly / Perple_X

GNU General Public License v3.0
25 stars 5 forks source link

Vertex data variables? #4

Closed sc-dyer closed 10 months ago

sc-dyer commented 10 months ago

Hello, I have been writing some Perple_X wrapper functions to more easily run the code from Julia. Recently, I've been trying to figure out which variables the final calculation data from vertex are stored in. I've gotten as far as figuring out how to retrieve the resulting pseudosection but I am confused where the system and mineral properties are stored for each grid point. Is there any reference available for this?

Thank you!

jadconnolly commented 10 months ago

sc-dyer, VERTEX writes the information that WERAMI needs to recover thermodynamic properties to two files, the .plt file lists phase assemblages (via phase indicies) and the .blk file contains nodal indices, a phase assemblage pointer, and the compositions, amounts of the phases, and chemical potentials. The file formats are described at www.perplex.ethz.ch/perplex/faq/PSSECT_plot_file_formats.txt. WERAMI recreates VERTEX's computational environment by reading the original "problem definition file" (e.g., my_project.dat) so it "knows" the phase indexing. However, in response to a question similar to yours, I recently modified the *.plt output so that it includes lists of the phase indexing and corresponding phase names. Those lists are not read by Perple_X programs and are not mentioned in PSSECT_plot_file_formats.txt. Good luck, Jamie

sc-dyer commented 10 months ago

Sorry I think there is a misunderstanding, I am trying to figure out the variables used within the code itself, not the files that the output is stored in.

jadconnolly commented 10 months ago

sc-dyer, sorry. VERTEX doesn't know many of the properties that are output by WERAMI/MEEMUM. The complete set of properties is computed by subroutines getloc and calpr0 in file olib.f; you might look at the code and comments in meemum_subprogram.f to see how those are accessed. other than comments in the code, there is no explicit/external documentation of Perple_X's variables. Beware, Perple_X makes extensive use of common blocks and those are included in various subroutines via "perplex_parameters.h". Jamie

sc-dyer commented 10 months ago

Ok thanks for your help!