zolotarev_coeffs.cc File Reference

#include <math.h>
#include <stdlib.h>
#include <stdio.h>
#include "zolotarev.h"

Go to the source code of this file.

Defines

#define VERSION   Source Time-stamp: <19-OCT-2004 09:33:22.00 adk@MISSCONTRARY>
#define MAX(a, b)   ((a) > (b) ? (a) : (b))
#define MIN(a, b)   ((a) < (b) ? (a) : (b))
#define INTERNAL_PRECISION   long double
#define ZOLOTAREV_DATA   izd
#define ZPRECISION   INTERNAL_PRECISION
#define M_PI
#define ZERO   ((INTERNAL_PRECISION) 0)
#define ONE   ((INTERNAL_PRECISION) 1)
#define TWO   ((INTERNAL_PRECISION) 2)
#define THREE   ((INTERNAL_PRECISION) 3)
#define FOUR   ((INTERNAL_PRECISION) 4)
#define HALF   (ONE/TWO)
#define PP2(x)   #x
#define PP1(a, b, c)   a ## b(c)
#define STRINGIFY(name)   PP1(PP,2,name)

Functions

static void construct_partfrac (izd *z)
static INTERNAL_PRECISION * poly_factored_to_dense (INTERNAL_PRECISION A, INTERNAL_PRECISION *a, int d)
static INTERNAL_PRECISION * contfrac_A (INTERNAL_PRECISION *, INTERNAL_PRECISION *, INTERNAL_PRECISION *, INTERNAL_PRECISION *, int, int)
static INTERNAL_PRECISION * contfrac_B (INTERNAL_PRECISION *, INTERNAL_PRECISION *, INTERNAL_PRECISION *, INTERNAL_PRECISION *, int, int)
static void construct_contfrac (izd *z)
static INTERNAL_PRECISION AGM (INTERNAL_PRECISION a, INTERNAL_PRECISION b, INTERNAL_PRECISION s)
static void sncndnFK (INTERNAL_PRECISION u, INTERNAL_PRECISION k, INTERNAL_PRECISION *sn, INTERNAL_PRECISION *cn, INTERNAL_PRECISION *dn, INTERNAL_PRECISION *elF, INTERNAL_PRECISION *elK)
zolotarev_data * zolotarev (PRECISION epsilon, int n, int type)
zolotarev_data * higham (PRECISION epsilon, int n)
void zolotarev_free (zolotarev_data *rdata)

Variables

static INTERNAL_PRECISION U
static INTERNAL_PRECISION F
static INTERNAL_PRECISION K


Define Documentation

#define FOUR   ((INTERNAL_PRECISION) 4)

Definition at line 49 of file zolotarev_coeffs.cc.

Referenced by zolotarev().

#define HALF   (ONE/TWO)

Definition at line 50 of file zolotarev_coeffs.cc.

Referenced by AGM(), higham(), and zolotarev().

#define INTERNAL_PRECISION   long double

Definition at line 26 of file zolotarev_coeffs.cc.

Referenced by AGM(), construct_contfrac(), construct_partfrac(), contfrac_A(), contfrac_B(), higham(), poly_factored_to_dense(), sncndnFK(), and zolotarev().

#define M_PI

Value:

((INTERNAL_PRECISION) 3.141592653589793238462643383279502884197\
169399375105820974944592307816406286208998628034825342117068)

Definition at line 41 of file zolotarev_coeffs.cc.

Referenced by AGM(), higham(), Chroma::RemezGMP::initialGuess(), and Chroma::su2_a_0_kp().

#define MAX ( a,
 )     ((a) > (b) ? (a) : (b))

Definition at line 22 of file zolotarev_coeffs.cc.

Referenced by construct_contfrac().

#define MIN ( a,
 )     ((a) < (b) ? (a) : (b))

Definition at line 23 of file zolotarev_coeffs.cc.

#define ONE   ((INTERNAL_PRECISION) 1)

Definition at line 46 of file zolotarev_coeffs.cc.

Referenced by AGM(), construct_contfrac(), construct_partfrac(), higham(), sncndnFK(), and zolotarev().

#define PP1 ( a,
b,
 )     a ## b(c)

Definition at line 56 of file zolotarev_coeffs.cc.

#define PP2 (  )     #x

Definition at line 55 of file zolotarev_coeffs.cc.

#define STRINGIFY ( name   )     PP1(PP,2,name)

Definition at line 57 of file zolotarev_coeffs.cc.

#define THREE   ((INTERNAL_PRECISION) 3)

Definition at line 48 of file zolotarev_coeffs.cc.

Referenced by zolotarev().

#define TWO   ((INTERNAL_PRECISION) 2)

Definition at line 47 of file zolotarev_coeffs.cc.

Referenced by AGM(), and zolotarev().

#define VERSION   Source Time-stamp: <19-OCT-2004 09:33:22.00 adk@MISSCONTRARY>

Definition at line 2 of file zolotarev_coeffs.cc.

#define ZERO   ((INTERNAL_PRECISION) 0)

Definition at line 45 of file zolotarev_coeffs.cc.

Referenced by construct_partfrac(), contfrac_A(), contfrac_B(), and zolotarev().

#define ZOLOTAREV_DATA   izd

Definition at line 32 of file zolotarev_coeffs.cc.

#define ZPRECISION   INTERNAL_PRECISION

Definition at line 34 of file zolotarev_coeffs.cc.


Function Documentation

static INTERNAL_PRECISION AGM ( INTERNAL_PRECISION  a,
INTERNAL_PRECISION  b,
INTERNAL_PRECISION  s 
) [static]

Definition at line 246 of file zolotarev_coeffs.cc.

References F, HALF, INTERNAL_PRECISION, K, M_PI, ONE, TWO, and U.

Referenced by sncndnFK().

static void construct_contfrac ( izd *  z  )  [static]

Definition at line 156 of file zolotarev_coeffs.cc.

References Chroma::StagPhases::beta(), contfrac_A(), contfrac_B(), INTERNAL_PRECISION, MAX, ONE, poly_factored_to_dense(), and q.

Referenced by higham(), and zolotarev().

static void construct_partfrac ( izd *  z  )  [static]

Definition at line 62 of file zolotarev_coeffs.cc.

References Chroma::StagPhases::alpha(), INTERNAL_PRECISION, ONE, and ZERO.

Referenced by higham(), and zolotarev().

static INTERNAL_PRECISION * contfrac_A ( INTERNAL_PRECISION *  ,
INTERNAL_PRECISION *  ,
INTERNAL_PRECISION *  ,
INTERNAL_PRECISION *  ,
int  ,
int   
) [static]

Definition at line 173 of file zolotarev_coeffs.cc.

References contfrac_B(), INTERNAL_PRECISION, and ZERO.

Referenced by construct_contfrac(), and contfrac_B().

static INTERNAL_PRECISION * contfrac_B ( INTERNAL_PRECISION *  ,
INTERNAL_PRECISION *  ,
INTERNAL_PRECISION *  ,
INTERNAL_PRECISION *  ,
int  ,
int   
) [static]

Definition at line 198 of file zolotarev_coeffs.cc.

References contfrac_A(), INTERNAL_PRECISION, and ZERO.

Referenced by construct_contfrac(), and contfrac_A().

zolotarev_data* higham ( PRECISION  epsilon,
int  n 
)

Definition at line 415 of file zolotarev_coeffs.cc.

References Chroma::StagPhases::alpha(), Chroma::StagPhases::beta(), construct_contfrac(), construct_partfrac(), HALF, INTERNAL_PRECISION, m, M_PI, ONE, and PRECISION.

Referenced by Chroma::EvenOddPrecHtContFrac5DFermActArray::init(), Chroma::EvenOddPrecOvExtFermActArray::init(), Chroma::EvenOddPrecOvlapContFrac5DFermActArray::init(), Chroma::OvlapPartFrac4DFermAct::init(), Chroma::UnprecHTContFrac5DFermActArray::init(), Chroma::UnprecOvExtFermActArray::init(), Chroma::UnprecOvlapContFrac5DFermActArray::init(), Chroma::EvenOddPrecZoloNEFFermActArray::initCoeffs(), Chroma::UnprecZoloNEFFermActArray::initCoeffs(), and Chroma::OvlapPartFrac4DFermAct::initPrec().

static INTERNAL_PRECISION* poly_factored_to_dense ( INTERNAL_PRECISION  A,
INTERNAL_PRECISION *  a,
int  d 
) [static]

Definition at line 85 of file zolotarev_coeffs.cc.

References INTERNAL_PRECISION.

Referenced by construct_contfrac().

static void sncndnFK ( INTERNAL_PRECISION  u,
INTERNAL_PRECISION  k,
INTERNAL_PRECISION *  sn,
INTERNAL_PRECISION *  cn,
INTERNAL_PRECISION *  dn,
INTERNAL_PRECISION *  elF,
INTERNAL_PRECISION *  elK 
) [static]

Definition at line 271 of file zolotarev_coeffs.cc.

References AGM(), F, INTERNAL_PRECISION, K, ONE, and U.

Referenced by zolotarev().

zolotarev_data* zolotarev ( PRECISION  epsilon,
int  n,
int  type 
)

Definition at line 294 of file zolotarev_coeffs.cc.

References Chroma::StagPhases::alpha(), Chroma::StagPhases::beta(), construct_contfrac(), construct_partfrac(), F, FOUR, HALF, INTERNAL_PRECISION, l, m, ONE, PRECISION, sncndnFK(), THREE, TWO, and ZERO.

Referenced by Chroma::EvenOddPrecHtContFrac5DFermActArray::init(), Chroma::EvenOddPrecOvExtFermActArray::init(), Chroma::EvenOddPrecOvlapContFrac5DFermActArray::init(), Chroma::OvlapPartFrac4DFermAct::init(), Chroma::UnprecHTContFrac5DFermActArray::init(), Chroma::UnprecOvExtFermActArray::init(), Chroma::UnprecOvlapContFrac5DFermActArray::init(), Chroma::EvenOddPrecZoloNEFFermActArray::initCoeffs(), Chroma::UnprecZoloNEFFermActArray::initCoeffs(), and Chroma::OvlapPartFrac4DFermAct::initPrec().

void zolotarev_free ( zolotarev_data *  rdata  ) 

Definition at line 508 of file zolotarev_coeffs.cc.


Variable Documentation

INTERNAL_PRECISION F [static]

Definition at line 228 of file zolotarev_coeffs.cc.

Referenced by AGM(), Chroma::InlineNprVertex::func(), Chroma::InlineNoisyBuildingBlocks::func(), Chroma::InlineBuildingBlocks::func(), main(), sncndnFK(), and zolotarev().

INTERNAL_PRECISION K [static]

Definition at line 228 of file zolotarev_coeffs.cc.

Referenced by AGM(), Chroma::QIOReadObjCallMapEnv::QIOReadMapObj(), and sncndnFK().

INTERNAL_PRECISION U [static]

Definition at line 228 of file zolotarev_coeffs.cc.

Referenced by AGM(), Chroma::Private::FunctorImplBase< R >::Clone(), Chroma::CloverTermBase< T, U >::deriv(), Chroma::CloverTermBase< T, U >::deriv_loops(), Chroma::CloverTermBase< T, U >::derivTrLn(), Chroma::DiracToDRMat(), Chroma::InlineDiscoEoEigCGEnv::do_disco(), Chroma::InlineDiscoEigCGEnv::do_disco(), Chroma::InlineNprVertex::func(), Chroma::InlineNoisyBuildingBlocks::func(), Chroma::InlineBuildingBlocks::func(), Chroma::InvEigCG2ArrayEnv::InvEigCG2_T(), Chroma::InvEigCG2Env::InvEigCG2_T(), Chroma::InvGMRESR_CG_a(), Chroma::InvRelGMRESR_CG_a(), Chroma::InvRelGMRESR_SUMR_a(), Chroma::InvRelSUMR(), Chroma::InvRelSUMR_a(), Chroma::InvSUMR(), Chroma::InvSUMR_a(), main(), Chroma::QDPCloverTermT< T, U >::makeClov(), Chroma::QDPCloverEnv::makeClovSiteLoop(), Chroma::mesFieldT(), Chroma::MInvRelSUMR(), Chroma::MInvRelSUMR_a(), Chroma::MInvSUMR(), Chroma::MInvSUMR_a(), Chroma::OverlapFermActBase::multiQprop(), Chroma::InvEigCG2Env::new_InvEigCG2_T(), Chroma::InvEigCG2ArrayEnv::old_InvEigCG2_T(), Chroma::Ovlap4DQprop::operator()(), Chroma::InlineQQQDiquarkEnv::InlineMeas::operator()(), Chroma::InlineQQbar::operator()(), Chroma::ExternalFieldEnv::LinearElectricExternalField::operator()(), Chroma::ExternalFieldEnv::ConstantMagneticExternalField::operator()(), Chroma::PauliToDRMat(), Chroma::InlineDiscoEoEigCGEnv::PRchi(), Chroma::InlineDiscoEigCGEnv::PRchi(), Chroma::readKYUQprop(), sncndnFK(), Chroma::sysSolver(), Chroma::TDiracToDRMat(), and Chroma::QDPCloverEnv::triaCntrSiteLoop().


Generated on Sun Nov 22 04:38:34 2009 for CHROMA by  doxygen 1.4.7