SOFA API  014b24ea Open source framework for multi-physics simuation
sofa::component::linearsolver::JacobiPreconditioner< TMatrix, TVector > Class Template Reference

`#include <JacobiPreconditioner.h>`

Linear solver based on a diagonal matrix (i.e. Jacobi preconditioner) More...

Inheritance diagram for sofa::component::linearsolver::JacobiPreconditioner< TMatrix, TVector >: [legend]

## Detailed Description

### template<class TMatrix, class TVector> class sofa::component::linearsolver::JacobiPreconditioner< TMatrix, TVector >

Linear solver based on a diagonal matrix (i.e. Jacobi preconditioner)

## Public Attributes

Data< boolf_verbose
Dump system state at each iteration. More...

## Public Member Functions

SOFA_CLASS (SOFA_TEMPLATE2(JacobiPreconditioner, TMatrix, TVector), SOFA_TEMPLATE2(sofa::component::linearsolver::MatrixLinearSolver, TMatrix, TVector))

void setSystemMBKMatrix (const core::MechanicalParams *mparams) override

void solve (Matrix &M, Vector &x, Vector &b) override
Solve P^-1 Mx= P^-1 b. More...

void invert (Matrix &M) override

## Static Public Member Functions

static const std::string GetCustomTemplateName ()

## Protected Member Functions

JacobiPreconditioner ()

## Attribute details

template<class TMatrix , class TVector >
 Data sofa::component::linearsolver::JacobiPreconditioner< TMatrix, TVector >::f_verbose

Dump system state at each iteration.

## Constructor details

template<class TMatrix , class TVector >
 sofa::component::linearsolver::JacobiPreconditioner< TMatrix, TVector >::JacobiPreconditioner ( )
protected

## Function details

template<class TMatrix , class TVector >
 static const std::string sofa::component::linearsolver::JacobiPreconditioner< TMatrix, TVector >::GetCustomTemplateName ( )
inlinestatic

Returns the sofa template name. By default the name of the c++ class signature is exposed... so we need to override that by implementing GetCustomTemplateName() function More details on the name customization infrastructure is in NameDecoder.h

template<class TMatrix , class TVector >
 void sofa::component::linearsolver::JacobiPreconditioner< TMatrix, TVector >::invert ( Matrix & M )
override
template<class TMatrix , class TVector >
 void sofa::component::linearsolver::JacobiPreconditioner< TMatrix, TVector >::setSystemMBKMatrix ( const core::MechanicalParams * mparams )
override
template<class TMatrix , class TVector >
 sofa::component::linearsolver::JacobiPreconditioner< TMatrix, TVector >::SOFA_CLASS ( SOFA_TEMPLATE2(JacobiPreconditioner< TMatrix, TVector >, TMatrix, TVector) , SOFA_TEMPLATE2(sofa::component::linearsolver::MatrixLinearSolver, TMatrix, TVector) )
template<class TMatrix , class TVector >
 void sofa::component::linearsolver::JacobiPreconditioner< TMatrix, TVector >::solve ( Matrix & M, Vector & x, Vector & b )
override

Solve P^-1 Mx= P^-1 b.
{"ft_lang_label":"__label__en","ft_lang_prob":0.5035599,"math_prob":0.71869874,"size":1500,"snap":"2020-34-2020-40","text_gpt3_token_len":393,"char_repetition_ratio":0.15040107,"word_repetition_ratio":0.125,"special_character_ratio":0.22533333,"punctuation_ratio":0.2811245,"nsfw_num_words":0,"has_unicode_error":false,"math_prob_llama3":0.96469206,"pos_list":[0,1,2,3,4],"im_url_duplicate_count":[null,null,null,1,null],"WARC_HEADER":"{\"WARC-Type\":\"response\",\"WARC-Date\":\"2020-09-24T09:38:56Z\",\"WARC-Record-ID\":\"<urn:uuid:1340bcd4-36c4-4613-8ce9-4032fb2a693a>\",\"Content-Length\":\"22884\",\"Content-Type\":\"application/http; msgtype=response\",\"WARC-Warcinfo-ID\":\"<urn:uuid:ee52f3f6-9b5b-436e-b669-f385d44ec56f>\",\"WARC-Concurrent-To\":\"<urn:uuid:56241edb-c33a-43ef-8c3b-bc7ec3f24132>\",\"WARC-IP-Address\":\"193.49.213.189\",\"WARC-Target-URI\":\"https://www.sofa-framework.org/api/master/sofa/html/classsofa_1_1component_1_1linearsolver_1_1_jacobi_preconditioner.html\",\"WARC-Payload-Digest\":\"sha1:4DI5RVIGW3FH56HRAQKA7BP5COKQE3KW\",\"WARC-Block-Digest\":\"sha1:IEV5YFNUHMXBBSHTJ2UCU33TYW7NYTQW\",\"WARC-Identified-Payload-Type\":\"application/xhtml+xml\",\"warc_filename\":\"/cc_download/warc_2020/CC-MAIN-2020-40/CC-MAIN-2020-40_segments_1600400214347.17_warc_CC-MAIN-20200924065412-20200924095412-00218.warc.gz\"}"}