Trilinos based (stochastic) FEM solvers
main.cpp
Go to the documentation of this file.
1
/*
2
Brian Staber (brian.staber@gmail.com)
3
*/
4
5
#include "Epetra_ConfigDefs.h"
6
#ifdef HAVE_MPI
7
#include "mpi.h"
8
#include "Epetra_MpiComm.h"
9
#else
10
#include "Epetra_SerialComm.h"
11
#endif
12
13
#include "
linearPatchTest.hpp
"
14
#include "Teuchos_RCP.hpp"
15
#include "Teuchos_ParameterList.hpp"
16
#include "Teuchos_StandardCatchMacros.hpp"
17
#include "Teuchos_CommandLineProcessor.hpp"
18
#include "Teuchos_XMLParameterListCoreHelpers.hpp"
19
20
int
main
(
int
argc,
char
*argv[]){
21
22
std::string xmlInFileName =
""
;
23
24
Teuchos::CommandLineProcessor clp(
false
);
25
clp.setOption(
"xml-in-file"
,&xmlInFileName,
"The XML file to read into a parameter list"
);
26
clp.setDocString(
"TO DO."
);
27
28
Teuchos::CommandLineProcessor::EParseCommandLineReturn
29
parse_return = clp.parse(argc,argv);
30
if
( parse_return != Teuchos::CommandLineProcessor::PARSE_SUCCESSFUL ) {
31
std::cout <<
"\nEnd Result: TEST FAILED"
<< std::endl;
32
return
parse_return;
33
}
34
35
#ifdef HAVE_MPI
36
MPI_Init(&argc, &argv);
37
Epetra_MpiComm Comm(MPI_COMM_WORLD);
38
#else
39
Epetra_SerialComm Comm;
40
#endif
41
42
Teuchos::RCP<Teuchos::ParameterList> paramList = Teuchos::rcp(
new
Teuchos::ParameterList);
43
if
(xmlInFileName.length()) {
44
Teuchos::updateParametersFromXmlFile(xmlInFileName, inoutArg(*paramList));
45
}
46
47
if
(Comm.MyPID()==0){
48
paramList->print(std::cout,2,
true
,
true
);
49
}
50
Teuchos::RCP<linearPatchTest>
interface
= Teuchos::rcp(new linearPatchTest(Comm,*paramList));
51
double
errorL2 = interface->solve(
true
);
52
if
(Comm.MyPID()==0){
53
std::cout <<
"-----------------------------\n"
;
54
std::cout <<
"||u||_L^2 = "
<< errorL2 <<
"\n"
;
55
std::cout <<
"-----------------------------\n"
;
56
}
57
58
#ifdef HAVE_MPI
59
MPI_Finalize();
60
#endif
61
return
0;
62
63
}
linearPatchTest.hpp
main
int main(int argc, char *argv[])
Definition:
main.cpp:23
cee530
linearpatchtest
main.cpp
Generated by
1.8.13