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...
 
unsignednumber ()
 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: