Simplex levelling

The purpose is to use G0 of pure-phases and endmembers of solid solutions to find out the potential stable phases. The final set of SS at equilibrium are contained in the estimated leveling assemblage.

Levelling occurs in two stages:

  • Stage 1: levelling using pure species only and a simplex approach

  • Stage 2: levelling using progressive solution phase minimization and simplex approach

void SS_ig_objective_init_function(obj_type *SS_objective, global_variable gv)
[source]

associate the array of pointer with the right solution phase

void update_dG(simplex_data *splx_data)
[source]

function to calculate delta G (position of potential phases with current G hyperplane*)

void update_local_gamma(double *A1, double *g0_A, double *gam, int n)
[source]

update Gamma using LAPACKE dgesv

void update_global_gamma(bulk_info z_b, simplex_data *splx_data)
[source]

update global Gamma

void update_global_gamma_LU(bulk_info z_b, simplex_data *splx_data)
[source]

update global Gamma

void initialize_initial_guess(bulk_info z_b, simplex_data *splx_data, global_variable gv, PP_ref *PP_ref_db, SS_ref *SS_ref_db)
[source]

function to swp pure phases

void swap_pure_phases(bulk_info z_b, simplex_data *splx_data, global_variable gv, PP_ref *PP_ref_db, SS_ref *SS_ref_db)
[source]

function to swp pure phases

void swap_pure_endmembers(bulk_info z_b, simplex_data *splx_data, global_variable gv, PP_ref *PP_ref_db, SS_ref *SS_ref_db)
[source]

function to swp pure endmembers

void swap_pseudocompounds(bulk_info z_b, simplex_data *splx_data, global_variable gv, PP_ref *PP_ref_db, SS_ref *SS_ref_db)
[source]

function to swp solution phase pseudocompounds

void swap_PGE_pseudocompounds(bulk_info z_b, simplex_data *splx_data, global_variable gv, PP_ref *PP_ref_db, SS_ref *SS_ref_db)
[source]

function to swp solution phase pseudocompounds during PGE iterations

void fill_simplex_arrays_A(bulk_info z_b, simplex_data *splx_data, global_variable gv, PP_ref *PP_ref_db, SS_ref *SS_ref_db)
[source]

function to run simplex linear programming

void print_levelling(bulk_info z_b, global_variable gv, PP_ref *PP_ref_db, SS_ref *SS_ref_db)
[source]

print levelling informations

void generate_pseudocompounds(int ss, bulk_info z_b, global_variable gv, simplex_data *splx_data, SS_ref *SS_ref_db, PC_ref *SS_pc_xeos, obj_type *SS_objective)
[source]

Generate pseudocompounds

void reduce_ss_list(SS_ref *SS_ref_db, global_variable gv)
[source]

Get bounds for pseudocompounds compositional bounds after levelling

void run_simplex_pseudocompounds(bulk_info z_b, simplex_data *splx_data, global_variable gv, PP_ref *PP_ref_db, SS_ref *SS_ref_db)
[source]

function to run simplex linear programming with pseudocompounds only

void run_initial_guess_levelling(bulk_info z_b, simplex_data *splx_data, global_variable gv, PP_ref *PP_ref_db, SS_ref *SS_ref_db)
[source]

function to run simplex linear programming with pseudocompounds

void run_simplex_levelling(bulk_info z_b, simplex_data *splx_data, global_variable gv, PP_ref *PP_ref_db, SS_ref *SS_ref_db, obj_type *SS_objective)
[source]

function to run simplex linear programming with pseudocompounds

void destroy_simplex_A(simplex_data *splx_data)
[source]

function to deallocte memory of simplex linear programming (A)

void destroy_simplex_B(simplex_data *splx_data)
[source]

function to deallocte memory of simplex linear programming (B)

global_variable run_initial_guess_function(bulk_info z_b, global_variable gv, simplex_data *splx_data, PP_ref *PP_ref_db, SS_ref *SS_ref_db, csd_phase_set *cp)
[source]

Levelling function when using initial guess

global_variable run_levelling_function(bulk_info z_b, global_variable gv, obj_type *SS_objective, simplex_data *splx_data, PP_ref *PP_ref_db, SS_ref *SS_ref_db, csd_phase_set *cp)
[source]

Levelling function. Memory allocation and initialization is divided in part A and B. Part A: Reference assemblage against which candidates are tested Part B: Candidate phases

global_variable Initial_guess(bulk_info z_b, global_variable gv, simplex_data *splx_data, PP_ref *PP_ref_db, SS_ref *SS_ref_db, csd_phase_set *cp)
[source]

main levelling routine

global_variable Levelling(bulk_info z_b, global_variable gv, obj_type *SS_objective, simplex_data *splx_data, PP_ref *PP_ref_db, SS_ref *SS_ref_db, csd_phase_set *cp)
[source]

main levelling routine