OpenFCST: The open-source Fuel Cell Simulation Toolbox
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
fcst
include
solvers
newton_w_3ppC.h
Go to the documentation of this file.
1
//---------------------------------------------------------------------------
2
// $Id: newton_w_3ppC.h 1354 2013-08-17 00:01:22Z secanell $
3
//
4
// Copyright (C) 2009 by Jason Boisvert
5
//
6
// This file is subject to QPL and may not be distributed
7
// without copyright and license information. Please refer
8
// to the file deal.II/doc/license.html for the text and
9
// further information on this license.
10
//
11
//---------------------------------------------------------------------------
12
13
#ifndef __deal2__appframe__newton_w_3ppC_h
14
#define __deal2__appframe__newton_w_3ppC_h
15
16
#include <
appframe/base.h
>
17
#include <
appframe/residual.h
>
18
#include <lac/solver_control.h>
19
#include <
newton_base.h
>
20
21
22
namespace
AppFrame
23
{
32
class
Newton3ppC
:
public
newtonBase
33
{
34
public
:
35
36
static
const
AppFrame::Event
bad_derivative
;
37
38
Newton3ppC
(
ApplicationBase
&
app
);
39
40
virtual
void
solve
(
AppFrame::FEVector
& u,
41
const
AppFrame::FEVectors
& in_vectors);
42
43
private
:
44
45
double
sum_of_squares
(
double
residual_norm);
46
50
double
three_point_step
(
int
line_search_iterations,
double
lambda_current,
double
lambda_previous,
double
mf_original,
double
mf_current,
double
mf_previous);
51
55
bool
armijo
(
double
step_length,
double
residual_norm,
double
new_residual_norm);
56
60
double
max_reduction_factor
;
61
double
min_reduction_factor
;
62
double
alpha
;
63
int
step
;
64
};
65
}
66
67
#endif
Generated on Fri Aug 30 2013 17:15:54 for OpenFCST: The open-source Fuel Cell Simulation Toolbox by
1.8.2