Merge remote-tracking branch 'origin/master' into state

This commit is contained in:
David Parkhurst 2021-06-13 07:37:50 -06:00
commit 26c71a359b
6 changed files with 29 additions and 5 deletions

View File

@ -1400,6 +1400,7 @@ protected:
*---------------------------------------------------------------------- */ *---------------------------------------------------------------------- */
std::vector<class unknown*> x; std::vector<class unknown*> x;
size_t count_unknowns; size_t count_unknowns;
size_t sit_aqueous_unknowns;
size_t max_unknowns; size_t max_unknowns;
class unknown* ah2o_unknown; class unknown* ah2o_unknown;

View File

@ -73,6 +73,11 @@ initialize(void)
change_surf[0].next = TRUE; change_surf[0].next = TRUE;
change_surf[1].cell_no = -99; change_surf[1].cell_no = -99;
change_surf[1].next = FALSE; change_surf[1].next = FALSE;
/*
* define constant named log_k
*/
class logk* logk_ptr = logk_store("XconstantX", TRUE);
read_log_k_only("1.0", &logk_ptr->log_k[0]);
#ifdef PHREEQCI_GUI #ifdef PHREEQCI_GUI
g_spread_sheet.heading = NULL; g_spread_sheet.heading = NULL;

View File

@ -1240,8 +1240,7 @@ build_model(void)
} }
if (dl_type_x != cxxSurface::NO_DL && (/*pitzer_model == TRUE || */sit_model == TRUE)) //DL_pitz if (dl_type_x != cxxSurface::NO_DL && (/*pitzer_model == TRUE || */sit_model == TRUE)) //DL_pitz
{ {
error_msg("-diffuse_layer option not available for Pizer or SIT model", warning_msg("-diffuse_layer option not tested for SIT model");
STOP);
} }
/* /*
* Sum diffuse layer water into hydrogen and oxygen mass balances * Sum diffuse layer water into hydrogen and oxygen mass balances
@ -1285,6 +1284,7 @@ build_model(void)
k++; k++;
count_unknowns++; count_unknowns++;
} }
sit_aqueous_unknowns = count_unknowns - j0;
} }
/* /*
* Rewrite phases to current master species * Rewrite phases to current master species

View File

@ -1117,7 +1117,8 @@ model_sit(void)
{ {
count_basis_change++; count_basis_change++;
count_unknowns -= (int)this->s_x.size(); //count_unknowns -= (int)this->s_x.size();
count_unknowns -= sit_aqueous_unknowns;
reprep(); reprep();
full_pitzer = false; full_pitzer = false;
} }

View File

@ -1136,7 +1136,7 @@ copy_token_tab(std::string& token, const char **cptr)
* EOL, * EOL,
* UNKNOWN. * UNKNOWN.
*/ */
int i, j, return_value; int i, return_value;
char c; char c;
/* /*
* Strip leading spaces * Strip leading spaces

View File

@ -1824,7 +1824,9 @@ tidy_punch(void)
for (size_t i = 0; i < current_selected_output->Get_totals().size(); i++) for (size_t i = 0; i < current_selected_output->Get_totals().size(); i++)
{ {
std::pair< std::string, void *> &pair_ptr = current_selected_output->Get_totals()[i]; std::pair< std::string, void *> &pair_ptr = current_selected_output->Get_totals()[i];
pair_ptr.second = master_bsearch(pair_ptr.first.c_str()); std::string noplus = pair_ptr.first;
replace(noplus, "+", "");
pair_ptr.second = master_bsearch(noplus.c_str());
} }
/* molalities */ /* molalities */
@ -3800,6 +3802,21 @@ tidy_min_surface(void)
*/ */
for (int jj = 0; jj < count_elts; jj++) for (int jj = 0; jj < count_elts; jj++)
{ {
if (elt_list[jj].elt->primary == NULL)
{
error_string = sformatf("Primary master species missing for %s",
elt_list[jj].elt->name);
error_msg(error_string, CONTINUE);
break;
}
if (elt_list[jj].elt->primary->s == NULL)
{
error_string = sformatf(
"Species missing for %s", elt_list[jj].elt->name);
error_msg(error_string, CONTINUE);
break;
}
if (elt_list[jj].elt->primary->s->type != SURF if (elt_list[jj].elt->primary->s->type != SURF
&& elt_list[jj].coef < 0 && elt_list[jj].coef < 0
//&& elt_list[jj].elt->primary->s != s_hplus //&& elt_list[jj].elt->primary->s != s_hplus