MILC staggered UML inverter (optimized bicgstab). More...
#include <fermiqcd_staggered_uml_inverter.h>
Static Public Member Functions | |
| static inversion_stats | inverter (staggered_field &psi_out, staggered_field &psi_in, gauge_field &U, coefficients &coeff, mdp_real absolute_precision=staggered_inversion_precision, mdp_real relative_precision=0, int max_steps=2000) |
MILC staggered UML inverter (optimized bicgstab).
The algorithm is taken form hep-lat/9212007 This is best algorithm for staggered fermions
It inverts mul_Q(psi_out,psi_in,U,coeff) iteratively
| psi_out | the output field passed by reference | |
| psi_in | the input field passed by reference | |
| U | the gauge field to be passed to mul_Q | |
| coeff | the gauge parameters to be passed to mul_Q | |
| absolute_precision | the target absolute precision | |
| relative_precision | the target relative precision | |
| max_steps | the maximum number of steps |
Example:
/// gauge_field U(lattice,nc);
/// staggered_field psi(lattice,nc);
/// staggered_field chi(lattice,nc);
/// coefficinets coeff;
/// coeff["kappa"]=1.12;
/// U.load("myfield");
/// psi.load("myfield_psi");
/// default_staggered_inverter=StaggeredBiCGUML::inverter;
/// default_staggered_action=StaggeredAsqtadActionFast::mul_Q;
/// mul_invQ(chi,psi,U,coeff);
/// chi.save("myfield_chi");
/// | static inversion_stats StaggeredBiCGUML::inverter | ( | staggered_field & | psi_out, | |
| staggered_field & | psi_in, | |||
| gauge_field & | U, | |||
| coefficients & | coeff, | |||
| mdp_real | absolute_precision = staggered_inversion_precision, |
|||
| mdp_real | relative_precision = 0, |
|||
| int | max_steps = 2000 | |||
| ) | [inline, static] |
1.6.1