/usr/include/trilinos/ContinuationManager.H is in libtrilinos-dev 10.4.0.dfsg-1ubuntu2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 | #ifndef CONTINUATION_MANAGER_H
#define CONTINUATION_MANAGER_H
// Trilinos headers
#include "Epetra_Time.h"
#include "LOCA_Stepper.H"
#include "Teuchos_XMLParameterListHelpers.hpp"
#include "LOCA_MultiContinuation_ConstraintInterfaceMVDX.H"
#include "LOCA_Epetra_Interface_xyzt.H"
#include "EpetraExt_MultiComm.h"
// DefCont headers
#include "ProblemLOCAPrototype.H"
class ContinuationManager {
public:
// Print or not a solution file
enum SolutionFileAttribute { NoPrint, Print };
// Constructor
ContinuationManager(
//const Teuchos::RCP< Epetra_MpiComm > & aComm ,
const Teuchos::RCP< Epetra_Comm > & aComm ,
const string & taskFileName);
// Destructor
~ContinuationManager();
// Instantiante the LOCA stepper
bool BuildLOCAStepper();
// Instantiante the LOCA stepper for periodic (xyzt) problems
bool BuildLOCAPeriodicStepper(const Teuchos::RCP<EpetraExt::MultiComm> globalComm);
// Perform some checks on the LOCA stepper
bool ValidateLOCAStepper();
// Start the LOCA stepper
bool RunLOCAStepper();
// Print Statistics
bool PrintLOCAStepperStatistics();
// Returns the name of the actual solution file
string GetSolutionFileName() const;
// Returns the name of the continuation file
string GetContinuationFileName() const;
// Returns the stepper id
int GetStepID() const;
// Getting the Task list it will
// be shared with a ProblemLOCAPrototype problem
Teuchos::RCP <Teuchos::ParameterList> GetTaskList() const;
// Determine whether a solution file is to be printed
SolutionFileAttribute GetSolutionFileAttribute() const;
// Set the ProblemLOCAPrototype problem
bool SetLOCAProblem(
const Teuchos::RCP <ProblemLOCAPrototype> & aProblem );
// Set the ProblemLOCAPrototype problem
bool SetLOCAConstraint(
const Teuchos::RCP <LOCA::MultiContinuation::ConstraintInterface> &
anInterfaceConstraint);
// Setting the task list
bool SetTaskList( Teuchos::RCP <Teuchos::ParameterList> aTaskList );
// Makes a string from a given integer
string StringifyInt( const int & intNumber ,
const int & digits) const;
private:
// The communicator
//Teuchos::RCP <Epetra_MpiComm> comm;
Teuchos::RCP <Epetra_Comm> comm;
// The continuation file name
string continuationFileName;
// The initial step label
int iniStepLabel;
// Intefrace to the eventual constraint
Teuchos::RCP <LOCA::MultiContinuation::ConstraintInterface> interfaceConstraint;
// // Is it a constrained problem?
// bool isConstrainedProblem;
// The LOCA global data
Teuchos::RCP<LOCA::GlobalData> locaGlobalData;
// The LOCA stepper
Teuchos::RCP <LOCA::Stepper> locaStepper;
// The LOCA stepper status
LOCA::Abstract::Iterator::IteratorStatus locaStepperStatus;
// Maximum number of steps allowed (iniStepLabel included)
int maxAllowedSteps;
// The output Directory
string outputDir;
// The ProblemLOCAPrototype problem
Teuchos::RCP <ProblemLOCAPrototype> problem;
// The extension for each solution (i.e. ".vtk")
string solutionFilesExtension;
// The flag to be assigned to each solution (i.e. "step_")
string solutionFilesPrefix;
// The task list
Teuchos::RCP <Teuchos::ParameterList> taskList;
// Time counter
Epetra_Time timeCounter;
};
#endif
|