MOOCHO (Single Doxygen Collection) Version of the Day
Classes | Private Types | Private Member Functions | Private Attributes
AbstractLinAlgPack::DirectSparseSolverMA28 Class Reference

Concreate sparse solver subclass that uses MA28. More...

#include <AbstractLinAlgPack_DirectSparseSolverMA28.hpp>

Inheritance diagram for AbstractLinAlgPack::DirectSparseSolverMA28:
Inheritance graph
[legend]

List of all members.

Classes

class  BasisMatrixMA28
 Implements the BasisMatrix object for MA28. More...
class  FactorizationNonzerosMA28
 Stores the factorization nonzeros for MA28. More...
class  FactorizationStructureMA28
 Stores the factorization structure for MA28. More...

Private Types

enum  E_IFlag {
  SLOW_ITER_CONV = -17, MAXIT_REACHED = -16, MA28BD_CALLED_WITH_DROPPED = -15, DUPLICATE_ELEMENTS = -14,
  NEW_NONZERO_ELEMENT = -13, N_OUT_OF_RANGE = -11, NZ_LE_ZERO = -10, LICN_LE_NZ = -9,
  LIRN_LE_NZ = -8, ERROR_DURRING_BLOCK_TRI = -7, LICN_AND_LIRN_TOO_SMALL = -6, LICN_TOO_SMALL = -5,
  LICN_FAR_TOO_SMALL = -4, LIRN_TOO_SMALL = -3, NUMERICALLY_SINGULAR = -2, STRUCTURALLY_SINGULAR = -1,
  SUCCESSFUL_DECOMP_ON_STRUCT_SINGULAR = 1, SUCCESSFUL_DECOMP_ON_NUMER_SINGULAR = 2
}
 Enumeration for iflag. More...

Private Member Functions

void set_ma28_parameters (FactorizationStructureMA28 *fs)
void print_ma28_outputs (bool ma28ad_bd, index_type iflag, const FactorizationStructureMA28 &fs, const value_type w[], std::ostream *out)
void ThrowIFlagException (index_type iflag)

Private Attributes

value_type estimated_fillin_ratio_
Teuchos::RCP< std::ostream > output_file_
int file_output_num_

Public types

enum  EScalingMethod { NO_SCALING, INITIAL_SCALING, SUCCESSIVE_SCALING }
  More...

Control parameters

 STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, u)
 Pivot tolerance versus sparsity.
 STANDARD_MEMBER_COMPOSITION_MEMBERS (bool, grow)
 If true, than an estimate of growth of the factors is computed.
 STANDARD_MEMBER_COMPOSITION_MEMBERS (value_type, tol)
 Drop tolerance for an incomplete factorization.
 STANDARD_MEMBER_COMPOSITION_MEMBERS (index_type, nsrch)
 Number of columns to search to reduce fill-in.
 STANDARD_MEMBER_COMPOSITION_MEMBERS (bool, lbig)
 If true, then the largest entry encountered is returned.
 STANDARD_MEMBER_COMPOSITION_MEMBERS (bool, print_ma28_outputs)
 If true, then outputs from ma28 are printed to output stream.
 STANDARD_MEMBER_COMPOSITION_MEMBERS (std::string, output_file_name)
 If output_file != "", then output from MA28 is sent to this file.

Constructors/initializers

 DirectSparseSolverMA28 (value_type estimated_fillin_ratio=10.0, value_type u=0.1, bool grow=false, value_type tol=0.0, index_type nsrch=4, bool lbig=false, bool print_ma28_outputs=false, const std::string &output_file_name="")
 Default constructor.

Overridden from DirectSparseSolver

const basis_matrix_factory_ptr_t basis_matrix_factory () const
 
void estimated_fillin_ratio (value_type estimated_fillin_ratio)
 

Overridden from DirectSparseSolverImp

const Teuchos::RCP
< FactorizationStructure
create_fact_struc () const
 
const Teuchos::RCP
< FactorizationNonzeros
create_fact_nonzeros () const
 
void imp_analyze_and_factor (const AbstractLinAlgPack::MatrixConvertToSparse &A, FactorizationStructure *fact_struc, FactorizationNonzeros *fact_nonzeros, DenseLinAlgPack::IVector *row_perm, DenseLinAlgPack::IVector *col_perm, size_type *rank, std::ostream *out)
 
void imp_factor (const AbstractLinAlgPack::MatrixConvertToSparse &A, const FactorizationStructure &fact_struc, FactorizationNonzeros *fact_nonzeros, std::ostream *out)
 

Detailed Description

Concreate sparse solver subclass that uses MA28.

ToDo: Finish documentation!

Definition at line 61 of file AbstractLinAlgPack_DirectSparseSolverMA28.hpp.


Member Enumeration Documentation

Enumerator:
NO_SCALING 
INITIAL_SCALING 
SUCCESSIVE_SCALING 

Definition at line 68 of file AbstractLinAlgPack_DirectSparseSolverMA28.hpp.

Enumeration for iflag.

Enumerator:
SLOW_ITER_CONV 
MAXIT_REACHED 
MA28BD_CALLED_WITH_DROPPED 
DUPLICATE_ELEMENTS 
NEW_NONZERO_ELEMENT 
N_OUT_OF_RANGE 
NZ_LE_ZERO 
LICN_LE_NZ 
LIRN_LE_NZ 
ERROR_DURRING_BLOCK_TRI 
LICN_AND_LIRN_TOO_SMALL 
LICN_TOO_SMALL 
LICN_FAR_TOO_SMALL 
LIRN_TOO_SMALL 
NUMERICALLY_SINGULAR 
STRUCTURALLY_SINGULAR 
SUCCESSFUL_DECOMP_ON_STRUCT_SINGULAR 
SUCCESSFUL_DECOMP_ON_NUMER_SINGULAR 

Definition at line 238 of file AbstractLinAlgPack_DirectSparseSolverMA28.hpp.


Constructor & Destructor Documentation

AbstractLinAlgPack::DirectSparseSolverMA28::DirectSparseSolverMA28 ( value_type  estimated_fillin_ratio = 10.0,
value_type  u = 0.1,
bool  grow = false,
value_type  tol = 0.0,
index_type  nsrch = 4,
bool  lbig = false,
bool  print_ma28_outputs = false,
const std::string &  output_file_name = "" 
)

Default constructor.


Member Function Documentation

AbstractLinAlgPack::DirectSparseSolverMA28::STANDARD_MEMBER_COMPOSITION_MEMBERS ( value_type  ,
 
)

Pivot tolerance versus sparsity.

AbstractLinAlgPack::DirectSparseSolverMA28::STANDARD_MEMBER_COMPOSITION_MEMBERS ( bool  ,
grow   
)

If true, than an estimate of growth of the factors is computed.

AbstractLinAlgPack::DirectSparseSolverMA28::STANDARD_MEMBER_COMPOSITION_MEMBERS ( value_type  ,
tol   
)

Drop tolerance for an incomplete factorization.

AbstractLinAlgPack::DirectSparseSolverMA28::STANDARD_MEMBER_COMPOSITION_MEMBERS ( index_type  ,
nsrch   
)

Number of columns to search to reduce fill-in.

AbstractLinAlgPack::DirectSparseSolverMA28::STANDARD_MEMBER_COMPOSITION_MEMBERS ( bool  ,
lbig   
)

If true, then the largest entry encountered is returned.

AbstractLinAlgPack::DirectSparseSolverMA28::STANDARD_MEMBER_COMPOSITION_MEMBERS ( bool  ,
print_ma28_outputs   
)

If true, then outputs from ma28 are printed to output stream.

AbstractLinAlgPack::DirectSparseSolverMA28::STANDARD_MEMBER_COMPOSITION_MEMBERS ( std::string  ,
output_file_name   
)

If output_file != "", then output from MA28 is sent to this file.

const basis_matrix_factory_ptr_t AbstractLinAlgPack::DirectSparseSolverMA28::basis_matrix_factory ( ) const [virtual]
void AbstractLinAlgPack::DirectSparseSolverMA28::estimated_fillin_ratio ( value_type  estimated_fillin_ratio) [virtual]
const Teuchos::RCP<FactorizationStructure> AbstractLinAlgPack::DirectSparseSolverMA28::create_fact_struc ( ) const [protected, virtual]
const Teuchos::RCP<FactorizationNonzeros> AbstractLinAlgPack::DirectSparseSolverMA28::create_fact_nonzeros ( ) const [protected, virtual]
void AbstractLinAlgPack::DirectSparseSolverMA28::imp_analyze_and_factor ( const AbstractLinAlgPack::MatrixConvertToSparse A,
FactorizationStructure fact_struc,
FactorizationNonzeros fact_nonzeros,
DenseLinAlgPack::IVector row_perm,
DenseLinAlgPack::IVector col_perm,
size_type rank,
std::ostream *  out 
) [protected]

void AbstractLinAlgPack::DirectSparseSolverMA28::imp_factor ( const AbstractLinAlgPack::MatrixConvertToSparse A,
const FactorizationStructure fact_struc,
FactorizationNonzeros fact_nonzeros,
std::ostream *  out 
) [protected]

void AbstractLinAlgPack::DirectSparseSolverMA28::set_ma28_parameters ( FactorizationStructureMA28 fs) [private]
void AbstractLinAlgPack::DirectSparseSolverMA28::print_ma28_outputs ( bool  ma28ad_bd,
index_type  iflag,
const FactorizationStructureMA28 fs,
const value_type  w[],
std::ostream *  out 
) [private]
void AbstractLinAlgPack::DirectSparseSolverMA28::ThrowIFlagException ( index_type  iflag) [private]

Member Data Documentation


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines