29int main(
int argc,
char**argv) {
36 << setprecision(numeric_limits<Float>::digits10)
37 <<
"# metric " << metric << endl
38 <<
"# s lambda umax det(mantissa,base,exp) |u| |grad(u)| |residue|"
40 for (
size_t n = 0; F.get(din,xh); ++n) {
41 problem::determinant_type det;
42 if (n > 0 || metric !=
"spherical") det = F.update_derivative(xh);
43 const space& Xh = xh.second.get_space();
49 dout << F.parameter() <<
" " << xh.first
50 <<
" " << xh.second.max_abs()
51 <<
" " << det.mantissa
53 <<
" " << det.exponant
54 <<
" " << sqrt(m(xh.second,xh.second))
55 <<
" " << sqrt(a(xh.second,xh.second))
58 dot_xh = F.direction (xh);
59 F.refresh (F.parameter(), xh, dot_xh);
see the field page for the full documentation
see the catchmark page for the full documentation
see the environment page for the full documentation
see the continuation page for the full documentation
see the space page for the full documentation
see the test page for the full documentation
see the test page for the full documentation
The combustion problem: class header for the Newton method.
This file is part of Rheolef.
std::enable_if< details::has_field_rdof_interface< Expr >::value, details::field_expr_v2_nonlinear_terminal_field< typenameExpr::scalar_type, typenameExpr::memory_type, details::differentiate_option::gradient > >::type grad(const Expr &expr)
grad(uh): see the expression page for the full documentation
std::enable_if< details::is_field_expr_v2_nonlinear_arg< Expr >::value &&!is_undeterminated< Result >::value, Result >::type integrate(const geo_basic< T, M > &omega, const Expr &expr, const integrate_option &iopt, Result dummy=Result())
see the integrate page for the full documentation
rheolef::std enable_if ::type dot const Expr1 expr1, const Expr2 expr2 dot(const Expr1 &expr1, const Expr2 &expr2)
rheolef - reference manual
float_type dual_space_dot(const field &mrh, const field &msh) const
field residue(const field &uh) const