o3seespy.system

class o3seespy.command.system.BandGen(osi)[source]

Bases: SystemBase

The BandGen System Class

This command is used to construct a BandGeneralSOE linear system of equation object. As the name implies, this class is used for matrix systems which have a banded profile. The matrix is stored as shown below in a 1dimensional array of size equal to the bandwidth times the number of unknowns. When a solution is required, the Lapack routines DGBSV and SGBTRS are used.

Initial method for BandGen

Parameters

osi (o3seespy.OpenSeesInstance) –

Examples

>>> import o3seespy as o3
>>> osi = o3.OpenSeesInstance(ndm=2)
>>> o3.system.BandGen(osi)
op_type = 'BandGen'
class o3seespy.command.system.BandGeneral(osi)[source]

Bases: SystemBase

op_type = 'BandGeneral'
class o3seespy.command.system.BandSPD(osi)[source]

Bases: SystemBase

The BandSPD System Class

This command is used to construct a BandSPDSOE linear system of equation object. As the name implies, this class is used for symmetric positive definite matrix systems which have a banded profile. The matrix is stored as shown below in a 1 dimensional array of size equal to the (bandwidth/2) times the number of unknowns. When a solution is required, the Lapack routines DPBSV and DPBTRS are used.

Initial method for BandSPD

Parameters

osi (o3seespy.OpenSeesInstance) –

Examples

>>> import o3seespy as o3
>>> osi = o3.OpenSeesInstance(ndm=2)
>>> o3.system.BandSPD(osi)
op_type = 'BandSPD'
class o3seespy.command.system.Diagonal(osi)[source]

Bases: SystemBase

op_type = 'Diagonal'
class o3seespy.command.system.FullGeneral(osi)[source]

Bases: SystemBase

The FullGeneral System Class

This command is used to construct a Full General linear system of equation object. As the name implies, the class utilizes NO space saving techniques to cut down on the amount of memory used. If the matrix is of size, nxn, then storage for an nxn array is sought from memory when the program runs. When a solution is required, the Lapack routines DGESV and DGETRS are used… note::This type of system should almost never be used! This is because it requires a lot more memory than every other solver and takes more time in the actal solving operation than any other solver. It is required if the user is interested in looking at the global system matrix.

Initial method for FullGeneral

Parameters

osi (o3seespy.OpenSeesInstance) –

Examples

>>> import o3seespy as o3
>>> osi = o3.OpenSeesInstance(ndm=2)
>>> o3.system.FullGeneral(osi)
op_type = 'FullGeneral'
class o3seespy.command.system.MPIDiagonal(osi)[source]

Bases: SystemBase

op_type = 'MPIDiagonal'
class o3seespy.command.system.Mumps(osi, icntl14=None, icntl7=None, matrix=None)[source]

Bases: SystemBase

The Mumps System Class

Create a system of equations using the Mumps solver

Initial method for Mumps

Parameters
  • osi (o3seespy.OpenSeesInstance) –

  • icntl14 (None, optional) – Sets ICNTL(14): percentage increase in the estimated working space

  • icntl7 (None, optional) – Sets ICNTL(7): For sequential analysis - computes a symmetric permutation (0-7). 3=Scotch, 4=PORD, 5=Metis

  • matrix (int, optional (default=0)) – Matrix type. 0=unsymmetric, 1=symmetric positive definite, 2=symmetric general

op_type = 'Mumps'
class o3seespy.command.system.ParallelBandGeneral(osi)[source]

Bases: SystemBase

op_type = 'ParallelBandGeneral'
class o3seespy.command.system.ParallelProfileSPD(osi)[source]

Bases: SystemBase

The ParallelProfileSPD System Class

This command is used to construct a parallel version of the profileSPDSOE linear system of equation object. As the name implies, this class is used for symmetric positive definite matrix systems. The matrix is stored as shown below in a 1 dimensional array with only those values below the first non-zero row in any column being stored. This is sometimes also referred to as a skyline storage scheme.

Initial method for ParallelProfileSPD

Parameters

osi (o3seespy.OpenSeesInstance) –

Examples

>>> import o3seespy as o3
>>> osi = o3.OpenSeesInstance(ndm=2)
>>> o3.system.ParallelProfileSPD(osi)
op_type = 'ParallelProfileSPD'
class o3seespy.command.system.ProfileSPD(osi)[source]

Bases: SystemBase

The ProfileSPD System Class

This command is used to construct a profileSPDSOE linear system of equation object. As the name implies, this class is used for symmetric positive definite matrix systems. The matrix is stored as shown below in a 1 dimensional array with only those values below the first non-zero row in any column being stored. This is sometimes also referred to as a skyline storage scheme.

Initial method for ProfileSPD

Parameters

osi (o3seespy.OpenSeesInstance) –

Examples

>>> import o3seespy as o3
>>> osi = o3.OpenSeesInstance(ndm=2)
>>> o3.system.ProfileSPD(osi)
op_type = 'ProfileSPD'
class o3seespy.command.system.SProfileSPD(osi)[source]

Bases: SystemBase

The SProfileSPD System Class

Unknown

Initial method for SProfileSPD

Parameters

osi (o3seespy.OpenSeesInstance) –

Examples

>>> import o3seespy as o3
>>> osi = o3.OpenSeesInstance(ndm=2)
>>> o3.system.SProfileSPD(osi)
op_type = 'SProfileSPD'
class o3seespy.command.system.SparseGeneral(osi)[source]

Bases: SystemBase

op_type = 'SparseGeneral'
class o3seespy.command.system.SparseSYM(osi)[source]

Bases: SystemBase

The SparseSYM System Class

This command is used to construct a sparse symmetric system of equations which uses a row-oriented solution method in the solution phase.

Initial method for SparseSYM

Parameters

osi (o3seespy.OpenSeesInstance) –

Examples

>>> import o3seespy as o3
>>> # Example is currently not working
>>> osi = o3.OpenSeesInstance(ndm=2)
>>> o3.system.SparseSYM(osi)
op_type = 'SparseSYM'
class o3seespy.command.system.SuperLU(osi)[source]

Bases: SystemBase

The SuperLU System Class

This command is used to construct a SparseGEN linear system of equation object. As the name implies, this class is used for sparse matrix systems. The solution of the sparse matrix is carried out using `SuperLU`_.

Initial method for SuperLU

Parameters

osi (o3seespy.OpenSeesInstance) –

Examples

>>> import o3seespy as o3
>>> osi = o3.OpenSeesInstance(ndm=2)
>>> o3.system.SuperLU(osi)
op_type = 'SuperLU'
class o3seespy.command.system.SystemBase[source]

Bases: OpenSeesObject

op_base_type = 'system'
class o3seespy.command.system.UmfPack(osi)[source]

Bases: SystemBase

The UmfPack System Class

This command is used to construct a sparse system of equations which uses the `UmfPack`_ solver.

Initial method for UmfPack

Parameters

osi (o3seespy.OpenSeesInstance) –

Examples

>>> import o3seespy as o3
>>> osi = o3.OpenSeesInstance(ndm=2)
>>> o3.system.UmfPack(osi)
op_type = 'UmfPack'
o3seespy.command.system.apply_mumps_or(osi, alt_system, **kwargs)[source]
o3seespy.command.system.apply_mumps_or_sparse_general(osi, **kwargs)[source]