oomph::DocInfo Class Reference

#include <oomph_utilities.h>

+ Inheritance diagram for oomph::DocInfo:

Public Member Functions

 DocInfo ()
 
 DocInfo (const std::string &directory)
 Constructor with specific directory. More...
 
std::string directory () const
 Output directory. More...
 
void set_directory (const std::string &directory)
 
void enable_doc ()
 Enable documentation. More...
 
void disable_doc ()
 Disable documentation. More...
 
bool is_doc_enabled () const
 Are we documenting? More...
 
unsigned & number ()
 Number used (e.g.) for labeling output files. More...
 
unsigned number () const
 Number used (e.g.) for labeling output files. Const version. More...
 
std::string number_as_string () const
 Get number as a string (useful to completely avoid C-strings). More...
 
std::string & label ()
 String used (e.g.) for labeling output files. More...
 
std::string label () const
 String used (e.g.) for labeling output files. Const version. More...
 
void enable_error_if_directory_does_not_exist ()
 Call to throw an error if directory does not exist. More...
 
void disable_error_if_directory_does_not_exist ()
 Call to issue a warning if the directory does not exists. More...
 

Private Attributes

std::string Directory
 Directory name. More...
 
bool Doc_flag
 Doc or don't? More...
 
unsigned Number
 Number to label output file, say. More...
 
std::string Label
 String to label output file, say. More...
 
bool Directory_must_exist
 

Detailed Description

Information for documentation of results: Directory and file number to enable output in the form RESLT/filename11.dat, say. Documentation can be switched on and off.

Constructor & Destructor Documentation

◆ DocInfo() [1/2]

oomph::DocInfo::DocInfo ( )
inline

Constructor. Default settings: Current directory, step ‘0’, label="", full documentation enabled and output directory is required to exist when set_directory() is called.

505  : Directory("."),
506  Doc_flag(true),
507  Number(0),
508  Label(""),
510  {
511  }
unsigned Number
Number to label output file, say.
Definition: oomph_utilities.h:603
bool Doc_flag
Doc or don't?
Definition: oomph_utilities.h:600
bool Directory_must_exist
Definition: oomph_utilities.h:612
std::string Directory
Directory name.
Definition: oomph_utilities.h:597
std::string Label
String to label output file, say.
Definition: oomph_utilities.h:606

◆ DocInfo() [2/2]

oomph::DocInfo::DocInfo ( const std::string &  directory)
inline

Constructor with specific directory.

515  : Directory(directory),
516  Doc_flag(true),
517  Number(0),
518  Label(""),
520  {
521  }
std::string directory() const
Output directory.
Definition: oomph_utilities.h:524

Member Function Documentation

◆ directory()

std::string oomph::DocInfo::directory ( ) const
inline

Output directory.

525  {
526  return Directory;
527  }

References AxisymFvKParameters::Directory.

Referenced by PreconditionedFSICollapsibleChannelProblem< ELEMENT >::actions_before_newton_convergence_check(), oomph::TreeBasedRefineableMeshBase::adapt_mesh(), CantileverProblem< ELEMENT >::CantileverProblem(), oomph::BinaryTreeForest::check_all_neighbours(), oomph::OcTreeForest::check_all_neighbours(), oomph::QuadTreeForest::check_all_neighbours(), FourierDecomposedHelmholtzProblem< ELEMENT >::check_gamma(), VorticityRecoveryProblem< ELEMENT >::check_smoothed_vorticity(), CoatedDiskProblem< ELASTICITY_ELEMENT, HELMHOLTZ_ELEMENT >::CoatedDiskProblem(), BaseStateProblem< BASE_ELEMENT >::create_trace_file(), PerturbedStateProblem< BASE_ELEMENT, PERTURBED_ELEMENT >::create_trace_file(), StabilityProblem< BASE_ELEMENT, PERTURBED_ELEMENT >::create_trace_files(), demo_smoothing_with_linear_elasticity(), demo_smoothing_with_nonlinear_elasticity(), demo_smoothing_with_poisson(), oomph::SolidHelpers::doc_2D_principal_stress(), DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::doc_displ_and_veloc(), oomph::Z2ErrorEstimator::doc_flux(), oomph::FSI_functions::doc_fsi(), RefineableAdvectionDiffusionProblem< ELEMENT >::doc_solution(), SUPGAdvectionDiffusionProblem< ELEMENT >::doc_solution(), RefineableAdvectionDiffusionPipeProblem< ELEMENT >::doc_solution(), MeltContactProblem< ELEMENT >::doc_solution(), SolarRadiationProblem< ELEMENT >::doc_solution(), ContactProblem< ELEMENT >::doc_solution(), UnsteadyHeatMeltProblem< ELEMENT >::doc_solution(), CoatedDiskProblem< ELASTICITY_ELEMENT, HELMHOLTZ_ELEMENT >::doc_solution(), RefineableFishPoissonProblem< ELEMENT >::doc_solution(), GeomObjectAsGeneralisedElementProblem::doc_solution(), NavierStokesProblem< ELEMENT >::doc_solution(), UnstructuredSolidProblem< ELEMENT, MESH >::doc_solution(), PrescribedBoundaryDisplacementProblem< ELEMENT >::doc_solution(), EntryFlowProblem< ELEMENT >::doc_solution(), ConvectionProblem< NST_ELEMENT, AD_ELEMENT >::doc_solution(), RefineableConvectionProblem< NST_ELEMENT, AD_ELEMENT >::doc_solution(), DDConvectionProblem< NST_ELEMENT, AD_ELEMENT >::doc_solution(), RefineableDDConvectionProblem< NST_ELEMENT, AD_ELEMENT >::doc_solution(), ThermalProblem< ELEMENT >::doc_solution(), SteadyCurvedTubeProblem< ELEMENT >::doc_solution(), SteadyHelicalProblem< ELEMENT >::doc_solution(), FreeSurfaceRotationProblem< ELEMENT >::doc_solution(), SteadyTubeProblem< ELEMENT >::doc_solution(), SolidFreeSurfaceRotationProblem< ELEMENT >::doc_solution(), DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::doc_solution(), AnnularDiskProblem< ELASTICITY_ELEMENT >::doc_solution(), RingWithTRibProblem< ELASTICITY_ELEMENT >::doc_solution(), CompressedSquareProblem< ELEMENT >::doc_solution(), UnstructuredImmersedEllipseProblem< ELEMENT >::doc_solution(), RefineableUnsteadyHeatProblem< ELEMENT >::doc_solution(), FSIRingProblem::doc_solution(), TetmeshPoissonProblem< ELEMENT >::doc_solution(), FallingBlockProblem< ELEMENT >::doc_solution(), RisingBubbleProblem< ELEMENT >::doc_solution(), OneDPoissonProblem< ELEMENT >::doc_solution(), SheetGlueProblem< ELEMENT >::doc_solution(), TwoMeshFluxAdvectionDiffusionProblem< ELEMENT >::doc_solution(), AxisymmetricLinearElasticityProblem< ELEMENT, TIMESTEPPER >::doc_solution(), CapProblem< ELEMENT >::doc_solution(), PseudoSolidCapProblem< ELEMENT >::doc_solution(), BaseStateProblem< BASE_ELEMENT >::doc_solution(), PerturbedStateProblem< BASE_ELEMENT, PERTURBED_ELEMENT >::doc_solution(), MeltSpinningProblem< ELEMENT >::doc_solution(), InterfaceProblem< ELEMENT, TIMESTEPPER >::doc_solution(), RotatingCylinderProblem< ELEMENT, TIMESTEPPER >::doc_solution(), ElasticRingProblem< ELEMENT >::doc_solution(), FourierDecomposedHelmholtzProblem< ELEMENT >::doc_solution(), UnsteadyHeatProblem< ELEMENT >::doc_solution(), StefanBoltzmannProblem< ELEMENT >::doc_solution(), HelmholtzPointSourceProblem< ELEMENT >::doc_solution(), ScatteringProblem< ELEMENT >::doc_solution(), AirwayReopeningProblem< ELEMENT >::doc_solution(), CoatedSphereProblem< ELASTICITY_ELEMENT, HELMHOLTZ_ELEMENT >::doc_solution(), DeformableFishPoissonProblem< ELEMENT >::doc_solution(), SegregatedFSICollapsibleChannelProblem< ELEMENT >::doc_solution(), OscRingNStProblem< ELEMENT >::doc_solution(), PressureWaveFSIProblem< FLUID_ELEMENT, SOLID_ELEMENT >::doc_solution(), PseudoElasticCollapsibleChannelProblem< FLUID_ELEMENT, SOLID_ELEMENT >::doc_solution(), UnstructuredFSIProblem< FLUID_ELEMENT, SOLID_ELEMENT >::doc_solution(), PeriodicLoadProblem< ELEMENT >::doc_solution(), RefineablePeriodicLoadProblem< ELEMENT >::doc_solution(), RectangularDrivenCavityProblem< ELEMENT >::doc_solution(), PoissonProblem< ELEMENT >::doc_solution(), MultiPoissonProblem< ELEMENT >::doc_solution(), LinearWaveProblem< ELEMENT, TIMESTEPPER >::doc_solution(), FlowPastBoxProblem< ELEMENT >::doc_solution(), MovingBlockProblem< ELEMENT >::doc_solution(), RefineableDrivenCavityProblem< ELEMENT >::doc_solution(), QuarterCircleDrivenCavityProblem< ELEMENT >::doc_solution(), PRefineableDrivenCavityProblem< ELEMENT >::doc_solution(), RefineableTwoDPoissonProblem< ELEMENT >::doc_solution(), RefineableTwoMeshFluxPoissonProblem< ELEMENT >::doc_solution(), CantileverProblem< ELEMENT >::doc_solution(), RefineableSphereConvectionProblem< ELEMENT >::doc_solution(), AxisymFreeSurfaceNozzleAdvDiffRobinProblem< ELEMENT >::doc_solution(), FluxPoissonMGProblem< ELEMENT, MESH >::doc_solution(), UnitCubePoissonMGProblem< ELEMENT, MESH >::doc_solution(), BrethertonProblem< ELEMENT >::doc_solution(), ChannelWithLeafletProblem< ELEMENT >::doc_solution(), QuarterCircleDrivenCavityProblem2< ELEMENT >::doc_solution(), OscEllipseProblem< ELEMENT, TIMESTEPPER >::doc_solution(), RayleighProblem< ELEMENT, TIMESTEPPER >::doc_solution(), RayleighTractionProblem< ELEMENT, TIMESTEPPER >::doc_solution(), FpTestProblem::doc_solution(), ChannelSpineFlowProblem< ELEMENT >::doc_solution(), SpikedChannelSpineFlowProblem< ELEMENT >::doc_solution(), ThreeDimBethertonProblem< ELEMENT >::doc_solution(), ElasticInterfaceProblem< ELEMENT, TIMESTEPPER >::doc_solution(), TurekNonFSIProblem< ELEMENT >::doc_solution(), UnstructuredFluidProblem< ELEMENT >::doc_solution(), RefineablePoissonProblem< ELEMENT >::doc_solution(), PMLFourierDecomposedHelmholtzProblem< ELEMENT >::doc_solution(), PMLProblem< ELEMENT >::doc_solution(), ElasticAnnulusProblem< ELASTICITY_ELEMENT >::doc_solution(), EighthSpherePoissonProblem< ELEMENT >::doc_solution(), FishPoissonProblem< ELEMENT >::doc_solution(), SimpleRefineableFishPoissonProblem< ELEMENT >::doc_solution(), RefineableOneDPoissonProblem< ELEMENT >::doc_solution(), PRefineableOneDPoissonProblem< ELEMENT >::doc_solution(), FluxPoissonProblem< ELEMENT >::doc_solution(), TwoMeshFluxPoissonProblem< ELEMENT >::doc_solution(), PolarNSProblem< ELEMENT >::doc_solution(), oomph::StreamfunctionProblem::doc_solution(), StaticDiskCompressionProblem< ELEMENT >::doc_solution(), DiskOscillationProblem< ELEMENT >::doc_solution(), SimpleShearProblem< ELEMENT >::doc_solution(), ElasticFishProblem< ELEMENT >::doc_solution(), BlockCompressionProblem< ELEMENT >::doc_solution(), EultingSphereProblem< ELEMENT >::doc_solution(), RefineableElutingSphereProblem< ELEMENT >::doc_solution(), TwoMeshFluxSteadyAxisymAdvectionDiffusionProblem< ELEMENT >::doc_solution(), FourierDecomposedTimeHarmonicLinearElasticityProblem< ELEMENT >::doc_solution(), ThreeDPoissonProblem< ELEMENT >::doc_solution(), TestPoissonProblem< ELEMENT >::doc_solution(), TestRefineablePoissonProblem< ELEMENT >::doc_solution(), oomph::NonLinearElasticitySmoothMesh< ELEMENT >::doc_solution(), oomph::FpPressureAdvectionDiffusionProblem< ELEMENT >::doc_solution(), VorticityRecoveryProblem< ELEMENT >::doc_solution(), oomph::BiharmonicProblem< DIM >::doc_solution(), oomph::BiharmonicFluidProblem< DIM >::doc_solution(), FSIChannelWithLeafletProblem< ELEMENT >::doc_solution(), FSICollapsibleChannelProblem< ELEMENT >::doc_solution(), FSIDrivenCavityProblem< ELEMENT >::doc_solution(), TurekProblem< FLUID_ELEMENT, SOLID_ELEMENT >::doc_solution(), CollapsibleChannelProblem< ELEMENT >::doc_solution(), ShellProblem< ELEMENT >::doc_solution(), YoungLaplaceProblem< ELEMENT >::doc_solution(), RefineableYoungLaplaceProblem< ELEMENT >::doc_solution(), DrivenCavityProblem< ELEMENT, MESH >::doc_solution(), RefineableSphericalCouetteProblem< ELEMENT >::doc_solution(), RefineableSphericalSpinUpProblem< ELEMENT >::doc_solution(), SphericalSpinUpProblem< ELEMENT >::doc_solution(), oomph::WomersleyProblem< ELEMENT, DIM >::doc_solution(), SurfactantProblem< ELEMENT, INTERFACE_ELEMENT >::doc_solution(), OscRingNStProblem< ELEMENT >::doc_solution_historic(), SegregatedFSICollapsibleChannelProblem< ELEMENT >::doc_solution_steady(), SegregatedFSICollapsibleChannelProblem< ELEMENT >::doc_solution_unsteady(), doc_sparse_node_update(), ElasticCollapsibleChannelMesh< ELEMENT >::ElasticCollapsibleChannelMesh(), ElasticRefineableCollapsibleChannelMesh< ELEMENT >::ElasticRefineableCollapsibleChannelMesh(), GeomObjectAsGeneralisedElementProblem::GeomObjectAsGeneralisedElementProblem(), main(), oomph::OcTreeForest::open_hanging_node_files(), oomph::QuadTreeForest::open_hanging_node_files(), output_both_versions(), oomph::TreeBasedRefineableMeshBase::p_adapt_mesh(), oomph::RefineableMeshBase::p_refine_uniformly(), parallel_test(), CapProblem< ELEMENT >::parameter_study(), PseudoSolidCapProblem< ELEMENT >::parameter_study(), StaticDiskCompressionProblem< ELEMENT >::parameter_study(), BrethertonProblem< ELEMENT >::parameter_study(), AirwayReopeningProblem< ELEMENT >::parameter_study(), ElasticRingProblem< ELEMENT >::parameter_study(), oomph::RefineableMeshBase::refine_uniformly(), oomph::RefineableQuadFromTriangleMesh< ELEMENT >::refine_uniformly(), RefineableUnsteadyHeatProblem< ELEMENT >::RefineableUnsteadyHeatProblem(), DeformableFishPoissonProblem< ELEMENT >::run(), DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::run(), DiskOscillationProblem< ELEMENT >::run(), DrivenCavityProblem< ELEMENT, MESH >::run(), run_impedance_tube(), ShellProblem< ELEMENT >::run_it(), CompressedSquareProblem< ELEMENT >::run_it(), run_it(), CantileverProblem< ELEMENT >::run_it(), run_navier_stokes_outflow(), run_prescribed_flux(), run_prescribed_pressure_gradient(), StefanBoltzmannProblem< ELEMENT >::setup_sb_radiation(), oomph::TetMeshBase::snap_to_quadratic_surface(), ShellProblem< ELEMENT >::solve(), SegregatedFSICollapsibleChannelProblem< ELEMENT >::steady_run(), SphericalSpinUpProblem< ELEMENT >::timestep(), ElasticRingProblem< ELEMENT >::unsteady_run(), LinearWaveProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), SegregatedFSICollapsibleChannelProblem< ELEMENT >::unsteady_run(), InterfaceProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), ElasticInterfaceProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), OscRingNStProblem< ELEMENT >::unsteady_run(), RayleighProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), RayleighTractionProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), CollapsibleChannelProblem< ELEMENT >::unsteady_run(), UnstructuredSolidProblem< ELEMENT, MESH >::UnstructuredSolidProblem(), and RefineableUnsteadyHeatProblem< ELEMENT >::write_trace_file_header().

◆ disable_doc()

◆ disable_error_if_directory_does_not_exist()

void oomph::DocInfo::disable_error_if_directory_does_not_exist ( )
inline

Call to issue a warning if the directory does not exists.

591  {
592  Directory_must_exist = false;
593  }

◆ enable_doc()

void oomph::DocInfo::enable_doc ( )
inline

◆ enable_error_if_directory_does_not_exist()

void oomph::DocInfo::enable_error_if_directory_does_not_exist ( )
inline

Call to throw an error if directory does not exist.

585  {
586  Directory_must_exist = true;
587  }

◆ is_doc_enabled()

◆ label() [1/2]

◆ label() [2/2]

std::string oomph::DocInfo::label ( ) const
inline

String used (e.g.) for labeling output files. Const version.

579  {
580  return Label;
581  }

◆ number() [1/2]

unsigned& oomph::DocInfo::number ( )
inline

Number used (e.g.) for labeling output files.

555  {
556  return Number;
557  }

References oomph::Global_unsigned::Number.

Referenced by NavierStokesProblem< ELEMENT >::actions_after_newton_solve(), EntryFlowProblem< ELEMENT >::actions_after_newton_solve(), FreeSurfaceRotationProblem< ELEMENT >::actions_after_newton_solve(), RefineableAdvectionDiffusionProblem< ELEMENT >::actions_before_adapt(), RefineableAdvectionDiffusionPipeProblem< ELEMENT >::actions_before_adapt(), PreconditionedFSICollapsibleChannelProblem< ELEMENT >::actions_before_newton_convergence_check(), oomph::TreeBasedRefineableMeshBase::adapt_mesh(), oomph::BinaryTreeForest::check_all_neighbours(), oomph::OcTreeForest::check_all_neighbours(), oomph::QuadTreeForest::check_all_neighbours(), FourierDecomposedHelmholtzProblem< ELEMENT >::check_gamma(), ContactProblem< ELEMENT >::ContactProblem(), oomph::SolidHelpers::doc_2D_principal_stress(), DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::doc_displ_and_veloc(), oomph::Z2ErrorEstimator::doc_flux(), oomph::FSI_functions::doc_fsi(), RefineableAdvectionDiffusionProblem< ELEMENT >::doc_solution(), SUPGAdvectionDiffusionProblem< ELEMENT >::doc_solution(), AxisymFvKProblem< ELEMENT >::doc_solution(), UnstructuredFvKProblem< ELEMENT >::doc_solution(), RefineableAdvectionDiffusionPipeProblem< ELEMENT >::doc_solution(), ExtrudedMovingCylinderProblem< TWO_D_ELEMENT, THREE_D_ELEMENT >::doc_solution(), MeltContactProblem< ELEMENT >::doc_solution(), SolarRadiationProblem< ELEMENT >::doc_solution(), ContactProblem< ELEMENT >::doc_solution(), UnsteadyHeatMeltProblem< ELEMENT >::doc_solution(), CoatedDiskProblem< ELASTICITY_ELEMENT, HELMHOLTZ_ELEMENT >::doc_solution(), RefineableFishPoissonProblem< ELEMENT >::doc_solution(), GeomObjectAsGeneralisedElementProblem::doc_solution(), NavierStokesProblem< ELEMENT >::doc_solution(), UnstructuredSolidProblem< ELEMENT, MESH >::doc_solution(), PrescribedBoundaryDisplacementProblem< ELEMENT >::doc_solution(), EntryFlowProblem< ELEMENT >::doc_solution(), ConvectionProblem< NST_ELEMENT, AD_ELEMENT >::doc_solution(), RefineableConvectionProblem< NST_ELEMENT, AD_ELEMENT >::doc_solution(), DDConvectionProblem< NST_ELEMENT, AD_ELEMENT >::doc_solution(), RefineableDDConvectionProblem< NST_ELEMENT, AD_ELEMENT >::doc_solution(), ThermalProblem< ELEMENT >::doc_solution(), PMLStructuredCubicHelmholtz< ELEMENT >::doc_solution(), PMLHelmholtzMGProblem< ELEMENT >::doc_solution(), FreeSurfaceRotationProblem< ELEMENT >::doc_solution(), SolidFreeSurfaceRotationProblem< ELEMENT >::doc_solution(), DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::doc_solution(), AnnularDiskProblem< ELASTICITY_ELEMENT >::doc_solution(), RingWithTRibProblem< ELASTICITY_ELEMENT >::doc_solution(), FlowAroundCylinderProblem< ELEMENT >::doc_solution(), CompressedSquareProblem< ELEMENT >::doc_solution(), UnstructuredImmersedEllipseProblem< ELEMENT >::doc_solution(), AxisymmetricVibratingShellProblem< ELEMENT >::doc_solution(), VibratingShellProblem< ELEMENT >::doc_solution(), UnstructuredPoissonProblem< ELEMENT >::doc_solution(), RefineableUnsteadyHeatProblem< ELEMENT >::doc_solution(), TwoLayerInterfaceProblem< ELEMENT >::doc_solution(), BubbleInChannelProblem< ELEMENT >::doc_solution(), DropInChannelProblem< ELEMENT >::doc_solution(), UnstructuredFluidProblem< ELEMENT >::doc_solution(), FSIRingProblem::doc_solution(), TetmeshPoissonProblem< ELEMENT >::doc_solution(), FallingBlockProblem< ELEMENT >::doc_solution(), RisingBubbleProblem< ELEMENT >::doc_solution(), OneDPoissonProblem< ELEMENT >::doc_solution(), SheetGlueProblem< ELEMENT >::doc_solution(), TwoMeshFluxAdvectionDiffusionProblem< ELEMENT >::doc_solution(), AxisymmetricLinearElasticityProblem< ELEMENT, TIMESTEPPER >::doc_solution(), CapProblem< ELEMENT >::doc_solution(), PseudoSolidCapProblem< ELEMENT >::doc_solution(), BaseStateProblem< BASE_ELEMENT >::doc_solution(), PerturbedStateProblem< BASE_ELEMENT, PERTURBED_ELEMENT >::doc_solution(), MeltSpinningProblem< ELEMENT >::doc_solution(), InterfaceProblem< ELEMENT, TIMESTEPPER >::doc_solution(), RotatingCylinderProblem< ELEMENT, TIMESTEPPER >::doc_solution(), ElasticRingProblem< ELEMENT >::doc_solution(), FourierDecomposedHelmholtzProblem< ELEMENT >::doc_solution(), UnsteadyHeatProblem< ELEMENT >::doc_solution(), StefanBoltzmannProblem< ELEMENT >::doc_solution(), HelmholtzPointSourceProblem< ELEMENT >::doc_solution(), ScatteringProblem< ELEMENT >::doc_solution(), AirwayReopeningProblem< ELEMENT >::doc_solution(), CoatedSphereProblem< ELASTICITY_ELEMENT, HELMHOLTZ_ELEMENT >::doc_solution(), DeformableFishPoissonProblem< ELEMENT >::doc_solution(), SegregatedFSICollapsibleChannelProblem< ELEMENT >::doc_solution(), OscRingNStProblem< ELEMENT >::doc_solution(), PressureWaveFSIProblem< FLUID_ELEMENT, SOLID_ELEMENT >::doc_solution(), PseudoElasticCollapsibleChannelProblem< FLUID_ELEMENT, SOLID_ELEMENT >::doc_solution(), UnstructuredFSIProblem< FLUID_ELEMENT, SOLID_ELEMENT >::doc_solution(), RectangularDrivenCavityProblem< ELEMENT >::doc_solution(), PoissonProblem< ELEMENT >::doc_solution(), MultiPoissonProblem< ELEMENT >::doc_solution(), LinearWaveProblem< ELEMENT, TIMESTEPPER >::doc_solution(), FlowPastBoxProblem< ELEMENT >::doc_solution(), MovingBlockProblem< ELEMENT >::doc_solution(), RefineableDrivenCavityProblem< ELEMENT >::doc_solution(), QuarterCircleDrivenCavityProblem< ELEMENT >::doc_solution(), PRefineableDrivenCavityProblem< ELEMENT >::doc_solution(), RefineableTwoDPoissonProblem< ELEMENT >::doc_solution(), RefineableTwoMeshFluxPoissonProblem< ELEMENT >::doc_solution(), CantileverProblem< ELEMENT >::doc_solution(), AxisymFreeSurfaceNozzleAdvDiffRobinProblem< ELEMENT >::doc_solution(), FluxPoissonMGProblem< ELEMENT, MESH >::doc_solution(), UnitCubePoissonMGProblem< ELEMENT, MESH >::doc_solution(), BrethertonProblem< ELEMENT >::doc_solution(), ChannelWithLeafletProblem< ELEMENT >::doc_solution(), QuarterCircleDrivenCavityProblem2< ELEMENT >::doc_solution(), OscEllipseProblem< ELEMENT, TIMESTEPPER >::doc_solution(), RayleighProblem< ELEMENT, TIMESTEPPER >::doc_solution(), RayleighTractionProblem< ELEMENT, TIMESTEPPER >::doc_solution(), FpTestProblem::doc_solution(), ChannelSpineFlowProblem< ELEMENT >::doc_solution(), SpikedChannelSpineFlowProblem< ELEMENT >::doc_solution(), ThreeDimBethertonProblem< ELEMENT >::doc_solution(), ElasticInterfaceProblem< ELEMENT, TIMESTEPPER >::doc_solution(), TurekNonFSIProblem< ELEMENT >::doc_solution(), RefineablePoissonProblem< ELEMENT >::doc_solution(), PMLFourierDecomposedHelmholtzProblem< ELEMENT >::doc_solution(), PMLProblem< ELEMENT >::doc_solution(), ElasticAnnulusProblem< ELASTICITY_ELEMENT >::doc_solution(), EighthSpherePoissonProblem< ELEMENT >::doc_solution(), FishPoissonProblem< ELEMENT >::doc_solution(), SimpleRefineableFishPoissonProblem< ELEMENT >::doc_solution(), RefineableOneDPoissonProblem< ELEMENT >::doc_solution(), PRefineableOneDPoissonProblem< ELEMENT >::doc_solution(), FluxPoissonProblem< ELEMENT >::doc_solution(), TwoMeshFluxPoissonProblem< ELEMENT >::doc_solution(), PolarNSProblem< ELEMENT >::doc_solution(), oomph::StreamfunctionProblem::doc_solution(), StaticDiskCompressionProblem< ELEMENT >::doc_solution(), DiskOscillationProblem< ELEMENT >::doc_solution(), SimpleShearProblem< ELEMENT >::doc_solution(), ElasticFishProblem< ELEMENT >::doc_solution(), BlockCompressionProblem< ELEMENT >::doc_solution(), TwoMeshFluxSteadyAxisymAdvectionDiffusionProblem< ELEMENT >::doc_solution(), ThreeDPoissonProblem< ELEMENT >::doc_solution(), TestPoissonProblem< ELEMENT >::doc_solution(), TestRefineablePoissonProblem< ELEMENT >::doc_solution(), oomph::NonLinearElasticitySmoothMesh< ELEMENT >::doc_solution(), oomph::FpPressureAdvectionDiffusionProblem< ELEMENT >::doc_solution(), VorticityRecoveryProblem< ELEMENT >::doc_solution(), oomph::BiharmonicProblem< DIM >::doc_solution(), FSIChannelWithLeafletProblem< ELEMENT >::doc_solution(), FSICollapsibleChannelProblem< ELEMENT >::doc_solution(), FSIDrivenCavityProblem< ELEMENT >::doc_solution(), TurekProblem< FLUID_ELEMENT, SOLID_ELEMENT >::doc_solution(), CollapsibleChannelProblem< ELEMENT >::doc_solution(), ShellProblem< ELEMENT >::doc_solution(), YoungLaplaceProblem< ELEMENT >::doc_solution(), RefineableYoungLaplaceProblem< ELEMENT >::doc_solution(), DrivenCavityProblem< ELEMENT, MESH >::doc_solution(), RefineableSphericalSpinUpProblem< ELEMENT >::doc_solution(), SphericalSpinUpProblem< ELEMENT >::doc_solution(), oomph::WomersleyProblem< ELEMENT, DIM >::doc_solution(), SurfactantProblem< ELEMENT, INTERFACE_ELEMENT >::doc_solution(), OscRingNStProblem< ELEMENT >::doc_solution_historic(), SegregatedFSICollapsibleChannelProblem< ELEMENT >::doc_solution_steady(), SegregatedFSICollapsibleChannelProblem< ELEMENT >::doc_solution_unsteady(), AxisymmetricVibratingShellProblem< ELEMENT >::dump_it(), VibratingShellProblem< ELEMENT >::dump_it(), RefineableUnsteadyHeatProblem< ELEMENT >::dump_it(), FSIRingProblem::dynamic_run(), ElasticCollapsibleChannelMesh< ELEMENT >::ElasticCollapsibleChannelMesh(), ElasticRefineableCollapsibleChannelMesh< ELEMENT >::ElasticRefineableCollapsibleChannelMesh(), main(), MeltContactProblem< ELEMENT >::MeltContactProblem(), oomph::OcTreeForest::open_hanging_node_files(), oomph::QuadTreeForest::open_hanging_node_files(), oomph::NonLinearElasticitySmoothMesh< ELEMENT >::operator()(), PolarNSProblem< ELEMENT >::output_streamfunction(), oomph::TreeBasedRefineableMeshBase::p_adapt_mesh(), CapProblem< ELEMENT >::parameter_study(), PseudoSolidCapProblem< ELEMENT >::parameter_study(), StaticDiskCompressionProblem< ELEMENT >::parameter_study(), BrethertonProblem< ELEMENT >::parameter_study(), AirwayReopeningProblem< ELEMENT >::parameter_study(), ElasticRingProblem< ELEMENT >::parameter_study(), StabilityProblem< BASE_ELEMENT, PERTURBED_ELEMENT >::perform_power_method(), RefineableFishPoissonProblem< ELEMENT >::RefineableFishPoissonProblem(), RefineableUnsteadyHeatProblem< ELEMENT >::RefineableUnsteadyHeatProblem(), AxisymmetricVibratingShellProblem< ELEMENT >::restart(), VibratingShellProblem< ELEMENT >::restart(), RefineableUnsteadyHeatProblem< ELEMENT >::restart(), DeformableFishPoissonProblem< ELEMENT >::run(), ElasticFishProblem< ELEMENT >::run(), SheetGlueProblem< ELEMENT >::run(), SimpleShearProblem< ELEMENT >::run(), BlockCompressionProblem< ELEMENT >::run(), run(), DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::run(), DiskOscillationProblem< ELEMENT >::run(), DrivenCavityProblem< ELEMENT, MESH >::run(), run_impedance_tube(), ShellProblem< ELEMENT >::run_it(), run_it(), PoissonProblem< ELEMENT >::run_it(), run_navier_stokes_outflow(), run_prescribed_flux(), run_prescribed_pressure_gradient(), run_test(), StabilityProblem< BASE_ELEMENT, PERTURBED_ELEMENT >::set_up_periodic_base_flow(), StefanBoltzmannProblem< ELEMENT >::setup_sb_radiation(), SolarRadiationProblem< ELEMENT >::SolarRadiationProblem(), ShellProblem< ELEMENT >::solve(), solve_with_fully_automatic_adaptation(), solve_with_incremental_adaptation(), solve_with_selected_refinement_pattern(), MeltSpinningProblem< ELEMENT >::steady_run(), SegregatedFSICollapsibleChannelProblem< ELEMENT >::steady_run(), AxisymFreeSurfaceNozzleAdvDiffRobinProblem< ELEMENT >::steady_run(), PseudoElasticCollapsibleChannelProblem< FLUID_ELEMENT, SOLID_ELEMENT >::steady_run(), SphericalSpinUpProblem< ELEMENT >::timestep(), ElasticRingProblem< ELEMENT >::unsteady_run(), LinearWaveProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), StabilityProblem< BASE_ELEMENT, PERTURBED_ELEMENT >::unsteady_run(), SegregatedFSICollapsibleChannelProblem< ELEMENT >::unsteady_run(), RotatingCylinderProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), InterfaceProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), ElasticInterfaceProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), OscRingNStProblem< ELEMENT >::unsteady_run(), PseudoElasticCollapsibleChannelProblem< FLUID_ELEMENT, SOLID_ELEMENT >::unsteady_run(), RayleighProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), RayleighTractionProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), CollapsibleChannelProblem< ELEMENT >::unsteady_run(), FlowAroundCylinderProblem< ELEMENT >::unsteady_simulation(), and UnsteadyHeatMeltProblem< ELEMENT >::UnsteadyHeatMeltProblem().

◆ number() [2/2]

unsigned oomph::DocInfo::number ( ) const
inline

Number used (e.g.) for labeling output files. Const version.

561  {
562  return Number;
563  }

References oomph::Global_unsigned::Number.

◆ number_as_string()

std::string oomph::DocInfo::number_as_string ( ) const
inline

Get number as a string (useful to completely avoid C-strings).

567  {
569  }
std::string to_string(T object, unsigned float_precision=8)
Definition: oomph_utilities.h:189

References oomph::Global_unsigned::Number, and oomph::StringConversion::to_string().

◆ set_directory()

void oomph::DocInfo::set_directory ( const std::string &  directory_)

Set output directory (we try to open a file in it to see if the directory exists – if it doesn't we'll issue a warning – or, if directory_must_exist()==true, throw and OomphLibError

Set output directory (we try to open a file in it to see if the directory exists – if it doesn't we'll issue a warning – or, if directory_must_exist()==true, die by throwing and OomphLibError

299  {
300  // Try to open a file in output directory
301  std::ostringstream filename;
302  filename << directory_ << "/.dummy_check.dat";
303  std::ofstream some_file;
304  some_file.open(filename.str().c_str());
305  if (!some_file.is_open())
306  {
307  // Construct the error message
308  std::string error_message = "Problem opening output file.\n";
309  error_message += "I suspect you haven't created the output directory ";
310  error_message += directory_;
311  error_message += "\n";
312 
313  // Issue a warning if the directory does not have to exist
315  {
316  // Create an Oomph Lib warning
317  OomphLibWarning(
318  error_message, "set_directory()", OOMPH_EXCEPTION_LOCATION);
319  }
320  // Otherwise throw an error
321  else
322  {
323  error_message += "and the Directory_must_exist flag is true.\n";
324  throw OomphLibError(
326  }
327  }
328  // Write to the dummy file
329  some_file << "Dummy file, opened to check if output directory "
330  << std::endl;
331  some_file << "exists. Can be deleted...." << std::endl;
332  some_file.close();
333  // Set directory
334  Directory = directory_;
335  }
string filename
Definition: MergeRestartFiles.py:39
std::string string(const unsigned &i)
Definition: oomph_definitions.cc:286
#define OOMPH_EXCEPTION_LOCATION
Definition: oomph_definitions.h:61
#define OOMPH_CURRENT_FUNCTION
Definition: oomph_definitions.h:86

References Directory, Directory_must_exist, MergeRestartFiles::filename, OOMPH_CURRENT_FUNCTION, OOMPH_EXCEPTION_LOCATION, and oomph::Global_string_for_annotation::string().

Referenced by AnnularDiskProblem< ELASTICITY_ELEMENT >::AnnularDiskProblem(), BubbleInChannelProblem< ELEMENT >::BubbleInChannelProblem(), CoatedDiskProblem< ELASTICITY_ELEMENT, HELMHOLTZ_ELEMENT >::CoatedDiskProblem(), ContactProblem< ELEMENT >::ContactProblem(), ConvectionProblem< NST_ELEMENT, AD_ELEMENT >::ConvectionProblem(), DDConvectionProblem< NST_ELEMENT, AD_ELEMENT >::DDConvectionProblem(), demo_smoothing_with_linear_elasticity(), demo_smoothing_with_nonlinear_elasticity(), demo_smoothing_with_poisson(), doc_sparse_node_update(), DropInChannelProblem< ELEMENT >::DropInChannelProblem(), FSIRingProblem::dynamic_run(), ElasticAnnulusProblem< ELASTICITY_ELEMENT >::ElasticAnnulusProblem(), ElasticCollapsibleChannelMesh< ELEMENT >::ElasticCollapsibleChannelMesh(), ElasticRefineableCollapsibleChannelMesh< ELEMENT >::ElasticRefineableCollapsibleChannelMesh(), GeomObjectAsGeneralisedElementProblem::GeomObjectAsGeneralisedElementProblem(), main(), MeltContactProblem< ELEMENT >::MeltContactProblem(), output_both_versions(), parallel_test(), ElasticBeamProblem::parameter_study(), CapProblem< ELEMENT >::parameter_study(), PseudoSolidCapProblem< ELEMENT >::parameter_study(), StaticDiskCompressionProblem< ELEMENT >::parameter_study(), BrethertonProblem< ELEMENT >::parameter_study(), AirwayReopeningProblem< ELEMENT >::parameter_study(), PrescribedBoundaryDisplacementProblem< ELEMENT >::PrescribedBoundaryDisplacementProblem(), RefineableAdvectionDiffusionPipeProblem< ELEMENT >::RefineableAdvectionDiffusionPipeProblem(), RefineableAdvectionDiffusionProblem< ELEMENT >::RefineableAdvectionDiffusionProblem(), RefineableConvectionProblem< NST_ELEMENT, AD_ELEMENT >::RefineableConvectionProblem(), RefineableDDConvectionProblem< NST_ELEMENT, AD_ELEMENT >::RefineableDDConvectionProblem(), RefineableFishPoissonProblem< ELEMENT >::RefineableFishPoissonProblem(), RefineableUnsteadyHeatProblem< ELEMENT >::RefineableUnsteadyHeatProblem(), RingWithTRibProblem< ELASTICITY_ELEMENT >::RingWithTRibProblem(), DeformableFishPoissonProblem< ELEMENT >::run(), ElasticFishProblem< ELEMENT >::run(), SheetGlueProblem< ELEMENT >::run(), SimpleShearProblem< ELEMENT >::run(), BlockCompressionProblem< ELEMENT >::run(), run(), DiskShockWaveProblem< ELEMENT, TIMESTEPPER >::run(), DiskOscillationProblem< ELEMENT >::run(), DrivenCavityProblem< ELEMENT, MESH >::run(), run_impedance_tube(), ShellProblem< ELEMENT >::run_it(), CompressedSquareProblem< ELEMENT >::run_it(), CantileverProblem< ELEMENT >::run_it(), run_it(), run_navier_stokes_outflow(), run_prescribed_flux(), run_prescribed_pressure_gradient(), run_test(), CantileverProblem< ELEMENT >::run_tests(), SolarRadiationProblem< ELEMENT >::SolarRadiationProblem(), ShellProblem< ELEMENT >::solve(), solve_with_fully_automatic_adaptation(), solve_with_incremental_adaptation(), solve_with_selected_refinement_pattern(), MeltSpinningProblem< ELEMENT >::steady_run(), SegregatedFSICollapsibleChannelProblem< ELEMENT >::steady_run(), AxisymFreeSurfaceNozzleAdvDiffRobinProblem< ELEMENT >::steady_run(), SUPGAdvectionDiffusionProblem< ELEMENT >::SUPGAdvectionDiffusionProblem(), SurfactantProblem< ELEMENT, INTERFACE_ELEMENT >::SurfactantProblem(), ThermalProblem< ELEMENT >::ThermalProblem(), SphericalSpinUpProblem< ELEMENT >::timestep(), TwoLayerInterfaceProblem< ELEMENT >::TwoLayerInterfaceProblem(), ElasticRingProblem< ELEMENT >::unsteady_run(), LinearWaveProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), SegregatedFSICollapsibleChannelProblem< ELEMENT >::unsteady_run(), RotatingCylinderProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), InterfaceProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), ElasticInterfaceProblem< ELEMENT, TIMESTEPPER >::unsteady_run(), CollapsibleChannelProblem< ELEMENT >::unsteady_run(), UnsteadyHeatMeltProblem< ELEMENT >::UnsteadyHeatMeltProblem(), UnstructuredFluidProblem< ELEMENT >::UnstructuredFluidProblem(), UnstructuredImmersedEllipseProblem< ELEMENT >::UnstructuredImmersedEllipseProblem(), and UnstructuredSolidProblem< ELEMENT, MESH >::UnstructuredSolidProblem().

Member Data Documentation

◆ Directory

std::string oomph::DocInfo::Directory
private

Directory name.

Referenced by set_directory().

◆ Directory_must_exist

bool oomph::DocInfo::Directory_must_exist
private

Boolean flag to decide response if an output directory doesn't exist: If true, we terminate code execution by throwing an OomphLibError rather than just issuing a warning.

Referenced by set_directory().

◆ Doc_flag

bool oomph::DocInfo::Doc_flag
private

Doc or don't?

◆ Label

std::string oomph::DocInfo::Label
private

String to label output file, say.

◆ Number

unsigned oomph::DocInfo::Number
private

Number to label output file, say.


The documentation for this class was generated from the following files: