Modules | |
Acoustic wave propagation problems | |
Acoustic wave propagation problems. | |
Conservation Law Equations | |
Conservation law equations. | |
Electromagnetics | |
Electromagnetic equations. | |
General Purpose Equations | |
Gathers equation related classes. | |
Fluid Dynamics | |
Fluid Dynamics equations. | |
Generic | |
Generic partial differential equation. | |
Laplace equation | |
Laplace and Poisson equations. | |
Porous Media problems | |
Porous Media equation classes. | |
Solid Mechanics | |
Solid Mechanics finite element equations. | |
Heat Transfer | |
Heat Transfer equations. | |
Input/Output | |
Input/Output utility classes. | |
Utilities | |
Utility functions and classes. | |
Physical properties of media | |
Physical properties of materials and media. | |
Global Variables | |
All global variables in the library. | |
Finite Element Mesh | |
Mesh management classes | |
Shape Function | |
Shape function classes. | |
Solver | |
Solver functions and classes. | |
Vector and Matrix | |
Vector and matrix classes. | |
Files | |
file | Equa_Acoustics.h |
Definition file for class Equa_Acoustics. | |
file | Pres1DL2.h |
Definition file for class PRES1DL2. | |
file | Pres2DT3.h |
Definition file for class Pres2DT3. | |
file | ICPG1D.h |
Definition file for class ICPG1D. | |
file | ICPG2DT.h |
Definition file for class ICPG2DT. | |
file | ICPG3DT.h |
Definition file for class ICPG3DT. | |
file | LCL1D.h |
Definition file for class LCL1D. | |
file | LCL2DT.h |
Definition file for class LCL2DT. | |
file | LCL3DT.h |
Definition file for class LCL3DT. | |
file | Muscl.h |
Definition file for class Muscl. | |
file | Muscl1D.h |
Definition file for class Muscl1D. | |
file | Muscl2DT.h |
Definition file for class Muscl2DT. | |
file | Muscl3DT.h |
Definition file for class Muscl3DT. | |
file | BiotSavart.h |
Definition file for class BiotSavart. | |
file | EC2D1T3.h |
Definition file for class EC2D1T3. | |
file | EC2D2T3.h |
Definition file for class EC2D2T3. | |
file | Equa_Electromagnetics.h |
Definition file for class FE_Electromagnetics. | |
file | HelmholtzBT3.h |
Definition file for class HelmholtzBT3. | |
file | Equa.h |
Definition file for abstract class Equa. | |
file | Equation.h |
Definition file for class Equation. | |
file | Equa_Fluid.h |
Definition file for class Equa_Fluid. | |
file | NSP2DQ41.h |
Definition file for class NSP2DQ41. | |
file | TINS2DT3S.h |
Definition file for class TINS2DT3S. | |
file | TINS3DT4S.h |
Definition file for class TINS3DT4S. | |
file | Equa_LinearPDE.h |
Definition file for class Equa_LinearPDE. | |
file | LinearPDE1D.h |
Definition file for class LinearPDE1D. | |
file | LinearPDE2D.h |
Definition file for class LinearPDE2D. | |
file | LinearPDE3D.h |
Definition file for class LinearPDE3D. | |
file | Equa_Laplace.h |
Definition file for class Equa_Laplace. | |
file | Laplace1DL2.h |
Definition file for class Laplace1DL2. | |
file | Laplace1DL3.h |
Definition file for class Laplace1DL3. | |
file | Laplace2DT3.h |
Definition file for class Laplace2DT3. | |
file | Laplace2DT6.h |
Definition file for class Laplace2DT6. | |
file | Laplace3DT4.h |
Definition file for class Laplace3DT4. | |
file | SteklovPoincare2DBE.h |
Definition file for class SteklovPoincare2DBE. | |
file | Equa_Porous.h |
Definition file for class Equa_Porous. | |
file | WaterPorous1D.h |
Definition file for class WaterPorous1D. | |
file | WaterPorous2D.h |
Definition file for class WaterPorous2D. | |
file | Bar2DL2.h |
Definition file for class Bar2DL2. | |
file | Beam3DL2.h |
Definition file for class Beam3DL2. | |
file | Elas2DQ4.h |
Definition file for class Elas2DQ4. | |
file | Elas2DT3.h |
Definition file for class Elas2DT3. | |
file | Elas3DH8.h |
Definition file for class Elas3DH8. | |
file | Elas3DT4.h |
Definition file for class Elas3DT4. | |
file | Equa_Solid.h |
Definition file for class Equa_Solid. | |
file | DC1DL2.h |
Definition file for class DC1DL2. | |
file | DC2DT3.h |
Definition file for class DC2DT3. | |
file | DC2DT6.h |
Definition file for class DC2DT6. | |
file | DC3DAT3.h |
Definition file for class DC3DAT3. | |
file | DC3DT4.h |
Definition file for class DC3DT4. | |
file | Equa_Therm.h |
Definition file for class Equa_Therm. | |
file | PhaseChange.h |
Definition file for class PhaseChange and its parent abstract class. | |
file | IOField.h |
Definition file for class IOField. | |
file | IPF.h |
Definition file for class IPF. | |
file | output.h |
File that contains some output utility functions. | |
file | Prescription.h |
Definition file for class Prescription. | |
file | saveField.h |
Prototypes for functions to save mesh in various file formats. | |
file | saveField.h |
Prototypes for functions to save mesh in various file formats. | |
file | Tabulation.h |
Definition file for class Tabulation. | |
file | BMatrix.h |
Definition file for class BMatrix. | |
file | DMatrix.h |
Definition file for class DMatrix. | |
file | DSMatrix.h |
Definition file for abstract class DSMatrix. | |
file | LocalMatrix.h |
Definition file for class LocalMatrix. | |
file | LocalVect.h |
Definition file for class LocalVect. | |
file | Matrix.h |
Definition file for abstract class Matrix. | |
file | Point.h |
Definition file and implementation for class Point. | |
file | Point2D.h |
Definition file for class Point2D. | |
file | SkMatrix.h |
Definition file for class SkMatrix. | |
file | SkSMatrix.h |
Definition file for class SkSMatrix. | |
file | SpaceTime.h |
Definition file and implementation for class SpaceTime. | |
file | SpMatrix.h |
Definition file for class SpMatrix. | |
file | TrMatrix.h |
Definition file for class TrMatrix. | |
file | Domain.h |
Definition file for class Domain. | |
file | Edge.h |
Definition file for class Edge. | |
file | Element.h |
Definition file for class Element. | |
file | Figure.h |
Definition file for figure classes. | |
file | getMesh.h |
Definition file for mesh conversion functions. | |
file | Grid.h |
Definition file for class Grid. | |
file | Material.h |
Definition file for class Material. | |
file | Mesh.h |
Definition file for class Mesh. | |
file | MeshAdapt.h |
Definition file for class MeshAdapt. | |
file | MeshExtract.h |
Definition file for classes for extracting submeshes. | |
file | MeshUtil.h |
Definitions of utility functions for meshes. | |
file | Node.h |
Definition file for class Node. | |
file | saveMesh.h |
Prototypes for functions to save mesh in various file formats. | |
file | Side.h |
Definition file for class Side. | |
file | FEShape.h |
Definition file for class FEShape. | |
file | Hexa8.h |
Definition file for class Hexa8. | |
file | Line2.h |
Definition file for class Line2. | |
file | Line3.h |
Definition file for class Line3. | |
file | Penta6.h |
Definition file for class Penta6. | |
file | Quad4.h |
Definition file for class Quad4. | |
file | Tetra4.h |
Definition file for class Tetra4. | |
file | Triang3.h |
Definition file for class Triang3. | |
file | Triang6S.h |
Definition file for class Triang6S. | |
file | BiCG.h |
Solves an unsymmetric linear system of equations using the BiConjugate Gradient method. | |
file | BSpline.h |
Function to perform a B-spline interpolation. | |
file | CG.h |
Functions to solve a symmetric positive definite linear system of equations using the Conjugate Gradient method. | |
file | CGS.h |
Solves an unsymmetric linear system of equations using the Conjugate Gradient Squared method. | |
file | EigenProblemSolver.h |
Definition file for class EigenProblemSolver. | |
file | FuncApprox.h |
Definition file for class FuncApprox. | |
file | GeoModel.h |
Definition file for class GeoModel. | |
file | GMRes.h |
Function to solve a linear system of equations using the Generalized Minimum Residual method. | |
file | GS.h |
Function to solve a linear system of equations using the Gauss-Seidel method. | |
file | Integration.h |
Definition file for numerical integration class. | |
file | Jacobi.h |
Function to solve a linear system of equations using the Jacobi method. | |
file | LeastSquare.h |
Definition file for class LeastSquare. | |
file | MyNLAS.h |
Definition file for abstract class MyNLAS. | |
file | MyODE.h |
Definition file for abstract class MyODE. | |
file | MyOpt.h |
Definition file for abstract class MyOpt. | |
file | ODESolver.h |
Definition file for class ODESolver. | |
file | Prec.h |
Definition file for preconditioning classes. | |
file | Richardson.h |
Function to solve a linear system of equations using the Richardson method. | |
file | SSOR.h |
Function to solve a linear system of equations using the Symmetric Successive Over Relaxation method. | |
file | TimeStepping.h |
Definition file for class TimeStepping. | |
file | constants.h |
File that contains some widely used constants. | |
file | Gauss.h |
Definition file for struct Gauss. | |
file | qksort.h |
File that contains template quick sorting function. | |
file | Timer.h |
Definition file for class Timer. | |
file | util.h |
File that contains various utility functions. | |
Classes | |
class | Equa_Acoustics< NEN_, NEE_, NSN_, NSE_ > |
Abstract class for Wave Finite Element classes. More... | |
class | Pres1DL2 |
Builds finite element arrays for acoustic propagation in 1-D using 2-Node elements. More... | |
class | Pres2DT3 |
Builds finite element arrays for wave propagation in 2-D using 3-Node elements. More... | |
class | LocalVect< T_, N_ > |
Handles small size vectors like element vectors. More... | |
class | ICPG1D |
Class to solve the Inviscid compressible fluid flows (Euler equations) for perfect gas in 1-D. More... | |
class | ICPG2DT |
Class to solve the Inviscid compressible fluid flows (Euler equations) for perfect gas in 2-D. More... | |
class | ICPG3DT |
Class to solve the Inviscid compressible fluid flows (Euler equations) for perfect gas in 3-D. More... | |
class | LCL1D |
Class to solve the linear conservation law (Hyperbolic equation) in 1-D by a MUSCL Finite Volume scheme. More... | |
class | LCL2DT |
Class to solve the linear hyperbolic equation in 2-D by a MUSCL Finite Volume scheme on triangles. More... | |
class | LCL3DT |
Class to solve the linear conservation law equation in 3-D by a MUSCL Finite Volume scheme on tetrahedra. More... | |
class | Muscl |
Parent class for hyperbolic solvers with Muscl scheme. More... | |
class | Vect< T_ > |
To handle general purpose vectors. More... | |
class | Muscl1D |
Class for 1-D hyperbolic solvers with Muscl scheme. More... | |
class | Muscl2DT |
Class for 2-D hyperbolic solvers with Muscl scheme. More... | |
class | Muscl3DT |
Class for 3-D hyperbolic solvers with Muscl scheme using tetrahedra. More... | |
class | BiotSavart |
Class to compute the magnetic induction from the current density using the Biot-Savart formula. More... | |
class | EC2D1T3 |
Eddy current problems in 2-D domains using solenoidal approximation. More... | |
class | EC2D2T3 |
Eddy current problems in 2-D domains using transversal approximation. More... | |
class | Equa_Electromagnetics< NEN_, NEE_, NSN_, NSE_ > |
Abstract class for Electromagnetics Equation classes. More... | |
class | HelmholtzBT3 |
Builds finite element arrays for Helmholtz equations in a bounded media using 3-Node triangles. More... | |
class | Equa |
Mother abstract class to describe equation. More... | |
class | Equation< NEN_, NEE_, NSN_, NSE_ > |
Abstract class for all equation classes. More... | |
class | Equa_Fluid< NEN_, NEE_, NSN_, NSE_ > |
Abstract class for Fluid Dynamics Equation classes. More... | |
class | NSP2DQ41 |
Builds finite element arrays for incompressible Navier-Stokes equations in 2-D domains using Q1/P0 element and a penaly formulation for the incompressibility condition. More... | |
class | TINS2DT3S |
Builds finite element arrays for transient incompressible fluid flow using Navier-Stokes equations in 2-D domains. Numerical approximation uses stabilized 3-node triangle finite elements for velocity and pressure. 2nd-order projection scheme is used for time integration. More... | |
class | TINS3DT4S |
Builds finite element arrays for transient incompressible fluid flow using Navier-Stokes equations in 3-D domains. Numerical approximation uses stabilized 4-node tatrahedral finite elements for velocity and pressure. 2nd-order projection scheme is used for time integration. More... | |
class | Equa_LinearPDE< NEN_, NSN_ > |
Abstract class for Finite Element classes for lienar PDEs'. More... | |
class | LinearPDE1D |
Solves a generic linear PDE in 1-D using 2-Node line finite elements. More... | |
class | LinearPDE2D |
Solves a generic linear PDE in 2-D using 3-Node triangular finite elements. More... | |
class | FastMarching |
class for the fast marching algorithm on uniform grids More... | |
class | FastMarching1DG |
class for the fast marching algorithm on 1-D uniform grids More... | |
class | FastMarching2DG |
class for the fast marching algorithm on 2-D uniform grids More... | |
class | FastMarching3DG |
class for the fast marching algorithm on 3-D uniform grids More... | |
class | Equa_Laplace< NEN_, NEE_, NSN_, NSE_ > |
Abstract class for classes about the Laplace equation. More... | |
class | Laplace1DL2 |
To build element equation for a 1-D elliptic equation using the 2-Node line element (P1 ). More... | |
class | Laplace1DL3 |
To build element equation for the 1-D elliptic equation using the 3-Node line (P2 ). More... | |
class | Laplace2DT3 |
To build element equation for the Laplace equation using the 2-D triangle element (P1 ). More... | |
class | Laplace2DT6 |
To build element equation for the Laplace equation using the 2-D triangle element (P2 ). More... | |
class | Laplace3DT4 |
To build element equation for the Laplace equation using the 3-D tetrahedral element (P1 ). More... | |
class | SteklovPoincare2DBE |
Solver of the Steklov Poincare problem in 2-D geometries using piecewie constant boundary elemen. More... | |
class | Equa_Porous< NEN_, NEE_, NSN_, NSE_ > |
Abstract class for Porous Media Finite Element classes. More... | |
class | WaterPorous2D |
To solve water flow equations in porous media (1-D) More... | |
class | Bar2DL2 |
To build element equations for Planar Elastic Bar element with 2 DOF (Degrees of Freedom) per node. More... | |
class | Beam3DL2 |
To build element equations for 3-D beam equations using 2-node lines. More... | |
class | Elas2DQ4 |
To build element equations for 2-D linearized elasticity using 4-node quadrilaterals. More... | |
class | Elas2DT3 |
To build element equations for 2-D linearized elasticity using 3-node triangles. More... | |
class | Elas3DH8 |
To build element equations for 3-D linearized elasticity using 8-node hexahedra. More... | |
class | Elas3DT4 |
To build element equations for 3-D linearized elasticity using 4-node tetrahedra. More... | |
class | Equa_Solid< NEN_, NEE_, NSN_, NSE_ > |
Abstract class for Solid Mechanics Finite Element classes. More... | |
class | DC1DL2 |
Builds finite element arrays for thermal diffusion and convection in 1-D using 2-Node elements. More... | |
class | DC2DT3 |
Builds finite element arrays for thermal diffusion and convection in 2-D domains using 3-Node triangles. More... | |
class | DC2DT6 |
Builds finite element arrays for thermal diffusion and convection in 2-D domains using 6-Node triangles. More... | |
class | DC3DAT3 |
Builds finite element arrays for thermal diffusion and convection in 3-D domains with axisymmetry using 3-Node triangles. More... | |
class | DC3DT4 |
Builds finite element arrays for thermal diffusion and convection in 3-D domains using 4-Node tetrahedra. More... | |
class | Equa_Therm< NEN_, NEE_, NSN_, NSE_ > |
Abstract class for Heat transfer Finite Element classes. More... | |
class | PhaseChange |
This class enables defining phase change laws for a given material. More... | |
class | IOField |
Enables working with files in the XML Format. More... | |
class | IPF |
To read project parameters from a file in IPF format. More... | |
class | Prescription |
To prescribe various types of data by an algebraic expression. Data may consist in boundary conditions, forces, tractions, fluxes, initial condition. All these data types can be defined through an enumerated variable. More... | |
class | Tabulation |
To read and manipulate tabulated functions. More... | |
class | BMatrix< T_ > |
To handle band matrices. More... | |
class | DMatrix< T_ > |
To handle dense matrices. More... | |
class | DSMatrix< T_ > |
To handle symmetric dense matrices. More... | |
class | SkMatrix< T_ > |
To handle square matrices in skyline storage format. More... | |
class | SkSMatrix< T_ > |
To handle symmetric matrices in skyline storage format. More... | |
class | SpMatrix< T_ > |
To handle matrices in sparse storage format. More... | |
class | LocalMatrix< T_, NR_, NC_ > |
Handles small size matrices like element matrices, with a priori known size. More... | |
class | Matrix< T_ > |
Virtual class to handle matrices for all storage formats. More... | |
class | Point< T_ > |
Defines a point with arbitrary type coordinates. More... | |
class | Point2D< T_ > |
Defines a 2-D point with arbitrary type coordinates. More... | |
class | SpaceTime |
Defines a space-time point. More... | |
class | TrMatrix< T_ > |
To handle tridiagonal matrices. More... | |
class | Domain |
To store and treat finite element geometric information. More... | |
class | Edge |
To describe an edge. More... | |
class | Element |
To store and treat finite element geometric information. More... | |
class | Figure |
To store and treat a figure (or shape) information. More... | |
class | Rectangle |
To store and treat a rectangular figure. More... | |
class | Brick |
To store and treat a brick (parallelepiped) figure. More... | |
class | Circle |
To store and treat a circular figure. More... | |
class | Sphere |
To store and treat a sphere. More... | |
class | Ellipse |
To store and treat an ellipsoidal figure. More... | |
class | Triangle |
To store and treat a triangle. More... | |
class | Polygon |
To store and treat a polygonal figure. More... | |
class | Grid |
To manipulate structured grids. More... | |
class | Material |
To treat material data. This class enables reading material data in material data files. It also returns these informations by means of its members. More... | |
class | Mesh |
To store and manipulate finite element meshes. More... | |
class | MeshAdapt |
To adapt mesh in function of given solution. More... | |
class | NodeList |
Class to construct a list of nodes having some common properties. More... | |
class | ElementList |
Class to construct a list of elements having some common properties. More... | |
class | SideList |
Class to construct a list of sides having some common properties. More... | |
class | EdgeList |
Class to construct a list of edges having some common properties. More... | |
class | Node |
To describe a node. More... | |
class | Partition |
To partition a finite element mesh into balanced submeshes. More... | |
class | Side |
To store and treat finite element sides (edges in 2-D or faces in 3-D) More... | |
class | FEShape |
Parent class from which inherit all finite element shape classes. More... | |
class | triangle |
Defines a triangle. The reference element is the rectangle triangle with two unit edges. More... | |
class | Hexa8 |
Defines a three-dimensional 8-node hexahedral finite element using Q1-isoparametric interpolation. More... | |
class | Line2 |
To describe a 2-Node planar line finite element. More... | |
class | Line3 |
To describe a 3-Node quadratic planar line finite element. More... | |
class | Penta6 |
Defines a 6-node pentahedral finite element using P1 interpolation in local coordinates (s.x,s.y) and Q1 isoparametric interpolation in local coordinates (s.x,s.z) and (s.y,s.z) . More... | |
class | Quad4 |
Defines a 4-node quadrilateral finite element using Q1 isoparametric interpolation. More... | |
class | Tetra4 |
Defines a three-dimensional 4-node tetrahedral finite element using P1 interpolation. More... | |
class | Triang3 |
Defines a 3-Node (P1 ) triangle. More... | |
class | Triang6S |
Defines a 6-Node straight triangular finite element using P2 interpolation. More... | |
class | Prec< T_ > |
To set a preconditioner. More... | |
class | EigenProblemSolver |
Class to find eigenvalues and corresponding eigenvectors of a given matrix in a generalized eigenproblem, i.e. Find scalars l and non-null vectors v such that [K]{v} = l[M]{v} where [K] and [M] are symmetric matrices. The eigenproblem can be originated from a PDE. For this, we will refer to the matrices K and M as Stiffness and Mass matrices respectively. More... | |
class | FuncApprox |
To set function approximation methods. More... | |
class | GeoModel |
To set geometry modelling. More... | |
class | Integration |
Class for numerical integration methods. More... | |
class | Iter< T_ > |
Class to drive an iterative process. More... | |
class | LeastSquare |
To compute a least square approximation. More... | |
class | LinearSolver |
Class to solve systems of linear equations by direct or iterative methods. More... | |
class | MyNLAS |
Abstract class to define by user specified function. More... | |
class | MyODE |
Abstract class to define by user specified (system of) ODE. More... | |
class | MyOpt |
Abstract class to define by user specified optimization function. More... | |
class | ODESolver |
To solve a system of ordinary differential equations. More... | |
class | TimeStepping |
To solve time stepping problems, i.e. systems of linear ordinary differential equations of the form [A2]{y"} + [A1]{y'} + [A0]{y} = {b}. More... | |
class | Gauss |
Calculate data for Gauss integration. More... | |
class | Timer |
To handle elapsed time counting. More... | |
Enumerations | |
enum | PDE_Terms : int { NOTERM = 0x00000000, CONSISTENT_MASS = 0x00000010, CONSISTENT_CAPACITY = 0x00000010, LUMPED_MASS = 0x00000020, MASS = 0x00000020, LUMPED_CAPACITY = 0x00000020, CAPACITY = 0x00000020, VISCOSITY = 0x00000040, STIFFNESS = 0x00000080, DIFFUSION = 0x00000100, MOBILITY = 0x00000200, CONVECTION = 0x00000400, DEVIATORIC = 0x00000800, DILATATION = 0x00001000, ELECTRIC = 0x00002000, MAGNETIC = 0x00004000, BODY_RHS = 0x00008000, LOAD = 0x00008000, SOURCE = 0x00008000, BOUNDARY_RHS = 0x00010000, NEUMANN = 0x00010000, FLUX = 0x00010000, BOUNDARY_TRACTION = 0x00010000, CONTACT = 0x00020000, BUOYANCY = 0x00040000, LORENTZ_FORCE = 0x00080000, DAMPING = 0x00100000, L00 = 0x00200000, L10 = 0x00400000, L20 = 0x00800000, L01 = 0x01000000, L02 = 0x02000000, L11 = 0x04000000 } |
enum | Analysis { , STEADY_STATE = 0, TRANSIENT = 1, TRANSIENT_ONE_STEP = 2, OPTIMIZATION = 3, EIGEN = 4 } |
enum | TimeScheme { NONE = 0, FORWARD_EULER = 1, BACKWARD_EULER = 2, CRANK_NICOLSON = 3, HEUN = 4, NEWMARK = 5, LEAP_FROG = 6 , AB2 = 7 , RK4 = 8, RK3_TVD = 9, BDF2 = 10, BUILTIN = 11 } |
enum | FEType { FE_2D_3N, FE_2D_6N, FE_2D_4N, FE_3D_AXI_3N, FE_3D_4N, FE_3D_8N } |
enum | PDECoefType |
enum | AccessType |
Enumerated values for file access type. | |
enum | MatrixType { DENSE = 1, SKYLINE = 2, SPARSE = 4, DIAGONAL = 8, TRIDIAGONAL = 16, BAND = 32, SYMMETRIC = 64, UNSYMMETRIC = 128, IDENTITY = 256 } |
enum | Iteration { DIRECT_SOLVER = 1, CG_SOLVER = 2, CGS_SOLVER = 3, BICG_SOLVER = 4, BICG_STAB_SOLVER = 5, GMRES_SOLVER = 6 } |
Choose iterative solver for the linear system. More... | |
enum | Preconditioner { IDENT_PREC = 1, DIAG_PREC = 2, DILU_PREC = 3, ILU_PREC = 4, SSOR_PREC = 5 } |
Choose preconditioner for the linear system. More... | |
enum | BCType { PERIODIC_A = 9999, PERIODIC_B = -9999, CONTACT_BC = 9998, CONTACT_M = 9997, CONTACT_S = -9997, SLIP = 9996 } |
enum | EigenMethod { SUBSPACE = 1, QR = 2 } |
Enumerate methods to solve the eigenvalue problem. More... | |
enum | IntegrationScheme { LEFT_RECTANGLE = 0, RIGHT_RECTANGLE = 1, MID_RECTANGLE = 2, TRAPEZOIDAL = 3, SIMPSON = 4, GAUSS_LEGENDRE = 5 } |
Functions | |
IOField () | |
Default constructor. | |
IOField (const string &file, AccessType access, bool compact=true) | |
Constructor using file name. More... | |
IOField (const string &mesh_file, const string &file, Mesh &ms, AccessType access, bool compact=true) | |
Constructor using file name, mesh file and mesh. More... | |
IOField (const string &file, Mesh &ms, AccessType access, bool compact=true) | |
Constructor using file name and mesh. More... | |
IOField (const string &file, AccessType access, const string &name) | |
Constructor using file name and field name. More... | |
~IOField () | |
Destructor. | |
void | setMeshFile (const string &file) |
Set mesh file. More... | |
void | open () |
Open file. More... | |
void | open (const string &file, AccessType access) |
Open file. More... | |
void | close () |
Close file. | |
void | put (Mesh &ms) |
Store mesh in file. | |
void | put (const Vect< real_t > &v) |
Store Vect instance v in file. More... | |
real_t | get (Vect< real_t > &v) |
Get Vect v instance from file. More... | |
int | get (Vect< real_t > &v, const string &name) |
Get Vect v instance from file if the field has the given name. More... | |
int | get (DMatrix< real_t > &A, const string &name) |
Get DMatrix A instance from file if the field has the given name. More... | |
int | get (DSMatrix< real_t > &A, const string &name) |
Get DSMatrix A instance from file if the field has the given name. More... | |
int | get (Vect< real_t > &v, real_t t) |
Get Vect v instance from file corresponding to a specific time value. More... | |
void | saveGMSH (string output_file, string mesh_file) |
Save field vectors in a file using GMSH format. More... | |
Tabulation () | |
Default constructor. | |
Tabulation (string file) | |
Constructor using file name. | |
~Tabulation () | |
Destructor. | |
void | setFile (string file) |
Set file name. More... | |
real_t | getValue (string funct, real_t x) |
Return the calculated value of the function. More... | |
real_t | getDerivative (string funct, real_t x) |
Return the derivative of the function at a given point. More... | |
real_t | getValue (string funct, real_t x, real_t y) |
Return the calculated value of the function. More... | |
real_t | getValue (string funct, real_t x, real_t y, real_t z) |
Return the calculated value of the function. More... | |
real_t | getValue (string funct, real_t x, real_t y, real_t z, real_t t) |
Return the calculated value of the function. More... | |
size_t | getNbFuncts () const |
Get the Number of read functions. More... | |
size_t | getNbVar (size_t n) const |
Get number of variables of a given function. More... | |
string | getFunctName (size_t n) const |
Get the name of a read function. More... | |
size_t | getSize (size_t n, size_t i) const |
Get number of points defining tabulation. More... | |
real_t | getMinVar (size_t n, size_t i) const |
Get minimal value of a variable. More... | |
real_t | getMaxVar (size_t n, size_t i) const |
Get maximal value of a variable. More... | |
Point< real_t > | CrossProduct (const Point< real_t > &lp, const Point< real_t > &rp) |
Return Cross product of two vectors lp and rp | |
SpaceTime | CrossProduct (const SpaceTime &lp, const SpaceTime &rp) |
Return Cross product of two vectors lp and rp | |
SpMatrix () | |
Default constructor. More... | |
SpMatrix (size_t nr, size_t nc) | |
Constructor that initializes current instance as a dense matrix. More... | |
SpMatrix (size_t size, int is_diagonal=false) | |
Constructor that initializes current instance as a dense matrix. More... | |
SpMatrix (Mesh &mesh, size_t dof=0, int is_diagonal=false) | |
Constructor using a Mesh instance. More... | |
SpMatrix (const vector< RC > &I, int opt=1) | |
Constructor for a square matrix using non zero row and column indices. More... | |
SpMatrix (const vector< RC > &I, const Vect< T_ > &a, int opt=1) | |
Constructor for a square matrix using non zero row and column indices. More... | |
SpMatrix (size_t nr, size_t nc, const vector< size_t > &row_ptr, const vector< size_t > &col_ind) | |
Constructor for a rectangle matrix. More... | |
SpMatrix (size_t nr, size_t nc, const vector< size_t > &row_ptr, const vector< size_t > &col_ind, const vector< T_ > &a) | |
Constructor for a rectangle matrix. More... | |
SpMatrix (const vector< size_t > &row_ptr, const vector< size_t > &col_ind) | |
Constructor for a rectangle matrix. More... | |
SpMatrix (const vector< size_t > &row_ptr, const vector< size_t > &col_ind, const vector< T_ > &a) | |
Constructor for a rectangle matrix. More... | |
SpMatrix (const SpMatrix &m) | |
Copy constructor. | |
~SpMatrix () | |
Destructor. | |
void | Identity () |
Define matrix as identity. | |
void | Dense () |
Define matrix as a dense one. | |
void | Diagonal () |
Define matrix as a diagonal one. | |
void | Diagonal (const T_ &a) |
Define matrix as a diagonal one with diagonal entries equal to a | |
void | Laplace1D (size_t n, real_t h) |
Sets the matrix as the one for the Laplace equation in 1-D. More... | |
void | Laplace2D (size_t nx, size_t ny) |
Sets the matrix as the one for the Laplace equation in 2-D. More... | |
void | setMesh (Mesh &mesh, size_t dof=0) |
Determine mesh graph and initialize matrix. More... | |
void | setOneDOF () |
Activate 1-DOF per node option. | |
void | setSides () |
Activate Sides option. | |
void | setDiag () |
Store diagonal entries in a separate internal vector. | |
void | DiagPrescribe (Mesh &mesh, Vect< T_ > &b, const Vect< T_ > &u) |
Impose by a diagonal method an essential boundary condition. More... | |
void | DiagPrescribe (Vect< T_ > &b, const Vect< T_ > &u) |
Impose by a diagonal method an essential boundary condition using the Mesh instance provided by the constructor. More... | |
void | setSize (size_t size) |
Set size of matrix (case where it's a square matrix). More... | |
void | setSize (size_t nr, size_t nc) |
Set size (number of rows) of matrix. More... | |
void | setGraph (const vector< RC > &I, int opt=1) |
Set graph of matrix by giving a vector of its nonzero entries. More... | |
Vect< T_ > | getRow (size_t i) const |
Get i -th row vector. | |
Vect< T_ > | getColumn (size_t j) const |
Get j -th column vector. | |
T_ | at (size_t i, size_t j) |
Return a value of a matrix entry. More... | |
T_ & | operator() (size_t i, size_t j) |
Operator () (Non constant version) More... | |
T_ | operator() (size_t i, size_t j) const |
Operator () (Constant version) More... | |
T_ | operator() (size_t i) const |
Operator () with one argument (Constant version) More... | |
T_ | operator[] (size_t i) const |
Operator [] (Constant version). More... | |
Vect< T_ > | operator* (const Vect< T_ > &x) const |
Operator * to multiply matrix by a vector. More... | |
SpMatrix< T_ > & | operator*= (const T_ &a) |
Operator *= to premultiply matrix by a constant. More... | |
void | getMesh (Mesh &mesh) |
Get mesh instance whose reference will be stored in current instance of SpMatrix. | |
void | Mult (const Vect< T_ > &x, Vect< T_ > &y) const |
Multiply matrix by vector and save in another one. More... | |
void | MultAdd (const Vect< T_ > &x, Vect< T_ > &y) const |
Multiply matrix by vector x and add to y . More... | |
void | MultAdd (T_ a, const Vect< T_ > &x, Vect< T_ > &y) const |
Multiply matrix by vector a*x and add to y . More... | |
void | TMult (const Vect< T_ > &x, Vect< T_ > &y) const |
Multiply transpose of matrix by vector x and save in y . More... | |
void | Axpy (T_ a, const SpMatrix< T_ > &m) |
Add to matrix the product of a matrix by a scalar. More... | |
void | Axpy (T_ a, const Matrix< T_ > *m) |
Add to matrix the product of a matrix by a scalar. More... | |
void | set (size_t i, size_t j, const T_ &val) |
Assign a value to an entry of the matrix. More... | |
void | add (size_t i, size_t j, const T_ &val) |
Add a value to an entry of the matrix. More... | |
void | operator= (const T_ &x) |
Operator =. More... | |
size_t | getColInd (size_t i) const |
Return storage information. More... | |
size_t | getRowPtr (size_t i) const |
Return Row pointer at position i . | |
int | solve (const Vect< T_ > &b, Vect< T_ > &x, bool fact=false) |
Solve the linear system of equations. More... | |
void | setSolver (Iteration solver=CG_SOLVER, Preconditioner prec=DIAG_PREC, int max_it=1000, real_t toler=1.e-8) |
Choose solver and preconditioner for an iterative procedure. More... | |
void | clear () |
brief Set all matrix entries to zero | |
T_ * | get () const |
Return C-Array. More... | |
T_ | get (size_t i, size_t j) const |
Return entry (i,j) of matrix if this one is stored, 0 otherwise. More... | |
void | add (size_t i, const T_ &val) |
Add val to entry i . | |
TrMatrix () | |
Default constructor. More... | |
TrMatrix (size_t size) | |
Constructor for a tridiagonal matrix with size rows. | |
TrMatrix (const TrMatrix &m) | |
Copy Constructor. | |
~TrMatrix () | |
Destructor. | |
void | Identity () |
Define matrix as identity matrix. | |
void | Diagonal () |
Define matrix as a diagonal one. | |
void | Diagonal (const T_ &a) |
Define matrix as a diagona one and assign value a to all diagonal entries. | |
void | Laplace1D (real_t h) |
Define matrix as the one of 3-point finite difference discretization of the second derivative. More... | |
void | setSize (size_t size) |
Set size (number of rows) of matrix. More... | |
void | MultAdd (const Vect< T_ > &x, Vect< T_ > &y) const |
Multiply matrix by vector x and add result to y . | |
void | MultAdd (T_ a, const Vect< T_ > &x, Vect< T_ > &y) const |
Multiply matrix by vector a*x and add result to y . | |
void | Mult (const Vect< T_ > &x, Vect< T_ > &y) const |
Multiply matrix by vector x and save result in y . | |
void | TMult (const Vect< T_ > &x, Vect< T_ > &y) const |
Multiply transpose of matrix by vector x and save result in y . | |
void | Axpy (T_ a, const TrMatrix< T_ > &m) |
Add to matrix the product of a matrix by a scalar. More... | |
void | Axpy (T_ a, const Matrix< T_ > *m) |
Add to matrix the product of a matrix by a scalar. More... | |
void | set (size_t i, size_t j, const T_ &val) |
Assign constant val to an entry (i,j) of the matrix. | |
void | add (size_t i, size_t j, const T_ &val) |
Add constant val value to an entry (i,j) of the matrix. | |
void | add (size_t i, const T_ &val) |
Add val to entry i . | |
T_ | at (size_t i, size_t j) |
Return a value of a matrix entry. More... | |
T_ | operator() (size_t i, size_t j) const |
Operator () (Constant version). More... | |
T_ & | operator() (size_t i, size_t j) |
Operator () (Non constant version). More... | |
TrMatrix< T_ > & | operator= (const TrMatrix< T_ > &m) |
Operator =. More... | |
TrMatrix< T_ > & | operator= (const T_ &x) |
Operator = Assign matrix to identity times x . | |
TrMatrix< T_ > & | operator*= (const T_ &x) |
Operator *=. More... | |
int | solve (Vect< T_ > &b, bool fact=true) |
Solve a linear system with current matrix (forward and back substitution). More... | |
int | solve (const Vect< T_ > &b, Vect< T_ > &x, bool fact=false) |
Solve a linear system with current matrix (forward and back substitution). More... | |
T_ * | get () const |
Return C-Array. | |
T_ | get (size_t i, size_t j) const |
Return entry (i,j) of matrix. | |
Grid () | |
Construct a default grid with 10 intervals in each direction. | |
Grid (real_t xm, real_t xM, size_t npx) | |
Construct a 1-D structured grid given its extremal coordinates and number of intervals. More... | |
Grid (real_t xm, real_t xM, real_t ym, real_t yM, size_t npx, size_t npy) | |
Construct a 2-D structured grid given its extremal coordinates and number of intervals. More... | |
Grid (Point< real_t > m, Point< real_t > M, size_t npx, size_t npy) | |
Construct a 2-D structured grid given its extremal coordinates and number of intervals. More... | |
Grid (real_t xm, real_t xM, real_t ym, real_t yM, real_t zm, real_t zM, size_t npx, size_t npy, size_t npz) | |
Construct a 3-D structured grid given its extremal coordinates and number of intervals. More... | |
Grid (Point< real_t > m, Point< real_t > M, size_t npx, size_t npy, size_t npz) | |
Construct a 3-D structured grid given its extremal coordinates and number of intervals. More... | |
~Grid () | |
Destructor. | |
void | setXMin (const Point< real_t > &x) |
Set min. coordinates of the domain. More... | |
void | setXMax (const Point< real_t > &x) |
void | setDomain (real_t xmin, real_t xmax) |
Set Dimensions of the domain: 1-D case. More... | |
void | setDomain (real_t xmin, real_t xmax, real_t ymin, real_t ymax) |
Set Dimensions of the domain: 2-D case. More... | |
void | setDomain (real_t xmin, real_t xmax, real_t ymin, real_t ymax, real_t zmin, real_t zmax) |
Set Dimensions of the domain: 3-D case. More... | |
void | setDomain (Point< real_t > xmin, Point< real_t > xmax) |
Set Dimensions of the domain: 3-D case. More... | |
const Point< real_t > & | getXMin () const |
Return min. Coordinates of the domain. | |
const Point< real_t > & | getXMax () const |
Return max. Coordinates of the domain. | |
void | setN (size_t nx, size_t ny=0, size_t nz=0) |
Set number of grid intervals in the x , y and z -directions. More... | |
void | setX (const Vect< real_t > &x) |
Set node x-coordinates of grid. More... | |
void | setXY (const Vect< real_t > &x, const Vect< real_t > &y) |
Set node x- and y-coordinates of grid. More... | |
void | setXYZ (const Vect< real_t > &x, const Vect< real_t > &y, const Vect< real_t > &z) |
Set node x-, y- and z-coordinates of grid. More... | |
void | setNbDOF (size_t n) |
Set number of degrees of freedom for a node [Default: 1 ]. | |
size_t | getNx () const |
Return number of grid intervals in the x -direction. | |
size_t | getNy () const |
Return number of grid intervals in the y -direction. More... | |
size_t | getNz () const |
Return number of grid intervals in the z-direction. More... | |
real_t | getHx () const |
Return grid size in the x-direction. | |
real_t | getHy () const |
Return grid size in the y-direction. | |
real_t | getHz () const |
Return grid size in the z-direction. | |
Point< real_t > | getCoord (size_t i) const |
Return coordinates a point with label i in a 1-D grid. | |
Point< real_t > | getCoord (size_t i, size_t j) const |
Return coordinates a point with label (i,j) in a 2-D grid. | |
Point< real_t > | getCoord (size_t i, size_t j, size_t k) const |
Return coordinates a point with label (i,j,k) in a 3-D grid. | |
size_t | getNbNodes () const |
Return total number of grid nodes. | |
size_t | getNbDOF () const |
Return total number of dof. | |
real_t | getX (size_t i) const |
Return x-coordinate of point with index i | |
real_t | getY (size_t j) const |
Return y-coordinate of point with index j | |
real_t | getZ (size_t k) const |
Return z-coordinate of point with index k | |
Point2D< real_t > | getXY (size_t i, size_t j) const |
Return coordinates of point with indices (i,j) | |
Point< real_t > | getXYZ (size_t i, size_t j, size_t k) const |
Return coordinates of point with indices (i,j,k) | |
real_t | getCenter (size_t i) const |
Return coordinates of center of a 1-D cell with indices i , i+1 | |
Point< real_t > | getCenter (size_t i, size_t j) const |
Return coordinates of center of a 2-D cell with indices (i,j) , (i+1,j) , (i+1,j+1) , (i,j+1) | |
Point< real_t > | getCenter (size_t i, size_t j, size_t k) const |
Return coordinates of center of a 3-D cell with indices (i,j,k) , (i+1,j,k) , (i+1,j+1,k) , (i,j+1,k) , (i,j,k+1) , (i+1,j,k+1) , (i+1,j+1,k+1) , (i,j+1,k+1) | |
void | setCode (string exp, int code) |
Set a code for some grid points. More... | |
void | setCode (int side, int code) |
Set a code for grid points on sides. More... | |
int | getCode (int side) const |
Return code for a side number. More... | |
int | getCode (size_t i, size_t j) const |
Return code for a grid point. More... | |
int | getCode (size_t i, size_t j, size_t k) const |
Return code for a grid point. More... | |
size_t | getDim () const |
Return space dimension. | |
void | Deactivate (size_t i) |
Change state of a cell from active to inactive (1-D grid) More... | |
void | Deactivate (size_t i, size_t j) |
Change state of a cell from active to inactive (2-D grid) More... | |
void | Deactivate (size_t i, size_t j, size_t k) |
Change state of a cell from active to inactive (2-D grid) More... | |
int | isActive (size_t i) const |
Say if cell is active or not (1-D grid) More... | |
int | isActive (size_t i, size_t j) const |
Say if cell is active or not (2-D grid) More... | |
int | isActive (size_t i, size_t j, size_t k) const |
Say if cell is active or not (3-D grid) More... | |
ostream & | operator<< (ostream &s, const Grid &g) |
Output grid data. | |
FuncApprox () | |
Default constructor. More... | |
~FuncApprox () | |
Destructor. | |
void | setLagrange (int n, const Vect< real_t > &x, const Vect< real_t > &y, Fct &f) |
Define Lagrange interpolation. More... | |
void | setLeastSquare (const vector< Fct *> &f, const Vect< real_t > &x, const Vect< real_t > &y, Vect< real_t > &a) |
Define least square approximation using given basis functions. More... | |
void | setLeastSquare (DMatrix< real_t > &B, const Vect< real_t > &y, Vect< real_t > &a) |
Define least square approximation with given least square matrix. More... | |
void | setLeastSquare (const Vect< real_t > &x, const Vect< real_t > &y, size_t N, Vect< real_t > &a) |
Define least square approximation using polynomial regression. More... | |
void | setLeastSquare (const Vect< real_t > &x, const Vect< real_t > &y, real_t &a0, real_t &a1) |
Constructor foDefine least square approximation using linear regression. More... | |
void | getLeastSquare (Fct &f) |
Compute the resulting least square fitting function. More... | |
void | setBSpline (size_t n, size_t c, size_t np, const Vect< real_t > &b, Vect< real_t > &p) |
Define BSpline approximation. More... | |
void | setBSplineSurface (size_t m, size_t n, size_t c, size_t d, size_t npu, size_t npw, const Vect< real_t > &b, Vect< real_t > &p) |
Define BSpline surface modelling. More... | |
void | setBezier (size_t n, size_t nc, const Vect< real_t > &b, Vect< real_t > &p) |
Define Bezier modelling. More... | |
void | setBezierSurface (size_t m, size_t n, size_t npu, size_t npw, const Vect< real_t > &b, Vect< real_t > &p) |
Define Bezier surface modelling. More... | |
void | setNurbs (size_t n, size_t c, size_t np, const Vect< real_t > &b, const Vect< real_t > &h, Vect< real_t > &p) |
Define for Nurbs modelling. More... | |
void | setNurbsSurface (size_t m, size_t n, size_t c, size_t d, size_t npu, size_t npw, const Vect< real_t > &b, Vect< real_t > &p) |
Define Nurbs surface modelling. More... | |
int | run () |
Run approximation process. More... | |
GeoModel () | |
Default constructor. More... | |
GeoModel (const Vect< real_t > &b, Vect< real_t > &p) | |
Constructor with given polygon points and solution vector. More... | |
GeoModel (const Vect< real_t > &b, const Vect< real_t > &h, Vect< real_t > &p) | |
Constructor with given data for nurbs. More... | |
~GeoModel () | |
Destructor. | |
void | setData (const Vect< real_t > &b, Vect< real_t > &p) |
Set vector data. More... | |
void | setData (const Vect< real_t > &b, const Vect< real_t > &h, Vect< real_t > &p) |
Set vector data for Nurbs. More... | |
void | setBSplinePar (size_t n, size_t c, size_t np) |
Set parameters for BSpline modelling. More... | |
void | setBSplineSurfacePar (size_t m, size_t n, size_t c, size_t d, size_t npu, size_t npw) |
Set parameters for BSplineS modelling. More... | |
void | setBezierPar (size_t n, size_t nc) |
Set parameters for BSpline modelling. More... | |
void | setBezierSurfacePar (size_t m, size_t n, size_t npu, size_t npw) |
Set parameters for BSpline modelling. More... | |
void | setNurbsPar (size_t n, size_t c, size_t np) |
Set parameters for Nurbs modelling. More... | |
void | BSpline () |
Run bspline modelling. More... | |
void | BSplineSurface () |
Run surface bspline modelling. More... | |
void | Bezier () |
Run Bezier modelling. More... | |
void | BezierSurface () |
Run Surface Bezier modelling. More... | |
void | Nurbs () |
Run Nurbs modelling. More... | |
LeastSquare () | |
Default constructor. More... | |
LeastSquare (vector< Fct *> &f, const Vect< real_t > &x, const Vect< real_t > &y, Vect< real_t > &a) | |
Constructor of least square approximation using given basis functions. More... | |
LeastSquare (DMatrix< real_t > &B, const Vect< real_t > &y, Vect< real_t > &a) | |
Constructor with given least square matrix. More... | |
LeastSquare (const Vect< real_t > &x, const Vect< real_t > &y, size_t N, Vect< real_t > &a) | |
Constructor for polynomial regression. More... | |
LeastSquare (const Vect< real_t > &x, const Vect< real_t > &y, real_t &a0, real_t &a1) | |
Constructor for linear regression. More... | |
~LeastSquare () | |
Destructor. | |
void | set (vector< Fct *> &f, const Vect< real_t > &x, const Vect< real_t > &y, Vect< real_t > &a) |
Set least square approximation using given basis functions. More... | |
void | set (DMatrix< real_t > &B, const Vect< real_t > &y, Vect< real_t > &a) |
Set least square approximation using least square matrix. More... | |
void | set (const Vect< real_t > &x, const Vect< real_t > &y, size_t N, Vect< real_t > &a) |
Set least square approximation by polynomial regression. More... | |
void | set (const Vect< real_t > &x, const Vect< real_t > &y, real_t &a0, real_t &a1) |
Set least square approximation by linear regression. More... | |
int | run () |
Compute least square approximation. | |
Iter () | |
Default Constructor. More... | |
Iter (int max_it, real_t toler) | |
Constructor with iteration parameters. More... | |
bool | check (Vect< T_ > &u, const Vect< T_ > &v, int opt=2) |
Check convergence. More... | |
bool | check (T_ &u, const T_ &v) |
Check convergence for a scalar case (one equation) More... | |
enum Analysis |
enum BCType |
To select special boundary conditions.
enum EigenMethod |
enum FEType |
Choose Finite Element Type
enum IntegrationScheme |
Choose numerical integration scheme
enum Iteration |
enum MatrixType |
|
strong |
Enumerate class to select various terms in partial differential equations
|
strong |
Choose PDE Coefficient
enum Preconditioner |
enum TimeScheme |
Selects Time integration scheme
FuncApprox | ( | ) |
Default constructor.
The function setData can then be used
GeoModel | ( | ) |
Default constructor.
The function setData can then be used
Constructor with given polygon points and solution vector.
This function is to be used if the default constructed was used
[in] | b | Vector containing the defining polygon vertices |
[in,out] | p | Vector containing the resulting curve points |
Constructor with given data for nurbs.
This function is to be used if the default constructed was used
[in] | b | Vector containing the defining polygon vertices |
[in] | h | Vector containing the homogeneous weighting factors |
[in,out] | p | Vector containing the resulting curve points |
Construct a 1-D structured grid given its extremal coordinates and number of intervals.
[in] | xm | Minimal value for x |
[in] | xM | Maximal value for x |
[in] | npx | Number of grid intervals in the x -direction |
Construct a 2-D structured grid given its extremal coordinates and number of intervals.
[in] | xm | Minimal value for x |
[in] | xM | Maximal value for x |
[in] | ym | Minimal value for y |
[in] | yM | Maximal value for y |
[in] | npx | Number of grid intervals in the x -direction |
[in] | npy | Number of grid intervals in the y -direction |
Construct a 2-D structured grid given its extremal coordinates and number of intervals.
[in] | m | Minimal coordinate value |
[in] | M | Maximal coordinate value |
[in] | npx | Number of grid intervals in the x -direction |
[in] | npy | Number of grid intervals in the y -direction |
Grid | ( | real_t | xm, |
real_t | xM, | ||
real_t | ym, | ||
real_t | yM, | ||
real_t | zm, | ||
real_t | zM, | ||
size_t | npx, | ||
size_t | npy, | ||
size_t | npz | ||
) |
Construct a 3-D structured grid given its extremal coordinates and number of intervals.
[in] | xm | Minimal value for x |
[in] | xM | Maximal value for x |
[in] | ym | Minimal value for y |
[in] | yM | Maximal value for y |
[in] | zm | Minimal value for z |
[in] | zM | Maximal value for z |
[in] | npx | Number of grid intervals in the x -direction |
[in] | npy | Number of grid intervals in the y -direction |
[in] | npz | Number of grid intervals in the z -direction |
Construct a 3-D structured grid given its extremal coordinates and number of intervals.
[in] | m | Minimal coordinate value |
[in] | M | Maximal coordinate value |
[in] | npx | Number of grid intervals in the x -direction |
[in] | npy | Number of grid intervals in the y -direction |
[in] | npz | Number of grid intervals in the z -direction |
IOField | ( | const string & | file, |
AccessType | access, | ||
bool | compact = true |
||
) |
Constructor using file name.
[in] | file | File name. |
[in] | access | Access code. This number is to be chosen among two enumerated values:
|
[in] | compact | Flag to choose a compact storage or not [Default: true ] |
IOField | ( | const string & | mesh_file, |
const string & | file, | ||
Mesh & | ms, | ||
AccessType | access, | ||
bool | compact = true |
||
) |
Constructor using file name, mesh file and mesh.
[in] | mesh_file | File containing mesh |
[in] | file | File that contains field stored or to store |
[in] | ms | Mesh instance |
[in] | access | Access code. This number is to be chosen among two enumerated values:
|
[in] | compact | Flag to choose a compact storage or not [Default: true ] |
IOField | ( | const string & | file, |
Mesh & | ms, | ||
AccessType | access, | ||
bool | compact = true |
||
) |
Constructor using file name and mesh.
[in] | file | File that contains field stored or to store |
[in] | ms | Mesh instance |
[in] | access | Access code. This number is to be chosen among two enumerated values:
|
[in] | compact | Flag to choose a compact storage or not [Default: true ] |
IOField | ( | const string & | file, |
AccessType | access, | ||
const string & | name | ||
) |
Constructor using file name and field name.
[in] | file | File that contains field stored or to store |
[in] | access | Access code. This number is to be chosen among two enumerated values:
|
[in] | name | Seek a specific field with given name |
Iter | ( | ) |
Default Constructor.
This constructor set default values: the maximal number of iterations is set to 100
and the tolerance to 1.e-8
Constructor with iteration parameters.
[in] | max_it | Maximum number of iterations |
[in] | toler | Tolerance value for convergence |
LeastSquare | ( | ) |
Default constructor.
The functions set(...) must be used to define data before computing the approximation using run()
LeastSquare | ( | vector< Fct *> & | f, |
const Vect< real_t > & | x, | ||
const Vect< real_t > & | y, | ||
Vect< real_t > & | a | ||
) |
Constructor of least square approximation using given basis functions.
The least square approximation defines the function: a[0]*f[0] + a[1]*f[1] + ... + a[N]*f[N]
[in] | f | Vector of references to functions (class Fct) defining basis of least square approximation |
[in] | x | Vector defining x-coordinates of points |
[in] | y | Vector defining y-coordinates of points |
[out] | a | Vector containing solution: Coefficients of basis functions |
Constructor for polynomial regression.
Define N-degree polynomial to approximate in the sense of least squares of a given set of points in the plane. The resulting line has the equation: y = a[0] + a[1]*x + ... + a[N]*x^N
[in] | x | Vector defining x-coordinates of points |
[in] | y | Vector defining y-coordinates of points |
[in] | N | Degree of approximation polynomial |
[out] | a | Vector of coefficients of polynomial as defined here above |
Constructor for linear regression.
Define 1-degree polynomial to approximate in the sense of least squares of a given set of points in the plane. The resulting line has the equation: y = a0 + a1*x
[in] | x | Vector defining x-coordinates of points |
[in] | y | Vector defining y-coordinates of points |
[out] | a0 | Coefficient of constant term |
[out] | a1 | Coefficient of first degree term |
SpMatrix | ( | ) |
Default constructor.
Initialize a zero-dimension matrix
SpMatrix | ( | size_t | nr, |
size_t | nc | ||
) |
Constructor that initializes current instance as a dense matrix.
Normally, for a dense matrix this is not the right class.
[in] | nr | Number of matrix rows. |
[in] | nc | Number of matrix columns. |
SpMatrix | ( | size_t | size, |
int | is_diagonal = false |
||
) |
Constructor that initializes current instance as a dense matrix.
Normally, for a dense matrix this is not the right class.
[in] | size | Number of matrix rows (and columns). |
[in] | is_diagonal | Boolean argument to say is the matrix is actually a diagonal matrix or not. |
Constructor using a Mesh instance.
[in] | mesh | Mesh instance from which matrix graph is extracted. |
[in] | dof | Option parameter, with default value 0 .dof=1 means that only one degree of freedom for each node (or element or side) is taken to determine matrix structure. The value dof=0 means that matrix structure is determined using all DOFs. |
[in] | is_diagonal | Boolean argument to say is the matrix is actually a diagonal matrix or not. |
SpMatrix | ( | const vector< RC > & | I, |
int | opt = 1 |
||
) |
Constructor for a square matrix using non zero row and column indices.
[in] | I | Vector containing pairs of row and column indices |
[in] | opt | Flag indicating if vectors I is cleaned and ordered (opt=1) or not (opt=0). In the latter case, this vector can have the same contents more than once and are not necessarily ordered |
Constructor for a square matrix using non zero row and column indices.
[in] | I | Vector containing pairs of row and column indices |
[in] | a | Vector containing matrix entries in the same order than the one given by I |
[in] | opt | Flag indicating if vector I is cleaned and ordered (opt=1 : default) or not (opt=0 ). In the latter case, this vector can have the same contents more than once and are not necessarily ordered |
SpMatrix | ( | size_t | nr, |
size_t | nc, | ||
const vector< size_t > & | row_ptr, | ||
const vector< size_t > & | col_ind | ||
) |
Constructor for a rectangle matrix.
[in] | nr | Number of rows |
[in] | nc | Number of columns |
[in] | row_ptr | Vector of row pointers (See the above description of this class). |
[in] | col_ind | Vector of column indices (See the above description of this class). |
SpMatrix | ( | size_t | nr, |
size_t | nc, | ||
const vector< size_t > & | row_ptr, | ||
const vector< size_t > & | col_ind, | ||
const vector< T_ > & | a | ||
) |
Constructor for a rectangle matrix.
[in] | nr | Number of rows |
[in] | nc | Number of columns |
[in] | row_ptr | Vector of row pointers (See the above description of this class). |
[in] | col_ind | Vector of column indices (See the above description of this class). |
[in] | a | vector instance containing matrix entries stored columnwise |
SpMatrix | ( | const vector< size_t > & | row_ptr, |
const vector< size_t > & | col_ind | ||
) |
Constructor for a rectangle matrix.
[in] | row_ptr | Vector of row pointers (See the above description of this class). |
[in] | col_ind | Vector of column indices (See the above description of this class). |
SpMatrix | ( | const vector< size_t > & | row_ptr, |
const vector< size_t > & | col_ind, | ||
const vector< T_ > & | a | ||
) |
Constructor for a rectangle matrix.
[in] | row_ptr | Vector of row pointers (See the above description of this class). |
[in] | col_ind | Vector of column indices (See the above description of this class). |
[in] | a | vector instance that contain matrix entries stored row by row. Number of rows is extracted from vector row_ptr . |
TrMatrix | ( | ) |
Default constructor.
Initialize a zero dimension tridiagonal matrix
|
virtual |
Add a value to an entry of the matrix.
[in] | i | Row index |
[in] | j | Column index |
[in] | val | Constant value to add to a(i,j) |
Implements Matrix< T_ >.
|
virtual |
Return a value of a matrix entry.
[in] | i | Row index (starts at 1) |
[in] | j | Column index (starts at 1) |
Implements Matrix< T_ >.
|
virtual |
Return a value of a matrix entry.
[in] | i | Row index (starts at 1) |
[in] | j | Column index (starts at 1) |
Implements Matrix< T_ >.
void Axpy | ( | T_ | a, |
const TrMatrix< T_ > & | m | ||
) |
Add to matrix the product of a matrix by a scalar.
[in] | a | Scalar to premultiply |
[in] | m | Matrix by which a is multiplied. The result is added to current instance |
|
virtual |
Add to matrix the product of a matrix by a scalar.
[in] | a | Scalar to premultiply |
[in] | m | Matrix by which a is multiplied. The result is added to current instance |
Implements Matrix< T_ >.
void Axpy | ( | T_ | a, |
const SpMatrix< T_ > & | m | ||
) |
Add to matrix the product of a matrix by a scalar.
[in] | a | Scalar to premultiply |
[in] | m | Matrix by which a is multiplied. The result is added to current instance |
|
virtual |
Add to matrix the product of a matrix by a scalar.
[in] | a | Scalar to premultiply |
[in] | m | Pointer to Matrix by which a is multiplied. The result is added to current instance |
Implements Matrix< T_ >.
void Bezier | ( | ) |
Run Bezier modelling.
p
given by the constructor or by setData void BezierSurface | ( | ) |
Run Surface Bezier modelling.
p
given by the constructor or by setData void BSpline | ( | ) |
Run bspline modelling.
p
given by the constructor or by setData void BSplineSurface | ( | ) |
Run surface bspline modelling.
p
given by the constructor or by setData Check convergence.
[in,out] | u | Solution vector at previous iteration |
[in] | v | Solution vector at current iteration |
[in] | opt | Vector norm for convergence checking 1 : 1-norm, 2 : 2-norm, 0: Max. norm [Default: 2 ] |
After checking, this function copied v
into u
.
bool check | ( | T_ & | u, |
const T_ & | v | ||
) |
Check convergence for a scalar case (one equation)
[in,out] | u | Solution at previous iteration |
[in] | v | Solution at current iteration |
After checking, this function copied v
into u
.
void Deactivate | ( | size_t | i | ) |
Change state of a cell from active to inactive (1-D grid)
[in] | i | grid cell to remove |
void Deactivate | ( | size_t | i, |
size_t | j | ||
) |
Change state of a cell from active to inactive (2-D grid)
[in] | i | i -th index for grid cell to remove. If this value is 0 , all cells (*,j) are deactivated |
[in] | j | j -th index for grid cell to remove If this value is 0 , all cells (i,*) are deactivated |
i
and j
have value 0
all grid cells are deactivated !! void Deactivate | ( | size_t | i, |
size_t | j, | ||
size_t | k | ||
) |
Change state of a cell from active to inactive (2-D grid)
[in] | i | i -th index for grid cell to remove. If this value is 0 , all cells (*,j,k) are deactivated |
[in] | j | j -th index for grid cell to remove If this value is 0 , all cells (i,*,k) are deactivated |
[in] | k | k -th index for grid cell to remove If this value is 0 , all cells (i,j,*) are deactivated |
Impose by a diagonal method an essential boundary condition.
This member function modifies diagonal terms in matrix and terms in vector that correspond to degrees of freedom with nonzero code in order to impose a boundary condition. The penalty parameter is defined by default equal to 1.e20. It can be modified by member function setPenal(..).
Impose by a diagonal method an essential boundary condition using the Mesh instance provided by the constructor.
This member function modifies diagonal terms in matrix and terms in vector that correspond to degrees of freedom with nonzero code in order to impose a boundary condition. The penalty parameter is defined by default equal to 1.e20. It can be modified by member function setPenal(..).
Get Vect v
instance from file.
First time step is read from the XML
file.
Get Vect v
instance from file corresponding to a specific time value.
The sought vector corresponding to the time value is read from the XML
file.
[in,out] | v | Vector instance |
[in] | t | Time value |
T_* get | ( | ) | const |
Return C-Array.
Non zero terms of matrix is stored row by row.
|
virtual |
Return entry (i,j)
of matrix if this one is stored, 0
otherwise.
[in] | i | Row index (Starting from 1) |
[in] | j | Column index (Starting from 1) |
Implements Matrix< T_ >.
int getCode | ( | int | side | ) | const |
Return code for a side number.
[in] | side | Side for which code is returned. Possible values are: MIN_X , MAX_X , MIN_Y , MAX_Y , MIN_Z , MAX_Z |
int getCode | ( | size_t | i, |
size_t | j | ||
) | const |
Return code for a grid point.
[in] | i | i -th index for node for which code is to be returned. |
[in] | j | j -th index for node for which code is to be returned. |
int getCode | ( | size_t | i, |
size_t | j, | ||
size_t | k | ||
) | const |
Return code for a grid point.
[in] | i | i -th index for node for which code is to be returned. |
[in] | j | j -th index for node for which code is to be returned. |
[in] | k | k -th index for node for which code is to be returned. |
|
virtual |
Return storage information.
i
-th stored element in matrix Reimplemented from Matrix< T_ >.
Return the derivative of the function at a given point.
Case of a function of one variable
[in] | funct | Name of the function to be evaluated, as read from input file |
[in] | x | Value of the variable |
string getFunctName | ( | size_t | n | ) | const |
Get the name of a read function.
[in] | n | index of function |
void getLeastSquare | ( | Fct & | f | ) |
Compute the resulting least square fitting function.
Once the function run() is invoked, this member function gives the analytical expression of the resulting least square fitting function
[in] | f | Reference to approximating function using the least square method |
real_t getMaxVar | ( | size_t | n, |
size_t | i | ||
) | const |
Get maximal value of a variable.
[in] | n | index of function |
[in] | i | index of variable (between 1 and 3) |
real_t getMinVar | ( | size_t | n, |
size_t | i | ||
) | const |
Get minimal value of a variable.
[in] | n | index of function |
[in] | i | index of variable (Between 1 and 3) |
size_t getNbFuncts | ( | ) | const |
Get the Number of read functions.
size_t getNbVar | ( | size_t | n | ) | const |
Get number of variables of a given function.
[in] | n | index of function |
size_t getNy | ( | ) | const |
Return number of grid intervals in the y
-direction.
ny=0
for 1-D domains (segments)
size_t getNz | ( | ) | const |
Return number of grid intervals in the z-direction.
nz=0
for 1-D (segments) and 2-D domains (rectangles)
size_t getSize | ( | size_t | n, |
size_t | i | ||
) | const |
Get number of points defining tabulation.
[in] | n | index of function (Starting from 1) |
[in] | i | index of variable (Between 1 and 3) |
Return the calculated value of the function.
Case of a function of one variable
[in] | funct | Name of the function to be evaluated, as read from input file |
[in] | x | Value of the variable |
Return the calculated value of the function.
Case of a function of two variables
[in] | funct | Name of the function to be evaluated, as read from input file |
[in] | x | Value of the first variable |
[in] | y | Value of the second variable |
Return the calculated value of the function.
Case of a function of three variables
[in] | funct | Name of the funct to be evaluated, as read from input file |
[in] | x | Value of the first variable |
[in] | y | Value of the second variable |
[in] | z | Value of the third variable |
Return the calculated value of the function.
Case of a function of three variables
[in] | funct | Name of the funct to be evaluated, as read from input file |
[in] | x | Value of the first variable |
[in] | y | Value of the second variable |
[in] | z | Value of the third variable |
[in] | t | Value of the fourth variable |
int isActive | ( | size_t | i | ) | const |
Say if cell is active or not (1-D grid)
[in] | i | Index of cell |
1
if cell is active, 0
if not int isActive | ( | size_t | i, |
size_t | j | ||
) | const |
Say if cell is active or not (2-D grid)
[in] | i | i -th index of cell |
[in] | j | j -th index of cell |
1
if cell is active, 0
if not int isActive | ( | size_t | i, |
size_t | j, | ||
size_t | k | ||
) | const |
Say if cell is active or not (3-D grid)
[in] | i | i -th index of cell |
[in] | j | j -th index of cell |
[in] | k | k -th index of cell |
1
if cell is active, 0
if not void Laplace1D | ( | real_t | h | ) |
Define matrix as the one of 3-point finite difference discretization of the second derivative.
[in] | h | mesh size |
void Laplace1D | ( | size_t | n, |
real_t | h | ||
) |
Sets the matrix as the one for the Laplace equation in 1-D.
The matrix is initialized as the one resulting from P1 finite element discretization of the classical elliptic operator -u'' = f with homogeneous Dirichlet boundary conditions
[in] | n | Size of matrix (Number of rows) |
[in] | h | Mesh size (assumed constant) |
void Laplace2D | ( | size_t | nx, |
size_t | ny | ||
) |
Sets the matrix as the one for the Laplace equation in 2-D.
The matrix is initialized as the one resulting from P1 finite element discretization of the classical elliptic operator -Delta u = f with homogeneous Dirichlet boundary conditions
[in] | nx | Number of unknowns in the x -direction |
[in] | ny | Number of unknowns in the y -direction |
nx*ny
Multiply matrix by vector and save in another one.
[in] | x | Vector to multiply by matrix |
[out] | y | Vector that contains on output the result. |
Implements Matrix< T_ >.
Multiply matrix by vector x
and add to y
.
[in] | x | Vector to multiply by matrix |
[out] | y | Vector to add to the result. y contains on output the result. |
Implements Matrix< T_ >.
Multiply matrix by vector a*x
and add to y
.
[in] | a | Constant to multiply by matrix |
[in] | x | Vector to multiply by matrix |
[out] | y | Vector to add to the result. y contains on output the result. |
Implements Matrix< T_ >.
void Nurbs | ( | ) |
Run Nurbs modelling.
p
given by the constructor or by setData void open | ( | ) |
Open file.
Case where file name has been previously given (in the constructor).
void open | ( | const string & | file, |
AccessType | access | ||
) |
Open file.
[in] | file | File name. |
[in] | access | Access code. This number is to be chosen among two enumerated values:
|
|
virtual |
Operator () (Constant version).
[in] | i | Row index |
[in] | j | Column index |
Implements Matrix< T_ >.
|
virtual |
Operator () (Non constant version).
[in] | i | Row index |
[in] | j | Column index |
Implements Matrix< T_ >.
|
virtual |
Operator () (Non constant version)
[in] | i | Row index |
[in] | j | Column index |
Implements Matrix< T_ >.
|
virtual |
T_ operator() | ( | size_t | i | ) | const |
Operator ()
with one argument (Constant version)
Returns i
-th position in the array storing matrix entries. The first entry is at location 1
. Entries are stored row by row.
Operator *
to multiply matrix by a vector.
[in] | x | Vect instance to multiply by |
x
TrMatrix<T_>& operator*= | ( | const T_ & | x | ) |
Operator *=.
Premultiply matrix entries by constant value x
.
SpMatrix<T_>& operator*= | ( | const T_ & | a | ) |
Operator *=
to premultiply matrix by a constant.
[in] | a | Constant to multiply matrix by |
Operator =.
Copy matrix m
to current matrix instance.
void operator= | ( | const T_ & | x | ) |
Operator =.
Assign constant value x
to all matrix entries.
T_ operator[] | ( | size_t | i | ) | const |
Operator []
(Constant version).
Returns i
-th position in the array storing matrix entries. The first entry is at location 0
. Entries are stored row by row.
int run | ( | ) |
Run approximation process.
Results are stored in designated vector(s)
void saveGMSH | ( | string | output_file, |
string | mesh_file | ||
) |
Save field vectors in a file using GMSH format.
This member function enables avoiding the use of cfield
. It must be used once all field vectors have been stored in output file. It closes this file and copies its contents to a GMSH file.
[in] | output_file | Output file name where to store using GMSH format |
[in] | mesh_file | File containing mesh data |
void set | ( | vector< Fct *> & | f, |
const Vect< real_t > & | x, | ||
const Vect< real_t > & | y, | ||
Vect< real_t > & | a | ||
) |
Set least square approximation using given basis functions.
The least square approximation defines the function: a[0]*f[0] + a[1]*f[1] + ... + a[N]*f[N]
[in] | f | Vector of references to functions (class Fct) defining basis of least square approximation |
[in] | x | Vector defining x-coordinates of points |
[in] | y | Vector defining y-coordinates of points |
[out] | a | Vector containing solution: Coefficients of basis functions |
Set least square approximation using least square matrix.
Matrix entries is defined by B(k,i)
as the k-th basis function evaluated at x(i)
[in] | B | Rectangle matrix of Least square approximation |
[in] | y | Vector defining y-coordinates of points |
[out] | a | Vector containing solution: Coefficients of basis functions |
Set least square approximation by polynomial regression.
Define N-degree polynomial to approximate in the sense of least squares of a given set of points in the plane. The resulting line has the equation: y = a[0] + a[1]*x + ... + a[N]*x^N
[in] | x | Vector defining x-coordinates of points |
[in] | y | Vector defining y-coordinates of points |
[in] | N | Degree of approximation polynomial |
[out] | a | Vector of coefficients of polynomial as defined here above |
Set least square approximation by linear regression.
Define 1-degree polynomial to approximate in the sense of least squares of a given set of points in the plane. The resulting line has the equation: y = a0 + a1*x
[in] | x | Vector defining x-coordinates of points |
[in] | y | Vector defining y-coordinates of points |
[out] | a0 | Coefficient of constant term |
[out] | a1 | Coefficient of first degree term |
|
virtual |
Assign a value to an entry of the matrix.
[in] | i | Row index |
[in] | j | Column index |
[in] | val | Value to assign to a(i,j) |
Implements Matrix< T_ >.
Define Bezier modelling.
[in] | n | Number of defining polygon vertices |
[in] | nc | Number of points to be calculated on the curve |
[in] | b | Vector containing the defining polygon vertices |
[out] | p | Vector containing the resulting curve points |
void setBezierPar | ( | size_t | n, |
size_t | nc | ||
) |
Set parameters for BSpline modelling.
[in] | n | Number of defining polygon vertices |
[in] | nc | Number of points to be calculated on the curve |
void setBezierSurface | ( | size_t | m, |
size_t | n, | ||
size_t | npu, | ||
size_t | npw, | ||
const Vect< real_t > & | b, | ||
Vect< real_t > & | p | ||
) |
Define Bezier surface modelling.
[in] | m | One less than the number of polygon vertices in w direction |
[in] | n | One less than the number of polygon vertices in u direction |
[in] | npu | Number of parametric lines in the u direction |
[in] | npw | Number of parametric lines in the w direction |
[in] | b | Vector containing the defining polygon vertices |
[out] | p | Vector containing the resulting curve points |
void setBezierSurfacePar | ( | size_t | m, |
size_t | n, | ||
size_t | npu, | ||
size_t | npw | ||
) |
Set parameters for BSpline modelling.
[in] | m | One less than the number of polygon vertices in w direction |
[in] | n | One less than the number of polygon vertices in u direction |
[in] | npu | Number of parametric lines in the u direction |
[in] | npw | Number of parametric lines in the w direction |
Define BSpline approximation.
We set here BSpline approximation data. No computation are done yet.
[in] | n | Number of defining polygon vertices |
[in] | c | Order of the B-spline basis function |
[in] | np | Number of points to be calculated on the curve |
[in] | b | Vector containing the defining polygon vertices |
[out] | p | Vector containing the resulting curve points |
void setBSplinePar | ( | size_t | n, |
size_t | c, | ||
size_t | np | ||
) |
Set parameters for BSpline modelling.
[in] | n | Number of defining polygon vertices |
[in] | c | Order of the B-spline basis function |
[in] | np | Number of points to be calculated on the curve |
void setBSplineSurface | ( | size_t | m, |
size_t | n, | ||
size_t | c, | ||
size_t | d, | ||
size_t | npu, | ||
size_t | npw, | ||
const Vect< real_t > & | b, | ||
Vect< real_t > & | p | ||
) |
Define BSpline surface modelling.
[in] | m | One less than the number of polygon vertices in w direction |
[in] | n | One less than the number of polygon vertices in u direction |
[in] | c | Order of the B-spline basis function in w direction |
[in] | d | Order of the B-spline basis function in u direction |
[in] | npu | Number of parametric lines in the u direction |
[in] | npw | Number of parametric lines in the w direction |
[in] | b | Vector containing the defining polygon vertices |
[out] | p | Vector containing the resulting curve points |
void setBSplineSurfacePar | ( | size_t | m, |
size_t | n, | ||
size_t | c, | ||
size_t | d, | ||
size_t | npu, | ||
size_t | npw | ||
) |
Set parameters for BSplineS modelling.
[in] | m | One less than the number of polygon vertices in w direction |
[in] | n | One less than the number of polygon vertices in u direction |
[in] | c | Order of the B-spline basis function in w direction |
[in] | d | Order of the B-spline basis function in u direction |
[in] | npu | Number of parametric lines in the u direction |
[in] | npw | Number of parametric lines in the w direction |
void setCode | ( | string | exp, |
int | code | ||
) |
Set a code for some grid points.
[in] | exp | Regular expression that determines the set of grid points on which the code is applied. |
[in] | code | Code to assign. |
void setCode | ( | int | side, |
int | code | ||
) |
Set a code for grid points on sides.
[in] | side | Side for which code is assigned. Possible values are: MIN_X , MAX_X , MIN_Y , MAX_Y , MIN_Z , MAX_Z |
[in] | code | Code to assign. |
Set vector data.
[in] | b | Vector containing the defining polygon vertices |
[in,out] | p | Vector containing the resulting curve points |
Set vector data for Nurbs.
[in] | b | Vector containing the defining polygon vertices |
[in] | h | Vector containing the homogeneous weighting factors |
[in,out] | p | Vector containing the resulting curve points |
Set Dimensions of the domain: 1-D case.
[in] | xmin | Minimal value of x -coordinate |
[in] | xmax | Maximal value of x -coordinate |
Set Dimensions of the domain: 2-D case.
[in] | xmin | Minimal value of x -coordinate |
[in] | xmax | Maximal value of x -coordinate |
[in] | ymin | Minimal value of y -coordinate |
[in] | ymax | Maximal value of y -coordinate |
Set Dimensions of the domain: 3-D case.
[in] | xmin | Minimal value of x -coordinate |
[in] | xmax | Maximal value of x -coordinate |
[in] | ymin | Minimal value of y -coordinate |
[in] | ymax | Maximal value of y -coordinate |
[in] | zmin | Minimal value of z -coordinate |
[in] | zmax | Maximal value of z -coordinate |
Set Dimensions of the domain: 3-D case.
[in] | xmin | Minimal coordinate value |
[in] | xmax | Maximal coordinate value |
void setFile | ( | string | file | ) |
Set file name.
This function is to be used when the default constructor is invoked.
void setGraph | ( | const vector< RC > & | I, |
int | opt = 1 |
||
) |
Set graph of matrix by giving a vector of its nonzero entries.
[in] | I | Vector containing pairs of row and column indices |
[in] | opt | Flag indicating if vector I is cleaned and ordered (opt=1 : default) or not (opt=0 ). In the latter case, this vector can have the same contents more than once and are not necessarily ordered |
Define Lagrange interpolation.
This member function defines Lagrange interpolation data
[in] | n | Degree of interpolation polynomial (must be >= 1) |
[in] | x | Abcissa of defining points |
[in] | y | Values of points to interpolate |
[out] | f | Function that will contain Lagrange interpolation polynomial once the function run() is invoked |
void setLeastSquare | ( | const vector< Fct *> & | f, |
const Vect< real_t > & | x, | ||
const Vect< real_t > & | y, | ||
Vect< real_t > & | a | ||
) |
Define least square approximation using given basis functions.
The least square approximation defines the function: a[0]*f[0] + a[1]*f[1] + ... + a[N]*f[N]
[in] | f | Vector of references to functions (class Fct) defining basis of least square approximation |
[in] | x | Vector defining x-coordinates of points |
[in] | y | Vector defining y-coordinates of points |
[out] | a | Vector containing solution: Coefficients of basis functions |
Define least square approximation with given least square matrix.
Matrix entries is defined by B(k,i)
as the k-th basis function evaluated at x(i)
[in] | B | Rectangle matrix of Least square approximation |
[in] | y | Vector defining y-coordinates of points |
[out] | a | Vector containing solution: Coefficients of basis functions |
void setLeastSquare | ( | const Vect< real_t > & | x, |
const Vect< real_t > & | y, | ||
size_t | N, | ||
Vect< real_t > & | a | ||
) |
Define least square approximation using polynomial regression.
Define N-degree polynomial to approximate in the sense of least squares of a given set of points in the plane. The resulting line has the equation: y = a[0] + a[1]*x + ... + a[N]*x^N
[in] | x | Vector defining x-coordinates of points |
[in] | y | Vector defining y-coordinates of points |
[in] | N | Degree of approximation polynomial |
[out] | a | Vector of coefficients of polynomial as defined here above |
void setLeastSquare | ( | const Vect< real_t > & | x, |
const Vect< real_t > & | y, | ||
real_t & | a0, | ||
real_t & | a1 | ||
) |
Constructor foDefine least square approximation using linear regression.
Define 1-degree polynomial to approximate in the sense of least squares of a given set of points in the plane. The resulting line has the equation: y = a0 + a1*x
[in] | x | Vector defining x-coordinates of points |
[in] | y | Vector defining y-coordinates of points |
[out] | a0 | Coefficient of constant term |
[out] | a1 | Coefficient of first degree term |
void setMesh | ( | Mesh & | mesh, |
size_t | dof = 0 |
||
) |
Determine mesh graph and initialize matrix.
This member function is called by constructor with the same arguments
[in] | mesh | Mesh instance for which matrix graph is determined. |
[in] | dof | Option parameter, with default value 0 .dof=1 means that only one degree of freedom for each node (or element or side) is taken to determine matrix structure. The value dof=0 means that matrix structure is determined using all DOFs. |
void setMeshFile | ( | const string & | file | ) |
Set mesh file.
[in] | file | Mesh file |
void setN | ( | size_t | nx, |
size_t | ny = 0 , |
||
size_t | nz = 0 |
||
) |
Set number of grid intervals in the x
, y
and z
-directions.
Number of points is the number of intervals plus one in each direction
[in] | nx | Number of grid intervals in the x -direction |
[in] | ny | Number of grid intervals in the y -direction (Default=0 : 1-D grid) |
[in] | nz | Number of grid intervals in the z -direction (Default=0 : 1-D or 2-D grid) |
xmin
and xmax
) must have been defined before. void setNurbs | ( | size_t | n, |
size_t | c, | ||
size_t | np, | ||
const Vect< real_t > & | b, | ||
const Vect< real_t > & | h, | ||
Vect< real_t > & | p | ||
) |
Define for Nurbs modelling.
[in] | n | Number of defining polygon vertices |
[in] | c | Order of the B-spline basis function |
[in] | np | Number of points to be calculated on the curve |
[in] | b | Vector containing the defining polygon vertices |
[in] | h | Vector containing the homogeneous weighting factors |
[out] | p | Vector containing the resulting curve points |
void setNurbsPar | ( | size_t | n, |
size_t | c, | ||
size_t | np | ||
) |
Set parameters for Nurbs modelling.
[in] | n | Number of defining polygon vertices |
[in] | c | Order of the B-spline basis function |
[in] | np | Number of points to be calculated on the curve |
void setNurbsSurface | ( | size_t | m, |
size_t | n, | ||
size_t | c, | ||
size_t | d, | ||
size_t | npu, | ||
size_t | npw, | ||
const Vect< real_t > & | b, | ||
Vect< real_t > & | p | ||
) |
Define Nurbs surface modelling.
[in] | m | Number of polygon vertices in w direction |
[in] | n | Number of polygon vertices in u direction |
[in] | c | Order of the B-spline basis function in w direction |
[in] | d | Order of the B-spline basis function in u direction |
[in] | npu | Number of parametric lines in the u direction |
[in] | npw | Number of parametric lines in the w direction |
[in] | b | Vector containing the defining polygon vertices |
[out] | p | Vector containing the resulting curve points |
void setSize | ( | size_t | size | ) |
Set size (number of rows) of matrix.
[in] | size | Number of rows and columns. |
void setSize | ( | size_t | size | ) |
Set size of matrix (case where it's a square matrix).
[in] | size | Number of rows and columns. |
void setSize | ( | size_t | nr, |
size_t | nc | ||
) |
Set size (number of rows) of matrix.
[in] | nr | Number of rows |
[in] | nc | Number of columns |
void setSolver | ( | Iteration | solver = CG_SOLVER , |
Preconditioner | prec = DIAG_PREC , |
||
int | max_it = 1000 , |
||
real_t | toler = 1.e-8 |
||
) |
Choose solver and preconditioner for an iterative procedure.
[in] | solver | Option to choose iterative solver in an enumerated variable
CG_SOLVER |
[in] | prec | Option to choose preconditioner in an enumerated variable
DIAG_PREC |
[in] | max_it | Maximum number of allowed iterations. Default value is 1000 . |
[in] | toler | Tolerance for convergence. Default value is 1.e-8 |
Set node x-coordinates of grid.
This function is to be used to define a nonuniform grid
[in] | x | Vector of x-coordinates of nodes |
Set max. coordinates of the domain.
[in] | x | Maximal values of coordinates |
Set min. coordinates of the domain.
[in] | x | Minimal values of coordinates |
Set node x- and y-coordinates of grid.
This function is to be used to define a nonuniform grid
[in] | x | Vector of x-coordinates of nodes |
[in] | y | Vector of y-coordinates of nodes |
Set node x-, y- and z-coordinates of grid.
This function is to be used to define a nonuniform grid
[in] | x | Vector of x-coordinates of nodes |
[in] | y | Vector of y-coordinates of nodes |
[in] | z | Vector of z-coordinates of nodes |
|
virtual |
Solve a linear system with current matrix (forward and back substitution).
[in,out] | b | Vect instance that contains right-hand side on input and solution on output. |
[in] | fact | Ununsed argument |
0
if solution was normally performed, n
if the n
-th pivot is null. Warning: Matrix is modified after this function.
Implements Matrix< T_ >.
Solve a linear system with current matrix (forward and back substitution).
[in] | b | Vect instance that contains right-hand side. |
[out] | x | Vect instance that contains solution. |
[in] | fact | Unused argument |
0
if solution was normally performed, n
if the n
-th pivot is null. Warning: Matrix is modified after this function.
Implements Matrix< T_ >.
Solve the linear system of equations.
The default parameters are:
CG_SOLVER
for solver DIAG_PREC
for preconditioner 1000
1.e-8
To change these values, call function setSolver before this function
[in] | b | Vector that contains right-hand side |
[out] | x | Vector that contains the obtained solution |
[in] | fact | Unused argument |
Implements Matrix< T_ >.
Multiply transpose of matrix by vector x
and save in y
.
[in] | x | Vector to multiply by matrix |
[out] | y | Vector that contains on output the result. |
Implements Matrix< T_ >.