Rheolef  7.1
an efficient C++ finite element environment
yield_slip2.icc
Go to the documentation of this file.
1 #include "poisson_robin.icc"
27  field mryh(Yh, 0.);
28  mryh[1] = -mrh;
29  field delta_yh(Yh);
30  pA.solve(mryh, delta_yh);
31  return delta_yh[1];
32 }
34  field rh (Wh);
35  pmb.solve (mrh, rh);
36  field rhs = b.trans_mult(rh);
37  field delta_vh (Xh, 0.);
38  pa.solve (rhs, delta_vh);
39  field mgh = b*delta_vh + c1*rh;
40  field gh (Wh);
41  pmb.solve (mgh, gh);
42  return gh;
43 }
44 Float yield_slip::space_norm (const field& rh) const {
45  return sqrt (mb(rh,rh));
46 }
48  field rh (Wh,0);
49  pmb.solve (mrh, rh);
50  return sqrt (dual (mrh,rh));
51 }
53  field uh = poisson_robin (Cf, boundary, lh);
54  return (Cf+r)*uh["boundary"];
55 }
56 void yield_slip::post (const field& beta_h, field& uh, field& lambda_h) const {
57  field rhs = lh - b.trans_mult(beta_h);
58  uh = field (Xh, 0.);
59  pa.solve (rhs, uh);
60  lambda_h = beta_h - r*uh["boundary"];
61 }
yield_slip::Wh
space Wh
Definition: yield_slip.h:42
yield_slip::pa
problem pa
Definition: yield_slip.h:46
poisson_robin.icc
The Poisson problem with Robin boundary condition – solver function.
gh
field gh(Float epsilon, Float t, const field &uh, const test &v)
Definition: burgers_diffusion_operators.icc:37
yield_slip::lh
field lh
Definition: yield_slip.h:43
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::b
form b
Definition: yield_slip.h:44
yield_slip::dual_space_norm
Float dual_space_norm(const field &) const
Definition: yield_slip2.icc:47
yield_slip::c1
form c1
Definition: yield_slip.h:45
rheolef::dual
rheolef::std enable_if ::type dual const Expr1 expr1, const Expr2 expr2 dual(const Expr1 &expr1, const Expr2 &expr2)
Definition: field_expr.h:260
yield_slip::pmb
problem pmb
Definition: yield_slip.h:46
yield_slip::r
Float r
Definition: yield_slip.h:40
yield_slip::Yh
space Yh
Definition: yield_slip.h:42
yield_slip::initial
field initial() const
Definition: yield_slip2.icc:52
yield_slip::derivative_solve
field derivative_solve(const field &mrh) const
Definition: yield_slip2.icc:26
Float
see the Float page for the full documentation
yield_slip::Cf
Float Cf
Definition: yield_slip.h:40
yield_slip::derivative_trans_mult
field derivative_trans_mult(const field &mrh) const
Definition: yield_slip2.icc:33
yield_slip::boundary
geo boundary
Definition: yield_slip.h:41
yield_slip::mb
form mb
Definition: yield_slip.h:44
yield_slip::space_norm
Float space_norm(const field &) const
Definition: yield_slip2.icc:44
poisson_robin
field poisson_robin(Float Cf, const geo &boundary, const field &lh)
Definition: poisson_robin.icc:25
yield_slip::Xh
space Xh
Definition: yield_slip.h:42
yield_slip::pA
problem pA
Definition: yield_slip.h:47