SALSA Analysis Modules
|
Prototypes for using the standard modules. More...
#include "petsc.h"
Go to the source code of this file.
Prototypes for using the standard modules.
Definition in file anamodsalsamodules.h.
#define DIAGONAL_INDEFINITE 0 |
Definition at line 41 of file anamodsalsamodules.h.
Referenced by ComputeDiagonal().
#define DIAGONAL_INDEFINITE_WITH_ZEROS 11 |
Definition at line 45 of file anamodsalsamodules.h.
#define DIAGONAL_NEGATIVE -2 |
Definition at line 43 of file anamodsalsamodules.h.
Referenced by ComputeDiagonal().
#define DIAGONAL_NONNEGATIVE 1 |
Definition at line 40 of file anamodsalsamodules.h.
Referenced by ComputeDiagonal().
#define DIAGONAL_NONPOSITIVE -1 |
Definition at line 42 of file anamodsalsamodules.h.
Referenced by ComputeDiagonal().
#define DIAGONAL_POSITIVE 2 |
Definition at line 39 of file anamodsalsamodules.h.
Referenced by ComputeDiagonal().
#define DIAGONAL_ZERO 10 |
Definition at line 44 of file anamodsalsamodules.h.
Referenced by ComputeDiagonal().
PetscErrorCode AnaModDeregisterSalsaModules | ( | void | ) |
Definition at line 30 of file anamodsalsa.c.
References DeRegisterSimpleModules(), DeregisterSpectrumModules(), DeRegisterStructureModules(), and DeRegisterVarianceModules().
Referenced by main().
{ PetscErrorCode ierr; PetscFunctionBegin; ierr = DeRegisterSimpleModules(); CHKERRQ(ierr); ierr = DeRegisterVarianceModules(); CHKERRQ(ierr); ierr = DeRegisterStructureModules(); CHKERRQ(ierr); ierr = DeregisterSpectrumModules(); CHKERRQ(ierr); PetscFunctionReturn(0); }
PetscErrorCode AnaModRegisterSalsaModules | ( | void | ) |
Definition at line 7 of file anamodsalsa.c.
References CommutatorNormFAllowSqrtTimes(), RegisterIprsModules(), RegisterJPLModules(), RegisterLapackModules(), RegisterNormalityModules(), RegisterSimpleModules(), RegisterSpectrumModules(), RegisterStructureModules(), RegisterVarianceModules(), and SpectrumComputeUnpreconditionedSpectrum().
Referenced by main().
{ PetscErrorCode ierr; PetscFunctionBegin; ierr = RegisterSimpleModules(); CHKERRQ(ierr); ierr = RegisterVarianceModules(); CHKERRQ(ierr); ierr = RegisterNormalityModules(); CHKERRQ(ierr); ierr = CommutatorNormFAllowSqrtTimes(10); ierr = RegisterStructureModules(); CHKERRQ(ierr); ierr = RegisterSpectrumModules(); CHKERRQ(ierr); ierr = SpectrumComputeUnpreconditionedSpectrum(); CHKERRQ(ierr); ierr = RegisterJPLModules(); CHKERRQ(ierr); ierr = RegisterIprsModules(); CHKERRQ(ierr); #if defined(HAVE_LAPACK) ierr = RegisterLapackModules(); CHKERRQ(ierr); #endif PetscFunctionReturn(0); }
PetscErrorCode CommutatorNormFAllowSqrtTimes | ( | int | n | ) |
Definition at line 283 of file normal.c.
Referenced by AnaModRegisterSalsaModules().
{ sqrt_times = n; return 0; }
PetscErrorCode DeRegisterSimpleModules | ( | void | ) |
Definition at line 694 of file simple.c.
Referenced by AnaModDeregisterSalsaModules().
{ PetscFunctionBegin; PetscFunctionReturn(0); }
PetscErrorCode DeregisterSpectrumModules | ( | void | ) |
Definition at line 1414 of file spectrum.c.
Referenced by AnaModDeregisterSalsaModules().
{ #if defined(HAVE_SLEPC) PetscErrorCode ierr; PetscFunctionBegin; ierr = SlepcFinalize(); CHKERRQ(ierr); PetscFunctionReturn(0); #else PetscFunctionBegin; PetscFunctionReturn(0); #endif }
PetscErrorCode DeRegisterStructureModules | ( | void | ) |
Definition at line 720 of file structure.c.
Referenced by AnaModDeregisterSalsaModules().
{ PetscFunctionBegin; PetscFunctionReturn(0); }
PetscErrorCode DeRegisterVarianceModules | ( | void | ) |
Definition at line 333 of file variance.c.
Referenced by AnaModDeregisterSalsaModules().
{ PetscFunctionBegin; PetscFunctionReturn(0); }
PetscErrorCode RegisterIprsModules | ( | void | ) |
Definition at line 535 of file iprs.c.
References ANALYSISDOUBLE, ANALYSISINTEGER, AvgDiagDist(), AvgNnzpRow(), LoBand(), NDiags(), Nnz(), NnzDia(), NnzLow(), NnzUp(), RegisterModule(), RelSymm(), SigmaDiagDist(), and UpBand().
Referenced by AnaModRegisterSalsaModules(), and AnaModRegisterStandardModules().
{ PetscErrorCode ierr; PetscFunctionBegin; ierr = RegisterModule ("iprs","nnzup",ANALYSISINTEGER,&NnzUp); CHKERRQ(ierr); ierr = RegisterModule ("iprs","nnzlow",ANALYSISINTEGER,&NnzLow); CHKERRQ(ierr); ierr = RegisterModule ("iprs","nnzdia",ANALYSISINTEGER,&NnzDia); CHKERRQ(ierr); ierr = RegisterModule ("iprs","nnz",ANALYSISINTEGER,&Nnz); CHKERRQ(ierr); ierr = RegisterModule ("iprs","avgnnzprow",ANALYSISINTEGER,&AvgNnzpRow); CHKERRQ(ierr); ierr = RegisterModule ("iprs","avgdistfromdiag",ANALYSISINTEGER,&AvgNnzpRow); CHKERRQ(ierr); ierr = RegisterModule ("iprs","relsymm",ANALYSISDOUBLE,&RelSymm); CHKERRQ(ierr); ierr = RegisterModule ("iprs","upband",ANALYSISINTEGER,&UpBand); CHKERRQ(ierr); ierr = RegisterModule ("iprs","loband",ANALYSISINTEGER,&LoBand); CHKERRQ(ierr); ierr = RegisterModule ("iprs","n-nonzero-diags",ANALYSISINTEGER,&NDiags); CHKERRQ(ierr); ierr = RegisterModule ("iprs","avg-diag-dist",ANALYSISDOUBLE,&AvgDiagDist); CHKERRQ(ierr); ierr = RegisterModule ("iprs","sigma-diag-dist",ANALYSISDOUBLE,&SigmaDiagDist); CHKERRQ(ierr); PetscFunctionReturn(0); }
PetscErrorCode RegisterJPLModules | ( | void | ) |
Definition at line 523 of file jpl.c.
References ANALYSISINTARRAY, ANALYSISINTEGER, ColourOffsets(), Colours(), ColourSizes(), NColours(), and RegisterModule().
Referenced by AnaModRegisterSalsaModules(), and AnaModRegisterStandardModules().
{ PetscErrorCode ierr; PetscFunctionBegin; ierr = RegisterModule ("jpl","n-colours",ANALYSISINTEGER,&NColours); CHKERRQ(ierr); ierr = RegisterModule ("jpl","colour-set-sizes",ANALYSISINTARRAY,&ColourSizes); CHKERRQ(ierr); ierr = RegisterModule ("jpl","colour-offsets",ANALYSISINTARRAY,&ColourOffsets); CHKERRQ(ierr); ierr = RegisterModule ("jpl","colours",ANALYSISINTARRAY,&Colours); CHKERRQ(ierr); PetscFunctionReturn(0); }
PetscErrorCode RegisterNormalityModules | ( | void | ) |
Definition at line 583 of file normal.c.
References ANALYSISDOUBLE, Commutator(), DepartureLee95(), DepartureLee96L(), DepartureLee96U(), DepartureRuhe75(), RegisterModule(), and TraceA2().
Referenced by AnaModRegisterSalsaModules(), and AnaModRegisterStandardModules().
{ PetscErrorCode ierr; PetscFunctionBegin; ierr = RegisterModule ("normal","trace-asquared",ANALYSISDOUBLE,&TraceA2); CHKERRQ(ierr); ierr = RegisterModule ("normal","commutator-normF",ANALYSISDOUBLE,&Commutator); CHKERRQ(ierr); ierr = RegisterModule ("normal","ruhe75-bound",ANALYSISDOUBLE,&DepartureRuhe75); CHKERRQ(ierr); ierr = RegisterModule ("normal","lee95-bound",ANALYSISDOUBLE,&DepartureLee95); CHKERRQ(ierr); ierr = RegisterModule ("normal","lee96-ubound",ANALYSISDOUBLE,&DepartureLee96U); CHKERRQ(ierr); ierr = RegisterModule ("normal","lee96-lbound",ANALYSISDOUBLE,&DepartureLee96L); CHKERRQ(ierr); PetscFunctionReturn(0); }
PetscErrorCode RegisterSimpleModules | ( | void | ) |
Declare norm-like modules that can be performed with simple calculations.
Definition at line 657 of file simple.c.
References ANALYSISDOUBLE, ANALYSISINTEGER, DiagonalDominance(), norm1(), normF(), normInf(), NUnstruct(), RegisterModule(), SymmetryANorm(), SymmetryFANorm(), SymmetryFSNorm(), SymmetrySNorm(), Trace(), and TraceAbs().
Referenced by AnaModRegisterSalsaModules(), and AnaModRegisterStandardModules().
{ PetscErrorCode ierr; PetscFunctionBegin; ierr = RegisterModule ("simple","trace",ANALYSISDOUBLE,&Trace); CHKERRQ(ierr); ierr = RegisterModule ("simple","trace-abs",ANALYSISDOUBLE,&TraceAbs); CHKERRQ(ierr); ierr = RegisterModule ("simple","norm1",ANALYSISDOUBLE,&norm1); CHKERRQ(ierr); ierr = RegisterModule ("simple","normInf",ANALYSISDOUBLE,&normInf); CHKERRQ(ierr); ierr = RegisterModule ("simple","normF",ANALYSISDOUBLE,&normF); CHKERRQ(ierr); ierr = RegisterModule ("simple","diagonal-dominance",ANALYSISDOUBLE,&DiagonalDominance); CHKERRQ(ierr); ierr = RegisterModule ("simple","symmetry-snorm",ANALYSISDOUBLE,&SymmetrySNorm); CHKERRQ(ierr); ierr = RegisterModule ("simple","symmetry-anorm",ANALYSISDOUBLE,&SymmetryANorm); CHKERRQ(ierr); ierr = RegisterModule ("simple","symmetry-fsnorm",ANALYSISDOUBLE,&SymmetryFSNorm); CHKERRQ(ierr); ierr = RegisterModule ("simple","symmetry-fanorm",ANALYSISDOUBLE,&SymmetryFANorm); CHKERRQ(ierr); ierr = RegisterModule ("structure","n-struct-unsymm",ANALYSISINTEGER,&NUnstruct); CHKERRQ(ierr); PetscFunctionReturn(0); }
PetscErrorCode RegisterSpectrumModules | ( | void | ) |
Definition at line 1343 of file spectrum.c.
References ANALYSISDBLARRAY, ANALYSISDOUBLE, ANALYSISINTEGER, DeclareCategoryOptionFunction(), Kappa(), MaxEVbyImIm(), MaxEVbyImRe(), MaxEVbyMagIm(), MaxEVbyMagRe(), MaxEVbyRealIm(), MaxEVbyRealRe(), MinEVbyMagIm(), MinEVbyMagRe(), NRitzValues(), PosFraction(), RegisterModule(), RitzValuesC(), RitzValuesR(), SigmaMax(), SigmaMin(), SpectrumAX(), SpectrumAY(), SpectrumCX(), SpectrumCY(), and SpectrumOptions().
Referenced by AnaModRegisterSalsaModules(), and AnaModRegisterStandardModules().
{ PetscErrorCode ierr; PetscFunctionBegin; #if defined(HAVE_SLEPC) ierr = SlepcInitialize(0,0,0,0); CHKERRQ(ierr); #endif ierr = RegisterModule ("spectrum","n-ritz-values",ANALYSISINTEGER,&NRitzValues); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","ritz-values-r",ANALYSISDBLARRAY,&RitzValuesR); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","ritz-values-c",ANALYSISDBLARRAY,&RitzValuesC); CHKERRQ(ierr); /* ierr = RegisterModule ("spectrum","hessenberg",ANALYSISDBLARRAY,&Hessenberg); CHKERRQ(ierr); */ ierr = RegisterModule ("spectrum","ellipse-ax",ANALYSISDOUBLE,&SpectrumAX); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","ellipse-ay",ANALYSISDOUBLE,&SpectrumAY); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","ellipse-cx",ANALYSISDOUBLE,&SpectrumCX); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","ellipse-cy",ANALYSISDOUBLE,&SpectrumCY); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","kappa",ANALYSISDOUBLE,&Kappa); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","positive-fraction",ANALYSISDOUBLE,&PosFraction); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","sigma-max",ANALYSISDOUBLE,&SigmaMax); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","sigma-min",ANALYSISDOUBLE,&SigmaMin); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","lambda-max-by-magnitude-re", ANALYSISDOUBLE,&MaxEVbyMagRe); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","lambda-max-by-magnitude-im", ANALYSISDOUBLE,&MaxEVbyMagIm); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","lambda-min-by-magnitude-re", ANALYSISDOUBLE,&MinEVbyMagRe); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","lambda-min-by-magnitude-im", ANALYSISDOUBLE,&MinEVbyMagIm); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","lambda-max-by-real-part-re", ANALYSISDOUBLE,&MaxEVbyRealRe); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","lambda-max-by-real-part-im", ANALYSISDOUBLE,&MaxEVbyRealIm); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","lambda-max-by-im-part-re", ANALYSISDOUBLE,&MaxEVbyImRe); CHKERRQ(ierr); ierr = RegisterModule ("spectrum","lambda-max-by-im-part-im", ANALYSISDOUBLE,&MaxEVbyImIm); CHKERRQ(ierr); ierr = DeclareCategoryOptionFunction ("spectrum",&SpectrumOptions); CHKERRQ(ierr); PetscFunctionReturn(0); }
PetscErrorCode RegisterStructureModules | ( | void | ) |
Definition at line 671 of file structure.c.
References ANALYSISINTARRAY, ANALYSISINTEGER, BlockSize(), DiagDefinite(), DiagZeroStart(), DummyRows(), DummyRowsKind(), LBandWidth(), LeftSkyline(), MaxNNonZerosPerRow(), MinNNonZerosPerRow(), NDummyRows(), NNonZeros(), nRows(), RBandWidth(), RegisterModule(), RightSkyline(), and Symmetry().
Referenced by AnaModRegisterSalsaModules(), and AnaModRegisterStandardModules().
{ PetscErrorCode ierr; PetscFunctionBegin; ierr = RegisterModule ("structure","nrows",ANALYSISINTEGER,&nRows); CHKERRQ(ierr); ierr = RegisterModule ("structure","symmetry",ANALYSISINTEGER,&Symmetry); CHKERRQ(ierr); ierr = RegisterModule ("structure","nnzeros",ANALYSISINTEGER,&NNonZeros); CHKERRQ(ierr); ierr = RegisterModule ("structure","max-nnzeros-per-row",ANALYSISINTEGER, &MaxNNonZerosPerRow); CHKERRQ(ierr); ierr = RegisterModule ("structure","min-nnzeros-per-row",ANALYSISINTEGER, &MinNNonZerosPerRow); CHKERRQ(ierr); ierr = RegisterModule ("structure","left-bandwidth",ANALYSISINTEGER,&LBandWidth); CHKERRQ(ierr); ierr = RegisterModule ("structure","right-bandwidth",ANALYSISINTEGER,&RBandWidth); CHKERRQ(ierr); ierr = RegisterModule ("structure","left-skyline",ANALYSISINTARRAY,&LeftSkyline); CHKERRQ(ierr); ierr = RegisterModule ("structure","right-skyline",ANALYSISINTARRAY,&RightSkyline); CHKERRQ(ierr); ierr = RegisterModule ("structure","n-dummy-rows",ANALYSISINTEGER,&NDummyRows); CHKERRQ(ierr); ierr = RegisterModule ("structure","dummy-rows-kind",ANALYSISINTEGER,&DummyRowsKind); CHKERRQ(ierr); ierr = RegisterModule ("structure","dummy-rows",ANALYSISINTARRAY,&DummyRows); CHKERRQ(ierr); ierr = RegisterModule ("structure","diag-zerostart",ANALYSISINTEGER,&DiagZeroStart); CHKERRQ(ierr); ierr = RegisterModule ("structure","diag-definite",ANALYSISINTEGER,&DiagDefinite); CHKERRQ(ierr); ierr = RegisterModule ("structure","blocksize",ANALYSISINTEGER,&BlockSize); CHKERRQ(ierr); PetscFunctionReturn(0); }
PetscErrorCode RegisterVarianceModules | ( | void | ) |
Definition at line 311 of file variance.c.
References ANALYSISDOUBLE, ANALYSISINTEGER, ColVariability(), DiagonalAverage(), DiagonalSign(), DiagonalVariance(), RegisterModule(), and RowVariability().
Referenced by AnaModRegisterSalsaModules(), and AnaModRegisterStandardModules().
{ PetscErrorCode ierr; PetscFunctionBegin; ierr = RegisterModule ("variance","row-variability",ANALYSISDOUBLE,&RowVariability); CHKERRQ(ierr); ierr = RegisterModule ("variance","col-variability",ANALYSISDOUBLE,&ColVariability); CHKERRQ(ierr); ierr = RegisterModule ("variance","diagonal-average",ANALYSISDOUBLE,&DiagonalAverage); CHKERRQ(ierr); ierr = RegisterModule ("variance","diagonal-variance",ANALYSISDOUBLE,&DiagonalVariance); CHKERRQ(ierr); ierr = RegisterModule ("variance","diagonal-sign",ANALYSISINTEGER,&DiagonalSign); CHKERRQ(ierr); PetscFunctionReturn(0); }
PetscErrorCode SpectrumComputePreconditionedSpectrum | ( | void | ) |
Definition at line 95 of file spectrum.c.
References use_prec.
{ PetscFunctionBegin; use_prec = 1; PetscFunctionReturn(0); }
PetscErrorCode SpectrumComputeUnpreconditionedSpectrum | ( | void | ) |
Definition at line 104 of file spectrum.c.
References use_prec.
Referenced by AnaModRegisterSalsaModules().
{ PetscFunctionBegin; use_prec = 0; PetscFunctionReturn(0); }