Open sebwolf-de opened 4 years ago
Regarding the enums, the easiest way is to accept strings and then convert it to the enum, like this
The parameters are used here:
The first one defines all types used throughout the Fortran code, the second one initializes some stuff for Fortran. Don't look too closely at that, most of the settings are actually unused. The structs for equation/discretization/etc are actually used throughout the code.
Thanks for your initial work! Based on our call here are some suggestions for improvement:
Use booleans instead of 0/1 integers for e.g.
[ ] Plasticity
[ ] Boundary conditions (also make the names more verbose)
[ ] SurfaceOutput
[ ] FaultOutputFlag
Use a enum/String instead of integers for e.g.
[ ] FL: Options: look into evaluate_friction_laws
[ ] Method: Options: GP, elementwise
[ ] OutputPointType: Options: 0: no output, 1: take GP's 2: 4 points per surface triangle, 3: output at certain pickpoints)
[ ] printIntervalCriterion: Options: 1=iteration, 2=time
[ ] SourceType: Options: nrf, fsrm
[ ] meshgenerator: Options: look into the mesh reader. There should be PUML and netcdf (and maybe more)
[ ] Format: Right now, I guess there are only HDF5 (6) and no output (10)
[ ] printIntervalCriterion: # Criterion for index of printed info: 1=timesteps,2=time,3=timesteps+time
Think about the OutputMasks: Can we make the input more verbose:
Think about nRecordPoints: