Add a hash table paramhash to store the .agemodel model parameters.

This commit is contained in:
Holger Vogt 2025-09-28 15:44:31 +02:00
parent 90ac209db6
commit ed4071cf11
1 changed files with 9 additions and 3 deletions

View File

@ -28,6 +28,7 @@ struct agemod {
char *paramvalstr[DEGPARAMAX];
double paramvals[DEGPARAMAX];
bool paramread[DEGPARAMAX];
NGHASHPTR paramhash;
} agemods[DEGMODMAX];
int readdegparams (struct card *deck) {
@ -49,6 +50,8 @@ int readdegparams (struct card *deck) {
continue;
}
agemods[ageindex].paramhash = nghash_init(64);
card->line = inp_remove_ws(card->line);
char* cut_line = card->line;
@ -94,12 +97,15 @@ int readdegparams (struct card *deck) {
agemods[ageindex].paramvalstr[parno] = f2;
char *fp = f2;
agemods[ageindex].paramvals[parno] = INPevaluate(&fp, &err, 1);
agemods[ageindex].paramread[parno] = FALSE;
parno++;
if (err != 0)
fprintf(stderr, "\nError: Could not evaluate parameter %s\n", f2);
else
else {
agemods[ageindex].paramread[parno] = FALSE;
nghash_insert(agemods[ageindex].paramhash, f1, &(agemods[ageindex].paramvals[parno]));
parno++;
agemods[ageindex].numparams = parno;
}
tfree(dftok);
}
ageindex++;