Query: solver_abtb
OS: debian
Section: 2rheolef
Links: debian man pages all man pages
Forums: unix linux community forum categories
Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar
solver_abtb(2rheolef) rheolef-6.1 solver_abtb(2rheolef)NAMEsolver_abtb -- direct or iterative solver iterface for mixed linear systemsSYNOPSISsolver_abtb stokes (a,b,mp); solver_abtb elasticity (a,b,c,mp);DESCRIPTIONThe solver_abtb class provides direct or iterative algorithms for some mixed problem: [ A B^T ] [ u ] [ Mf ] [ ] [ ] = [ ] [ B -C ] [ p ] [ Mg ] where A is symmetric positive definite and C is symmetric positive. By default, iterative algorithms are considered for tridimensional problems and direct methods otherwise. Such mixed linear problems appears for instance with the discretization of Stokes problems. The C matrix can be zero and then the corresponding argument can be omitted when invoking the constructor. Non-zero C matrix appears for of Stokes problems with stabilized P1-P1 element, or for nearly incompressible elasticity problems.DIRECT ALGORITHMWhen the kernel of B^T is not reduced to zero, then the pressure p is defined up to a constant and the system is singular. In the case of iterative methods, this is not a problem. But when using direct method, the system is then completed to impose a constraint on the pres- sure term and the whole matrix is factored one time for all.ITERATIVE ALGORITHMThe preconditionned conjugate gradient algorithm is used, where the mp matrix is used as preconditionner. See see mixed_solver(4).EXAMPLESSee the user's manual for practical examples for the nearly incompressible elasticity, the Stokes and the Navier-Stokes problems.IMPLEMENTATIONtemplate <class T, class M = rheo_default_memory_model> class solver_abtb_basic { public: // typedefs: typedef typename csr<T,M>::size_type size_type; // allocators: solver_abtb_basic (); solver_abtb_basic (const csr<T,M>& a, const csr<T,M>& b, const csr<T,M>& mp, const solver_option_type& opt = solver_option_type()); solver_abtb_basic (const csr<T,M>& a, const csr<T,M>& b, const csr<T,M>& c, const csr<T,M>& mp, const solver_option_type& opt = solver_option_type()); // accessors: void solve (const vec<T,M>& f, const vec<T,M>& g, vec<T,M>& u, vec<T,M>& p) const; protected: // internal void init(); // data: mutable solver_option_type _opt; csr<T,M> _a; csr<T,M> _b; csr<T,M> _c; csr<T,M> _mp; solver_basic<T,M> _sA; solver_basic<T,M> _sa; solver_basic<T,M> _smp; bool _need_constraint; }; typedef solver_abtb_basic<Float,rheo_default_memory_model> solver_abtb;SEE ALSOmixed_solver(4) rheolef-6.1 rheolef-6.1 solver_abtb(2rheolef)
Related Man Pages |
---|
asr(2rheolef) - debian |
branch(2rheolef) - debian |
dia(2rheolef) - debian |
form(2rheolef) - debian |
vec(2rheolef) - centos |
Similar Topics in the Unix Linux Community |
---|
Installation Problem in Unix Openserver |
libXm and libXpm problem. |
OpenBSD Ftp permissions problems - help!! |
Channelflow 1.2.2 (Default branch) |
FEATFLOW 1.3-RC10 (Default branch) |