MP-Gadget  5.0.1.dev1-76bc7d4726-dirty
Functions
params.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

void read_parameter_file (char *fname, int *ShowBacktrace, double *MaxMemSizePerNode)
 

Function Documentation

◆ read_parameter_file()

void read_parameter_file ( char *  fname,
int *  ShowBacktrace,
double *  MaxMemSizePerNode 
)

This function parses the parameterfile in a simple way. Each paramater is defined by a keyword (‘tag’), and can be either of type douple, int, or character string. The routine makes sure that each parameter appears exactly once in the parameterfile, otherwise error messages are produced that complain about the missing parameters.

Definition at line 359 of file params.c.

360 {
362 
363  int ThisTask;
364  MPI_Comm_rank(MPI_COMM_WORLD, &ThisTask);
365 
366  if(0 != param_parse_file(ps, fname)) {
367  endrun(1, "Parsing %s failed.\n", fname);
368  }
369  if(0 != param_validate(ps)) {
370  endrun(1, "Validation of %s failed: %s\n", fname);
371  }
372 
373  message(0, "----------- Running with Parameters ----------\n");
374  if(ThisTask == 0)
375  param_dump(ps, stdout);
376  message(0, "----------------------------------------------\n");
377 
378  *ShowBacktrace = param_get_int(ps, "ShowBacktrace");
379  *MaxMemSizePerNode = param_get_double(ps, "MaxMemSizePerNode");
380  if(*MaxMemSizePerNode <= 1) {
381  *MaxMemSizePerNode *= get_physmem_bytes() / (1024. * 1024.);
382  }
383 
384  /*Initialize per-module parameters.*/
386  set_init_params(ps);
387  set_petaio_params(ps);
389  set_cooling_params(ps);
390  set_density_params(ps);
391  set_hydro_params(ps);
395  set_domain_params(ps);
396  set_sfr_params(ps);
397  set_winds_params(ps);
398  set_fof_params(ps);
401  set_stats_params(ps);
402  parameter_set_free(ps);
403 }
void set_blackhole_params(ParameterSet *ps)
Definition: blackhole.c:257
void set_qso_lightup_params(ParameterSet *ps)
void set_cooling_params(ParameterSet *ps)
void set_density_params(ParameterSet *ps)
Definition: density.c:32
void set_domain_params(ParameterSet *ps)
Definition: domain.c:84
void message(int where, const char *fmt,...)
Definition: endrun.c:175
static int ShowBacktrace
Definition: endrun.c:100
void endrun(int where, const char *fmt,...)
Definition: endrun.c:147
void set_fof_params(ParameterSet *ps)
Definition: fof.c:50
static ParameterSet * create_gadget_parameter_set()
Definition: params.c:54
void set_gravshort_tree_params(ParameterSet *ps)
void set_hydro_params(ParameterSet *ps)
Definition: hydra.c:37
void set_init_params(ParameterSet *ps)
Definition: init.c:45
void set_metal_return_params(ParameterSet *ps)
Definition: metal_return.c:62
double param_get_double(ParameterSet *ps, const char *name)
Definition: paramset.c:336
void parameter_set_free(ParameterSet *ps)
Definition: paramset.c:480
int param_parse_file(ParameterSet *ps, const char *filename)
Definition: paramset.c:234
int param_get_int(ParameterSet *ps, const char *name)
Definition: paramset.c:368
void param_dump(ParameterSet *ps, FILE *stream)
Definition: paramset.c:192
int param_validate(ParameterSet *ps)
Definition: paramset.c:177
void set_petaio_params(ParameterSet *ps)
Definition: petaio.c:57
void set_all_global_params(ParameterSet *ps)
Definition: run.c:106
void set_sfr_params(ParameterSet *ps)
Definition: sfr_eff.c:129
void set_stats_params(ParameterSet *ps)
Definition: stats.c:55
double get_physmem_bytes(void)
Definition: system.c:467
int ThisTask
Definition: test_exchange.c:23
void set_timestep_params(ParameterSet *ps)
Definition: timestep.c:51
void set_treewalk_params(ParameterSet *ps)
Definition: treewalk.c:55
void set_winds_params(ParameterSet *ps)
Definition: winds.c:72

References create_gadget_parameter_set(), endrun(), get_physmem_bytes(), message(), param_dump(), param_get_double(), param_get_int(), param_parse_file(), param_validate(), parameter_set_free(), set_all_global_params(), set_blackhole_params(), set_cooling_params(), set_density_params(), set_domain_params(), set_fof_params(), set_gravshort_tree_params(), set_hydro_params(), set_init_params(), set_metal_return_params(), set_petaio_params(), set_qso_lightup_params(), set_sfr_params(), set_stats_params(), set_timestep_params(), set_treewalk_params(), set_winds_params(), ShowBacktrace, and ThisTask.

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function: