Rheolef  7.1
an efficient C++ finite element environment
lambda_c.h
Go to the documentation of this file.
1 struct alpha_c_fun {
26  typedef Float value_type;
27  typedef Float float_type;
28  alpha_c_fun() : _f1(0) {}
29  Float residue (const Float& a) const { return tanh(a) - 1/a; }
30  void update_derivative (const Float& a) const {
31  _f1 = 1/sqr(cosh(a)) + 1/sqr(a); }
32  Float derivative_solve (const Float& r) const { return r/_f1; }
33  Float dual_space_norm (const Float& r) const { return abs(r); }
34  mutable Float _f1;
35 };
38  size_t max_iter = 100;
39  alpha_c_fun f;
40  Float ac = 1;
41  newton (alpha_c_fun(), ac, tol, max_iter);
42  return ac;
43 }
45  Float ac = alpha_c();
46  return 8*sqr(ac/cosh(ac));
47 }
see the Float page for the full documentation
Float alpha_c()
Definition: lambda_c.h:36
Float lambda_c()
Definition: lambda_c.h:44
int newton(const Problem &P, Field &uh, Float &tol, size_t &max_iter, odiststream *p_derr=0)
see the newton page for the full documentation
Definition: newton.h:98
Float float_type
Definition: lambda_c.h:27
Float _f1
Definition: lambda_c.h:34
alpha_c_fun()
Definition: lambda_c.h:28
Float derivative_solve(const Float &r) const
Definition: lambda_c.h:32
Float value_type
Definition: lambda_c.h:26
Float residue(const Float &a) const
Definition: lambda_c.h:29
Float dual_space_norm(const Float &r) const
Definition: lambda_c.h:33
void update_derivative(const Float &a) const
Definition: lambda_c.h:30
Float epsilon