oomph::CommandLineArgs Namespace Reference

Namespace for command line arguments. More...

Classes

struct  ArgInfo
 Structure to store information on a command line argument. More...
 

Functions

void setup (int argc, char **argv)
 Set values. More...
 
void output ()
 Doc the command line arguments. More...
 
void specify_command_line_flag (const std::string &command_line_flag, const std::string &doc)
 Specify possible argument-free command line flag. More...
 
void specify_command_line_flag (const std::string &command_line_flag, double *arg_pt, const std::string &doc)
 
void specify_command_line_flag (const std::string &command_line_flag, int *arg_pt, const std::string &doc)
 
void specify_command_line_flag (const std::string &command_line_flag, unsigned *arg_pt, const std::string &doc)
 
void specify_command_line_flag (const std::string &command_line_flag, std::string *arg_pt, const std::string &doc)
 
bool command_line_flag_has_been_set (const std::string &flag)
 
void doc_all_flags (std::ostream &outstream)
 Document the values of all flags (specified or not). More...
 
void doc_specified_flags ()
 Document specified command line flags. More...
 
void doc_available_flags ()
 Document available command line flags. More...
 
void check_arg_index (const int &argc, const int &arg_index)
 Helper function to check if command line index is legal. More...
 
void parse_and_assign (int argc, char *argv[], const bool &throw_on_unrecognised_args)
 
void parse_and_assign (const bool &throw_on_unrecognised_args)
 

Variables

int Argc
 Number of arguments + 1. More...
 
char ** Argv
 Arguments themselves. More...
 
std::map< std::string, ArgInfo< bool > > Specified_command_line_flag
 Map to indicate an input flag as having been set. More...
 
std::map< std::string, ArgInfo< double > > Specified_command_line_double_pt
 Map to associate an input flag with a double – specified via pointer. More...
 
std::map< std::string, ArgInfo< int > > Specified_command_line_int_pt
 Map to associate an input flag with an int – specified via pointer. More...
 
std::map< std::string, ArgInfo< unsigned > > Specified_command_line_unsigned_pt
 Map to associate an input flag with an unsigned – specified via pointer. More...
 
std::map< std::string, ArgInfo< std::string > > Specified_command_line_string_pt
 Map to associate an input flag with a string – specified via pointer. More...
 

Detailed Description

Namespace for command line arguments.

Function Documentation

◆ check_arg_index()

void oomph::CommandLineArgs::check_arg_index ( const int argc,
const int arg_index 
)

Helper function to check if command line index is legal.

738  {
739  if (arg_index >= argc)
740  {
741  output();
743  std::stringstream error_stream;
744  error_stream
745  << "Tried to read more command line arguments than\n"
746  << "specified. This tends to happen if a required argument\n"
747  << "to a command line flag was omitted, e.g. by running \n\n"
748  << " ./a.out -some_double \n\n rather than\n\n"
749  << " ./a.out -some_double 1.23 \n\n"
750  << "To aid the debugging I've output the available\n"
751  << "command line arguments above.\n";
752  throw OomphLibError(
753  error_stream.str(), OOMPH_CURRENT_FUNCTION, OOMPH_EXCEPTION_LOCATION);
754  }
755  }
void doc_available_flags()
Document available command line flags.
Definition: oomph_utilities.cc:676
void output()
Doc the command line arguments.
Definition: oomph_utilities.cc:436
#define OOMPH_EXCEPTION_LOCATION
Definition: oomph_definitions.h:61
#define OOMPH_CURRENT_FUNCTION
Definition: oomph_definitions.h:86

References doc_available_flags(), OOMPH_CURRENT_FUNCTION, OOMPH_EXCEPTION_LOCATION, and output().

Referenced by parse_and_assign().

◆ command_line_flag_has_been_set()

bool oomph::CommandLineArgs::command_line_flag_has_been_set ( const std::string &  flag)

Check if command line flag has been set (value will have been assigned directly).

Check if specified flag has been set (the associated value will have been assigned directly)

502  {
503  for (std::map<std::string, ArgInfo<bool>>::iterator it =
505  it != Specified_command_line_flag.end();
506  it++)
507  {
508  if (it->first == flag)
509  {
510  return it->second.is_set;
511  }
512  }
513 
514  for (std::map<std::string, ArgInfo<double>>::iterator it =
517  it++)
518  {
519  if (it->first == flag)
520  {
521  return (it->second).is_set;
522  }
523  }
524 
525  for (std::map<std::string, ArgInfo<int>>::iterator it =
527  it != Specified_command_line_int_pt.end();
528  it++)
529  {
530  if (it->first == flag)
531  {
532  return (it->second).is_set;
533  }
534  }
535 
536  for (std::map<std::string, ArgInfo<unsigned>>::iterator it =
539  it++)
540  {
541  if (it->first == flag)
542  {
543  return (it->second).is_set;
544  }
545  }
546 
547  for (std::map<std::string, ArgInfo<std::string>>::iterator it =
550  it++)
551  {
552  if (it->first == flag)
553  {
554  return (it->second).is_set;
555  }
556  }
557 
558  return false;
559  }
std::map< std::string, ArgInfo< bool > > Specified_command_line_flag
Map to indicate an input flag as having been set.
Definition: oomph_utilities.cc:413
std::map< std::string, ArgInfo< std::string > > Specified_command_line_string_pt
Map to associate an input flag with a string – specified via pointer.
Definition: oomph_utilities.cc:426
std::map< std::string, ArgInfo< int > > Specified_command_line_int_pt
Map to associate an input flag with an int – specified via pointer.
Definition: oomph_utilities.cc:419
std::map< std::string, ArgInfo< double > > Specified_command_line_double_pt
Map to associate an input flag with a double – specified via pointer.
Definition: oomph_utilities.cc:416
std::map< std::string, ArgInfo< unsigned > > Specified_command_line_unsigned_pt
Map to associate an input flag with an unsigned – specified via pointer.
Definition: oomph_utilities.cc:422
std::string string(const unsigned &i)
Definition: oomph_definitions.cc:286

References Specified_command_line_double_pt, Specified_command_line_flag, Specified_command_line_int_pt, Specified_command_line_string_pt, Specified_command_line_unsigned_pt, and oomph::Global_string_for_annotation::string().

Referenced by FourierDecomposedHelmholtzProblem< ELEMENT >::actions_after_adapt(), FourierDecomposedHelmholtzProblem< ELEMENT >::actions_before_adapt(), SolarRadiationProblem< ELEMENT >::actions_before_implicit_timestep(), FourierDecomposedHelmholtzProblem< ELEMENT >::actions_before_newton_convergence_check(), SolarRadiationProblem< ELEMENT >::actions_before_newton_convergence_check(), AnnularDiskProblem< ELASTICITY_ELEMENT >::AnnularDiskProblem(), AxisymFvKProblem< ELEMENT >::AxisymFvKProblem(), ProblemParameters::boundary_accel_0(), ProblemParameters::boundary_accel_1(), ProblemParameters::boundary_d2fluxdt2_0(), ProblemParameters::boundary_d2fluxdt2_1(), ProblemParameters::boundary_dfluxdt_0(), ProblemParameters::boundary_dfluxdt_1(), ProblemParameters::boundary_displ_0(), ProblemParameters::boundary_displ_1(), ProblemParameters::boundary_flux_0(), ProblemParameters::boundary_flux_1(), ProblemParameters::boundary_pressure(), ProblemParameters::boundary_traction(), ProblemParameters::boundary_veloc_0(), ProblemParameters::boundary_veloc_1(), BubbleInChannelProblem< ELEMENT >::BubbleInChannelProblem(), AxiPoroProblem< ELEMENT, TIMESTEPPER >::complete_problem_setup(), UnsteadyHeatMeltProblem< ELEMENT >::complete_problem_setup(), UnsteadyHeatProblem< ELEMENT >::complete_problem_setup(), ElasticAnnulusProblem< ELASTICITY_ELEMENT >::complete_problem_setup(), RingWithTRibProblem< ELASTICITY_ELEMENT >::complete_problem_setup(), UnsteadyHeatProblem< ELEMENT >::create_flux_elements(), StefanBoltzmannProblem< ELEMENT >::create_melt_elements(), StefanBoltzmannProblem< ELEMENT >::create_sb_elements(), AnnularDiskProblem< ELASTICITY_ELEMENT >::create_traction_elements(), AxisymmetricVibratingShellProblem< ELEMENT >::doc_solution(), VibratingShellProblem< ELEMENT >::doc_solution(), AxiPoroProblem< ELEMENT, TIMESTEPPER >::doc_solution(), TetmeshPoissonProblem< ELEMENT >::doc_solution(), UnsteadyHeatProblem< ELEMENT >::doc_solution(), DropInChannelProblem< ELEMENT >::DropInChannelProblem(), ProblemParameters::exact_soln(), FallingBlockProblem< ELEMENT >::FallingBlockProblem(), ProblemParameters::Fluid_body_force(), GlobalFct::get_residuals(), main(), MultiPoissonProblem< ELEMENT >::MultiPoissonProblem(), PrescribedBoundaryDisplacementProblem< ELEMENT >::PrescribedBoundaryDisplacementProblem(), RisingBubbleProblem< ELEMENT >::RisingBubbleProblem(), AxiPoroProblem< ELEMENT, TIMESTEPPER >::set_boundary_values(), AxiPoroProblem< ELEMENT, TIMESTEPPER >::set_initial_condition(), FSIChannelWithLeafletProblem< ELEMENT >::set_iterative_solver(), AxisymmetricVibratingShellProblem< ELEMENT >::set_nprev_for_extrapolation_of_strain_rate_for_all_elements(), VibratingShellProblem< ELEMENT >::set_nprev_for_extrapolation_of_strain_rate_for_all_elements(), ProblemParameters::Solid_body_force(), StefanBoltzmannProblem< ELEMENT >::StefanBoltzmannProblem(), TwoLayerInterfaceProblem< ELEMENT >::TwoLayerInterfaceProblem(), UnstructuredFluidProblem< ELEMENT >::UnstructuredFluidProblem(), and UnstructuredImmersedEllipseProblem< ELEMENT >::UnstructuredImmersedEllipseProblem().

◆ doc_all_flags()

void oomph::CommandLineArgs::doc_all_flags ( std::ostream &  outstream)

Document the values of all flags (specified or not).

Document the values of all flags (specified or not)

563  {
564  for (std::map<std::string, ArgInfo<bool>>::iterator it =
566  it != Specified_command_line_flag.end();
567  it++)
568  {
569  outstream << it->first << " " << it->second.is_set << std::endl;
570  }
571  for (std::map<std::string, ArgInfo<double>>::iterator it =
574  it++)
575  {
576  outstream << it->first << " " << *(it->second.arg_pt) << std::endl;
577  }
578  for (std::map<std::string, ArgInfo<int>>::iterator it =
580  it != Specified_command_line_int_pt.end();
581  it++)
582  {
583  outstream << it->first << " " << *(it->second.arg_pt) << std::endl;
584  }
585  for (std::map<std::string, ArgInfo<unsigned>>::iterator it =
588  it++)
589  {
590  outstream << it->first << " " << *(it->second.arg_pt) << std::endl;
591  }
592  for (std::map<std::string, ArgInfo<std::string>>::iterator it =
595  it++)
596  {
597  // Quote blank strings, otherwise trying to parse the output in any way
598  // will go wrong.
599  std::string arg_string = *(it->second.arg_pt);
600  if (arg_string == "")
601  {
602  arg_string = "\"\"";
603  }
604 
605  outstream << it->first << " " << arg_string << std::endl;
606  }
607  }

References Specified_command_line_double_pt, Specified_command_line_flag, Specified_command_line_int_pt, Specified_command_line_string_pt, Specified_command_line_unsigned_pt, and oomph::Global_string_for_annotation::string().

Referenced by oomph::MyDocInfo::copy_args_string(), and main().

◆ doc_available_flags()

void oomph::CommandLineArgs::doc_available_flags ( )

Document available command line flags.

677  {
678  oomph_info << std::endl;
679  oomph_info << "Available command line flags:\n";
680  oomph_info << "-----------------------------\n";
681 
682  for (std::map<std::string, ArgInfo<bool>>::iterator it =
684  it != Specified_command_line_flag.end();
685  it++)
686  {
687  oomph_info << it->first << std::endl
688  << it->second.doc << std::endl
689  << std::endl;
690  }
691 
692  for (std::map<std::string, ArgInfo<double>>::iterator it =
695  it++)
696  {
697  oomph_info << it->first << " <double> " << std::endl
698  << it->second.doc << std::endl
699  << std::endl;
700  }
701 
702  for (std::map<std::string, ArgInfo<int>>::iterator it =
704  it != Specified_command_line_int_pt.end();
705  it++)
706  {
707  oomph_info << it->first << " <int> " << std::endl
708  << it->second.doc << std::endl
709  << std::endl;
710  }
711 
712  for (std::map<std::string, ArgInfo<unsigned>>::iterator it =
715  it++)
716  {
717  oomph_info << it->first << " <unsigned> " << std::endl
718  << it->second.doc << std::endl
719  << std::endl;
720  }
721 
722  for (std::map<std::string, ArgInfo<std::string>>::iterator it =
725  it++)
726  {
727  oomph_info << it->first << " <string> " << std::endl
728  << it->second.doc << std::endl
729  << std::endl;
730  }
731 
732  oomph_info << std::endl;
733  }
OomphInfo oomph_info
Definition: oomph_definitions.cc:319

References oomph::oomph_info, Specified_command_line_double_pt, Specified_command_line_flag, Specified_command_line_int_pt, Specified_command_line_string_pt, Specified_command_line_unsigned_pt, and oomph::Global_string_for_annotation::string().

Referenced by check_arg_index(), GlobalFct::get_residuals(), main(), and parse_and_assign().

◆ doc_specified_flags()

void oomph::CommandLineArgs::doc_specified_flags ( )

Document specified command line flags.

611  {
612  oomph_info << std::endl;
613  oomph_info << "Specified (and recognised) command line flags:\n";
614  oomph_info << "----------------------------------------------\n";
615 
616  for (std::map<std::string, ArgInfo<bool>>::iterator it =
618  it != Specified_command_line_flag.end();
619  it++)
620  {
621  if (it->second.is_set)
622  {
623  oomph_info << it->first << std::endl;
624  }
625  }
626 
627  for (std::map<std::string, ArgInfo<double>>::iterator it =
630  it++)
631  {
632  if (it->second.is_set)
633  {
634  oomph_info << it->first << " " << *(it->second.arg_pt) << std::endl;
635  }
636  }
637 
638  for (std::map<std::string, ArgInfo<int>>::iterator it =
640  it != Specified_command_line_int_pt.end();
641  it++)
642  {
643  if (it->second.is_set)
644  {
645  oomph_info << it->first << " " << *(it->second.arg_pt) << std::endl;
646  }
647  }
648 
649  for (std::map<std::string, ArgInfo<unsigned>>::iterator it =
652  it++)
653  {
654  if (it->second.is_set)
655  {
656  oomph_info << it->first << " " << *(it->second.arg_pt) << std::endl;
657  }
658  }
659 
660  for (std::map<std::string, ArgInfo<std::string>>::iterator it =
663  it++)
664  {
665  if (it->second.is_set)
666  {
667  oomph_info << it->first << " " << *(it->second.arg_pt) << std::endl;
668  }
669  }
670 
671  oomph_info << std::endl;
672  }

References oomph::oomph_info, Specified_command_line_double_pt, Specified_command_line_flag, Specified_command_line_int_pt, Specified_command_line_string_pt, Specified_command_line_unsigned_pt, and oomph::Global_string_for_annotation::string().

Referenced by main().

◆ output()

void oomph::CommandLineArgs::output ( )

Doc the command line arguments.

437  {
438  oomph_info << "You are running the program: " << CommandLineArgs::Argv[0]
439  << std::endl;
440  oomph_info << "with the following command line args: " << std::endl;
441  std::stringstream str;
442  for (int i = 1; i < CommandLineArgs::Argc; i++)
443  {
444  str << CommandLineArgs::Argv[i] << " ";
445  }
446  oomph_info << str.str() << std::endl;
447  }
int i
Definition: BiCGSTAB_step_by_step.cpp:9
str
Definition: compute_granudrum_aor.py:141
char ** Argv
Arguments themselves.
Definition: oomph_utilities.cc:410
int Argc
Number of arguments + 1.
Definition: oomph_utilities.cc:407

References Argc, Argv, i, oomph::oomph_info, and compute_granudrum_aor::str.

Referenced by check_arg_index().

◆ parse_and_assign() [1/2]

void oomph::CommandLineArgs::parse_and_assign ( const bool throw_on_unrecognised_args)

Parse previously specified command line, check for recognised flags and assign associated values

937  {
938  parse_and_assign(Argc, Argv, throw_on_unrecognised_args);
939  }
void parse_and_assign(const bool &throw_on_unrecognised_args)
Definition: oomph_utilities.cc:936

References Argc, Argv, and parse_and_assign().

◆ parse_and_assign() [2/2]

void oomph::CommandLineArgs::parse_and_assign ( int  argc,
char argv[],
const bool throw_on_unrecognised_args 
)

Parse command line, check for recognised flags and assign associated values

763  {
764  // Keep looping over command line arguments
765  int arg_index = 1;
766  while (arg_index < argc)
767  {
768  bool found_match = false;
769 
770  if ((strcmp(argv[arg_index], "-help") == 0) ||
771  (strcmp(argv[arg_index], "--help") == 0))
772  {
773  oomph_info
774  << "NOTE: You entered --help or -help on the command line\n";
775  oomph_info << "so I'm going to tell you about this code's\n";
776  oomph_info << "available command line flags and then return.\n";
778 
779 #ifdef OOMPH_HAS_MPI
780  int flag;
781  MPI_Initialized(&flag);
782  if (flag != 0) MPI_Helpers::finalize();
783 #endif
784  oomph_info << "Shutting down...\n";
785  exit(0);
786  }
787 
788 
789  // Check if the flag has been previously specified as a simple argument
790  // free command line argument
791  for (std::map<std::string, ArgInfo<bool>>::iterator it =
793  it != Specified_command_line_flag.end();
794  it++)
795  {
796  if (it->first == argv[arg_index])
797  {
798  Specified_command_line_flag[argv[arg_index]].is_set = true;
799  found_match = true;
800  break;
801  }
802  }
803 
804  if (!found_match)
805  {
806  // Check if the flag has been previously specified as a
807  // command line argument that specifies (and is followed by) a double
808  for (std::map<std::string, ArgInfo<double>>::iterator it =
811  it++)
812  {
813  if (it->first == argv[arg_index])
814  {
815  // Next command line argument specifies the double. Set it via
816  // the pointer
817  arg_index++;
818  check_arg_index(argc, arg_index);
819  it->second.is_set = true;
820  *(it->second.arg_pt) = atof(argv[arg_index]);
821  found_match = true;
822  break;
823  }
824  }
825  }
826 
827 
828  if (!found_match)
829  {
830  // Check if the flag has been previously specified as a
831  // command line argument that specifies (and is followed by) an int
832  for (std::map<std::string, ArgInfo<int>>::iterator it =
834  it != Specified_command_line_int_pt.end();
835  it++)
836  {
837  if (it->first == argv[arg_index])
838  {
839  // Next command line argument specifies the int. Set it via
840  // the pointer
841  arg_index++;
842  check_arg_index(argc, arg_index);
843  it->second.is_set = true;
844  *(it->second.arg_pt) = atoi(argv[arg_index]);
845  found_match = true;
846  break;
847  }
848  }
849  }
850 
851 
852  if (!found_match)
853  {
854  // Check if the flag has been previously specified as a
855  // command line argument that specifies (and is followed by) an
856  // unsigned
857  for (std::map<std::string, ArgInfo<unsigned>>::iterator it =
860  it++)
861  {
862  if (it->first == argv[arg_index])
863  {
864  // Next command line argument specifies the unsigned. Set it via
865  // the pointer
866  arg_index++;
867  check_arg_index(argc, arg_index);
868  it->second.is_set = true;
869  *(it->second.arg_pt) = unsigned(atoi(argv[arg_index]));
870  found_match = true;
871  break;
872  }
873  }
874  }
875 
876 
877  if (!found_match)
878  {
879  // Check if the flag has been previously specified as a
880  // command line argument that specifies (and is followed by) a string
881  for (std::map<std::string, ArgInfo<std::string>>::iterator it =
884  it++)
885  {
886  if (it->first == argv[arg_index])
887  {
888  // Next command line argument specifies the string. Set it via
889  // the pointer
890  arg_index++;
891  check_arg_index(argc, arg_index);
892  it->second.is_set = true;
893  *(it->second.arg_pt) = argv[arg_index];
894  found_match = true;
895  break;
896  }
897  }
898  }
899 
900 
901  // Oh dear, we still haven't found the argument in the list.
902  // Maybe it was specified wrongly -- issue warning.
903  if (!found_match)
904  {
905  // Construct the error message
906  std::string error_message = "Command line argument\n\n";
907  error_message += argv[arg_index];
908  error_message += "\n\nwas not recognised. This may be legal\n";
909  error_message += "but seems sufficiently suspicious to flag up.\n";
910  error_message += "If it should have been recognised, make sure you\n";
911  error_message += "used the right number of \"-\" signs...\n";
912 
913  if (throw_on_unrecognised_args)
914  {
915  error_message += "Throwing an error because you requested it with";
916  error_message += " throw_on_unrecognised_args option.";
917  throw OomphLibError(
919  }
920  else
921  {
922  // Create an Oomph Lib warning
923  OomphLibWarning(
925  }
926  }
927 
928 
929  arg_index++;
930  }
931  }
void check_arg_index(const int &argc, const int &arg_index)
Helper function to check if command line index is legal.
Definition: oomph_utilities.cc:737

References check_arg_index(), doc_available_flags(), oomph::MPI_Helpers::finalize(), OOMPH_CURRENT_FUNCTION, OOMPH_EXCEPTION_LOCATION, oomph::oomph_info, Specified_command_line_double_pt, Specified_command_line_flag, Specified_command_line_int_pt, Specified_command_line_string_pt, Specified_command_line_unsigned_pt, and oomph::Global_string_for_annotation::string().

Referenced by main(), and parse_and_assign().

◆ setup()

void oomph::CommandLineArgs::setup ( int  argc,
char **  argv 
)

Set values.

430  {
431  Argc = argc;
432  Argv = argv;
433  }

References Argc, and Argv.

Referenced by main().

◆ specify_command_line_flag() [1/5]

void oomph::CommandLineArgs::specify_command_line_flag ( const std::string &  command_line_flag,
const std::string &  doc 
)

Specify possible argument-free command line flag.

453  {
454  Specified_command_line_flag[command_line_flag] =
455  ArgInfo<bool>(false, 0, doc);
456  }

References Specified_command_line_flag.

Referenced by main().

◆ specify_command_line_flag() [2/5]

void oomph::CommandLineArgs::specify_command_line_flag ( const std::string &  command_line_flag,
double arg_pt,
const std::string &  doc 
)

Specify possible command line flag that specifies a double, accessed via pointer

463  {
464  Specified_command_line_double_pt[command_line_flag] =
465  ArgInfo<double>(false, arg_pt, doc);
466  }

References Specified_command_line_double_pt.

◆ specify_command_line_flag() [3/5]

void oomph::CommandLineArgs::specify_command_line_flag ( const std::string &  command_line_flag,
int arg_pt,
const std::string &  doc 
)

Specify possible command line flag that specifies an int, accessed via pointer

473  {
474  Specified_command_line_int_pt[command_line_flag] =
475  ArgInfo<int>(false, arg_pt, doc);
476  }

References Specified_command_line_int_pt.

◆ specify_command_line_flag() [4/5]

void oomph::CommandLineArgs::specify_command_line_flag ( const std::string &  command_line_flag,
std::string *  arg_pt,
const std::string &  doc 
)

Specify possible command line flag that specifies a string, accessed via pointer

493  {
494  Specified_command_line_string_pt[command_line_flag] =
495  ArgInfo<std::string>(false, arg_pt, doc);
496  }

References Specified_command_line_string_pt.

◆ specify_command_line_flag() [5/5]

void oomph::CommandLineArgs::specify_command_line_flag ( const std::string &  command_line_flag,
unsigned arg_pt,
const std::string &  doc 
)

Specify possible command line flag that specifies an unsigned, accessed via pointer

483  {
484  Specified_command_line_unsigned_pt[command_line_flag] =
485  ArgInfo<unsigned>(false, arg_pt, doc);
486  }

References Specified_command_line_unsigned_pt.

Variable Documentation

◆ Argc

int oomph::CommandLineArgs::Argc

Number of arguments + 1.

Referenced by DeformableFishPoissonProblem< ELEMENT >::DeformableFishPoissonProblem(), demo_elastic_fish_poisson(), demo_fish_poisson(), demo_smoothing_with_nonlinear_elasticity(), TestPoissonProblem< ELEMENT >::doc_solution(), FSICollapsibleChannelProblem< ELEMENT >::doc_solution(), FSIDrivenCavityProblem< ELEMENT >::doc_solution(), PoissonProblem< ELEMENT >::doc_solution(), EighthSpherePoissonProblem< ELEMENT >::doc_solution(), FSIRingProblem::dynamic_run(), EighthSpherePoissonProblem< ELEMENT >::EighthSpherePoissonProblem(), ElasticCollapsibleChannelMesh< ELEMENT >::ElasticCollapsibleChannelMesh(), ElasticRefineableCollapsibleChannelMesh< ELEMENT >::ElasticRefineableCollapsibleChannelMesh(), FSIChannelWithLeafletProblem< ELEMENT >::FSIChannelWithLeafletProblem(), main(), output(), StaticDiskCompressionProblem< ELEMENT >::parameter_study(), parse_and_assign(), print_stacktrace(), PseudoElasticCollapsibleChannelProblem< FLUID_ELEMENT, SOLID_ELEMENT >::PseudoElasticCollapsibleChannelProblem(), SheetGlueProblem< ELEMENT >::run(), BlockCompressionProblem< ELEMENT >::run(), DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::run(), ShellProblem< ELEMENT >::run_it(), run_it(), setup(), PseudoElasticCollapsibleChannelProblem< FLUID_ELEMENT, SOLID_ELEMENT >::steady_run(), LinearWaveProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), PseudoElasticCollapsibleChannelProblem< FLUID_ELEMENT, SOLID_ELEMENT >::unsteady_run(), and OscEllipseProblem< ELEMENT, TIMESTEPPER >::unsteady_run().

◆ Argv

char ** oomph::CommandLineArgs::Argv

◆ Specified_command_line_double_pt

std::map< std::string, ArgInfo< double > > oomph::CommandLineArgs::Specified_command_line_double_pt

Map to associate an input flag with a double – specified via pointer.

Referenced by command_line_flag_has_been_set(), doc_all_flags(), doc_available_flags(), doc_specified_flags(), parse_and_assign(), and specify_command_line_flag().

◆ Specified_command_line_flag

std::map< std::string, ArgInfo< bool > > oomph::CommandLineArgs::Specified_command_line_flag

◆ Specified_command_line_int_pt

std::map< std::string, ArgInfo< int > > oomph::CommandLineArgs::Specified_command_line_int_pt

Map to associate an input flag with an int – specified via pointer.

Referenced by command_line_flag_has_been_set(), doc_all_flags(), doc_available_flags(), doc_specified_flags(), parse_and_assign(), and specify_command_line_flag().

◆ Specified_command_line_string_pt

std::map< std::string, ArgInfo< std::string > > oomph::CommandLineArgs::Specified_command_line_string_pt

Map to associate an input flag with a string – specified via pointer.

Referenced by command_line_flag_has_been_set(), doc_all_flags(), doc_available_flags(), doc_specified_flags(), parse_and_assign(), and specify_command_line_flag().

◆ Specified_command_line_unsigned_pt

std::map< std::string, ArgInfo< unsigned > > oomph::CommandLineArgs::Specified_command_line_unsigned_pt

Map to associate an input flag with an unsigned – specified via pointer.

Referenced by command_line_flag_has_been_set(), doc_all_flags(), doc_available_flags(), doc_specified_flags(), parse_and_assign(), and specify_command_line_flag().