blue_sky::jacobian_impl< strategy_t > Class Template Reference

Implementation of jacobian class methods, used to reduce some overhead. More...

#include <jacobian_impl.h>

List of all members.

Public Types

typedef strategy_t::item_t item_t
typedef strategy_t::index_t index_t
typedef strategy_t::matrix_t matrix_t
typedef strategy_t::csr_matrix_t bcsr_matrix_t
typedef strategy_t::item_array_t item_array_t
typedef
strategy_t::rhs_item_array_t 
rhs_item_array_t
typedef jacobian< strategy_t > jacobian_t
typedef jacobian_matrix
< strategy_t > 
jmatrix_t
typedef linear_solver_base
< strategy_t > 
linear_solver_t
typedef smart_ptr< jacobian_t,
true > 
sp_jacobian_t
typedef smart_ptr< jmatrix_t,
true > 
sp_jmatrix_t
typedef smart_ptr
< linear_solver_t, true > 
sp_linear_solver_t
typedef smart_ptr< matrix_tsp_matrix_t
typedef smart_ptr
< bcsr_matrix_t, true > 
sp_bcsr_matrix_t
typedef sp_linear_solver_t sp_solver_t

Public Member Functions

 jacobian_impl (sp_jacobian_t &jacobian, sp_jmatrix_t &jmatrix)
 ctor
void setup_jacobian ()
 Setups Jacobian solvers to solve Jacobian matrix.
item_t solve_jacobian (index_t &n_lin_iters)
 Solves Jacobian matrix with Jacobian solvers.
void full_matrix_print ()
 Prints Jacobian matrix.

Private Attributes

sp_jacobian_tjacobian_
 Jacobian.
sp_jmatrix_tjmatrix_
 Jacobian matrix.
sp_solver_t solver_
 Solver from Jacobian.
sp_solver_t preconditioner_
 Preconditioner from Jacobian.
rhs_item_array_trhs_
 RHS vector of Jacobian.
item_array_tsol_
 Solution vector of Jacobian.
sp_matrix_t regular_matrix_
 Regular part of Jacobian.
sp_matrix_t irregular_matrix_
 Irregular part of Jacobian.


Detailed Description

template<typename strategy_t>
class blue_sky::jacobian_impl< strategy_t >

Implementation of jacobian class methods, used to reduce some overhead.

Member Typedef Documentation

template<typename strategy_t>
typedef strategy_t::csr_matrix_t blue_sky::jacobian_impl< strategy_t >::bcsr_matrix_t

template<typename strategy_t>
typedef strategy_t::index_t blue_sky::jacobian_impl< strategy_t >::index_t

template<typename strategy_t>
typedef strategy_t::item_array_t blue_sky::jacobian_impl< strategy_t >::item_array_t

template<typename strategy_t>
typedef strategy_t::item_t blue_sky::jacobian_impl< strategy_t >::item_t

template<typename strategy_t>
typedef jacobian<strategy_t> blue_sky::jacobian_impl< strategy_t >::jacobian_t

template<typename strategy_t>
typedef jacobian_matrix<strategy_t> blue_sky::jacobian_impl< strategy_t >::jmatrix_t

template<typename strategy_t>
typedef linear_solver_base<strategy_t> blue_sky::jacobian_impl< strategy_t >::linear_solver_t

template<typename strategy_t>
typedef strategy_t::matrix_t blue_sky::jacobian_impl< strategy_t >::matrix_t

template<typename strategy_t>
typedef strategy_t::rhs_item_array_t blue_sky::jacobian_impl< strategy_t >::rhs_item_array_t

template<typename strategy_t>
typedef smart_ptr<bcsr_matrix_t, true> blue_sky::jacobian_impl< strategy_t >::sp_bcsr_matrix_t

template<typename strategy_t>
typedef smart_ptr<jacobian_t, true> blue_sky::jacobian_impl< strategy_t >::sp_jacobian_t

template<typename strategy_t>
typedef smart_ptr<jmatrix_t, true> blue_sky::jacobian_impl< strategy_t >::sp_jmatrix_t

template<typename strategy_t>
typedef smart_ptr<linear_solver_t, true> blue_sky::jacobian_impl< strategy_t >::sp_linear_solver_t

template<typename strategy_t>
typedef smart_ptr<matrix_t> blue_sky::jacobian_impl< strategy_t >::sp_matrix_t

template<typename strategy_t>
typedef sp_linear_solver_t blue_sky::jacobian_impl< strategy_t >::sp_solver_t


Constructor & Destructor Documentation

template<typename strategy_t>
blue_sky::jacobian_impl< strategy_t >::jacobian_impl ( sp_jacobian_t jacobian,
sp_jmatrix_t jmatrix 
) [inline]


Member Function Documentation

template<typename strategy_t>
void blue_sky::jacobian_impl< strategy_t >::full_matrix_print (  )  [inline]

template<typename strategy_t>
void blue_sky::jacobian_impl< strategy_t >::setup_jacobian (  )  [inline]

template<typename strategy_t>
item_t blue_sky::jacobian_impl< strategy_t >::solve_jacobian ( index_t n_lin_iters  )  [inline]

Solves Jacobian matrix with Jacobian solvers.

Parameters:
[out] Number of linear iteration used to solve Jacobian matrix
Returns:
Tolerance value
Todo:
Throw exception on error

References blue_sky::jacobian_impl< strategy_t >::jmatrix_, blue_sky::jacobian_impl< strategy_t >::rhs_, blue_sky::jacobian_impl< strategy_t >::sol_, and blue_sky::jacobian_impl< strategy_t >::solver_.

Referenced by blue_sky::main_loop_calc< strategy_t, is_w, is_g, is_o >::compute_small_time_step().


Member Data Documentation

template<typename strategy_t>
sp_matrix_t blue_sky::jacobian_impl< strategy_t >::irregular_matrix_ [private]

Irregular part of Jacobian.

Referenced by blue_sky::jacobian_impl< strategy_t >::full_matrix_print().

template<typename strategy_t>
sp_jacobian_t& blue_sky::jacobian_impl< strategy_t >::jacobian_ [private]

template<typename strategy_t>
sp_jmatrix_t& blue_sky::jacobian_impl< strategy_t >::jmatrix_ [private]

template<typename strategy_t>
sp_solver_t blue_sky::jacobian_impl< strategy_t >::preconditioner_ [private]

Preconditioner from Jacobian.

Referenced by blue_sky::jacobian_impl< strategy_t >::jacobian_impl().

template<typename strategy_t>
sp_matrix_t blue_sky::jacobian_impl< strategy_t >::regular_matrix_ [private]

Regular part of Jacobian.

Referenced by blue_sky::jacobian_impl< strategy_t >::full_matrix_print().

template<typename strategy_t>
rhs_item_array_t& blue_sky::jacobian_impl< strategy_t >::rhs_ [private]

RHS vector of Jacobian.

Referenced by blue_sky::jacobian_impl< strategy_t >::solve_jacobian().

template<typename strategy_t>
item_array_t& blue_sky::jacobian_impl< strategy_t >::sol_ [private]

Solution vector of Jacobian.

Referenced by blue_sky::jacobian_impl< strategy_t >::solve_jacobian().

template<typename strategy_t>
sp_solver_t blue_sky::jacobian_impl< strategy_t >::solver_ [private]


The documentation for this class was generated from the following file:

Generated on Fri Nov 13 12:07:13 2009 for TheBSEagleProject by  doxygen 1.5.8