Rheolef  7.1
an efficient C++ finite element environment
yield_slip_damped_newton.cc
Go to the documentation of this file.
1 #include "rheolef.h"
26 using namespace std;
27 using namespace rheolef;
28 #include "yield_slip.h"
29 int main(int argc, char**argv) {
30  environment rheolef (argc,argv);
31  geo omega (argv[1]);
32  string approx = (argc > 2) ? argv[2] : "P1";
33  Float S = (argc > 3) ? atof(argv[3]) : 0.6;
34  Float n = (argc > 4) ? atof(argv[4]) : 1;
35  Float Cf = (argc > 5) ? atof(argv[5]) : 1;
36  Float r = (argc > 6) ? atof(argv[6]) : 1;
37  domain boundary = omega["boundary"];
38  yield_slip F (S, n, Cf, r, omega, boundary, approx);
39  field beta_h = F.initial();
41  size_t max_iter = 10000;
42  int status = damped_newton (F, beta_h, tol, max_iter, &derr);
43  field uh, lambda_h;
44  F.post (beta_h, uh, lambda_h);
45  dout << setprecision(numeric_limits<Float>::digits10)
46  << catchmark("S") << S << endl
47  << catchmark("n") << n << endl
48  << catchmark("Cf") << Cf << endl
49  << catchmark("r") << r << endl
50  << catchmark("u") << uh
51  << catchmark("lambda") << lambda_h;
52  return status;
53 }
mkgeo_ball.n
int n
Definition: mkgeo_ball.sh:150
rheolef::catchmark
see the catchmark page for the full documentation
Definition: catchmark.h:67
field
see the field page for the full documentation
yield_slip::post
void post(const field &beta_h, field &uh, field &lambda_h) const
Definition: yield_slip2.icc:56
yield_slip.h
The yield slip problem – class header.
main
int main(int argc, char **argv)
Definition: yield_slip_damped_newton.cc:29
yield_slip
Definition: yield_slip.h:25
rheolef.h
rheolef - reference manual
mkgeo_ugrid.boundary
int boundary
Definition: mkgeo_ugrid.sh:181
yield_slip::initial
field initial() const
Definition: yield_slip2.icc:52
rheolef::environment
see the environment page for the full documentation
Definition: environment.h:115
rheolef
This file is part of Rheolef.
Definition: compiler_eigen.h:37
Float
see the Float page for the full documentation
rheolef::damped_newton
int damped_newton(const Problem &P, const Preconditioner &T, Field &u, Real &tol, Size &max_iter, odiststream *p_derr=0)
see the damped_newton page for the full documentation
Definition: damped-newton-generic.h:29
epsilon
Float epsilon
Definition: transmission_error.cc:25
rheolef::std
Definition: vec_expr_v2.h:402
mkgeo_contraction.status
status
Definition: mkgeo_contraction.sh:290
geo
see the geo page for the full documentation