GAMS Overview
- A: Arithmetic, error analysis
- A6: Change of representation
- A6c: Decomposition, construction
- A7: Sequences (e.g., convergence acceleration)
- C: Elementary and special functions (
search also class
L5
)
- C1: Integer-valued functions (e.g., factorial, binomial coefficient, permutations, combinations, floor, ceiling)
- C2: Powers, roots, reciprocals
- C3: Polynomials
- C3a: Orthogonal
- C3a2: Chebyshev, Legendre
- C4: Elementary transcendental functions
- C4a: Trigonometric, inverse trigonometric
- C4b: Exponential, logarithmic
- C4c: Hyperbolic, inverse hyperbolic
- C4d: Integrals of elementary transcendental functions
- C5: Exponential and logarithmic integrals
- C6: Cosine and sine integrals
- C7: Gamma
- C7a: Gamma, log gamma, reciprocal gamma
- C8: Error functions
- C8a: Error functions, their inverses, integrals, including the normal distribution function
- C10: Bessel functions
- C10a:
J
,
Y
,
H
1
,
H
2
- C10a1: Real argument, integer order
- C10a2: Complex argument, integer order
- C10a3: Real argument, real order
- C10a4: Complex argument, real order
- C10a5: Complex argument, complex order
- C10b:
I
,
K
- C10b1: Real argument, integer order
- C10b2: Complex argument, integer order
- C10b3: Real argument, real order
- C10b4: Complex argument, real order
- C10b5: Complex argument, complex order
- C10d: Airy and Scorer functions
- C10e: Struve, Anger, and Weber functions
- C10f: Integrals of Bessel functions
- C11: Confluent hypergeometric functions
- C12: Coulomb wave functions
- C13: Jacobian elliptic functions, theta functions
- C15: Weierstrass elliptic functions
- C16: Parabolic cylinder functions
- C18: Spheroidal wave functions
- C19: Other special functions
- D: Linear Algebra
- D1: Elementary vector and matrix operations
- D1a: Elementary vector operations
- D1a2: Minimum and maximum components
- D1a3: Norm
- D1a3a:
L
1
(sum of magnitudes)
- D1a3b:
L
2
(Euclidean norm)
- D1a3c:
L
∞
(maximum magnitude)
- D1a4: Dot product (inner product)
- D1a5: Copy or exchange (swap)
- D1a6: Multiplication by scalar
- D1a7: Triad (
α
x
+
y
for vectors
x
,
y
and scalar
α
)
- D1a8: Elementary rotation (Givens transformation)
- D1a9: Elementary reflection (Householder transformation)
- D1a11: Other vector operations
- D1b: Elementary matrix operations
- D1b1: Initialize (e.g., to zero or identity)
- D1b4: Multiplication by vector
- D1b5: Addition, subtraction
- D1b9: Storage mode conversion
- D1b10: Elementary rotation (Givens transformation)
- D1b11: Elementary reflection (Householder transformation)
- D2: Solution of systems of linear equations (including inversion,
L
U
and related decompositions)
- D2a: Real nonsymmetric matrices
- D2b: Real symmetric matrices
- D2b2: Positive-definite banded
- D2c: Complex non-Hermitian matrices
- D2d: Complex Hermitian matrices
- D2d2: Positive-definite banded
- D2e: Associated operations (e.g., matrix reorderings)
- D3: Determinants
- D3a: Real nonsymmetric matrices
- D3b: Real symmetric matrices
- D3b2: Positive-definite banded
- D3c: Complex non-Hermitian matrices
- D3d: Complex Hermitian matrices
- D3d2: Positive-definite banded
- D4: Eigenvalues, eigenvectors
- D4a: Ordinary eigenvalue problems (
A
x
=
λ
x
)
- D4a4: Complex non-Hermitian
- D4b: Generalized eigenvalue problems (e.g.,
A
x
=
λ
B
x
)
- D4c: Associated operations
- D4c1: Transform problem
- D4c1b: Reduce to compact form
- D4c1c: Standardize problem
- D4c2: Compute eigenvalues of matrix in compact form
- D4c3: Form eigenvectors from eigenvalues
- D4c4: Back transform eigenvectors
- D4c5: Determine Jordan normal form
- D5:
Q
R
decomposition, Gram–Schmidt orthogonalization
- D6: Singular value decomposition
- D7: Update matrix decompositions
- D8: Other matrix equations (e.g.,
A
X
+
X
B
=
C
)
- D9: Singular, overdetermined or underdetermined systems of linear equations, generalized inverses
- D9a: Unconstrained
- D9a1: Least squares (
L
2
) solution
- D9a2: Chebyshev (
L
∞
) solution
- D9a3: Least absolute value (
L
1
) solution
- D9b: Constrained
- D9b1: Least squares (
L
2
) solution
- D9b2: Chebyshev (
L
infinity
) solution
- D9b3: Least absolute value (
L
1
)
- D9c: Generalized inverses
- E: Interpolation
- E1: Univariate data (curve fitting)
- E1a: Polynomial splines (piecewise polynomials)
- E1c: Other functions (e.g., rational, trigonometric)
- E2: Multivariate data (surface fitting)
- E3: Service routines for interpolation
- E3a: Evaluation of fitted functions, including quadrature
- E3a1: Function evaluation
- E3a2: Derivative evaluation
- E3b: Grid or knot generation
- E3c: Manipulation of basis functions (e.g., evaluation, change of basis)
- F: Solution of nonlinear equations
- F1: Single equation
- F1a: Polynomial
- F1a2: Complex coefficients
- F3: Service routines (e.g., check user-supplied derivatives)
- G: Optimization (
search also classes
K,
L8
)
- G1: Unconstrained
- G1a: Univariate
- G1a1: Smooth function
- G1a1a: User provides no derivatives
- G1a1b: User provides first derivatives
- G1a1c: User provides first and second derivatives
- G1a2: General function (no smoothness assumed)
- G1b: Multivariate
- G1b1: Smooth function
- G1b1a: User provides no derivatives
- G1b1b: User provides first derivatives
- G1b1c: User provides first and second derivatives
- G1b2: General function (no smoothness assumed)
- G2: Constrained
- G2a: Linear programming
- G2a1: Dense matrix of constraints
- G2a2: Sparse matrix of constraints
- G2b: Transportation and assignments problem
- G2c: Integer programming
- G2c2: Covering and packing problems
- G2c5: Routing, scheduling, location problems
- G2c6: Pure integer programming
- G2c7: Mixed integer programming
- G2d: Network (
for network reliability search class M)
- G2d2: Minimum spanning tree
- G2d3: Maximum flow
- G2d3a: Generalized networks
- G2d3b: Networks with side constraints
- G2d4: Test problem generation
- G2e: Quadratic programming
- G2e1: Positive-definite Hessian (i.e., convex problem)
- G2f: Geometric programming
- G2h: General nonlinear programming
- G2h1: Simple bounds
- G2h1a: Smooth function
- G2h1a1: User provides no derivatives
- G2h1a2: User provides first derivatives
- G2h1a3: User provides first and second derivatives
- G2h1b: General function (no smoothness assumed)
- G2h2: Linear equality or inequality constraints
- G2h2a: Smooth function
- G2h2a1: User provides no derivatives
- G2h2a2: User provides first derivatives
- G2h2a3: User provides first and second derivatives
- G2h2b: General function (no smoothness assumed)
- G2h3: Nonlinear constraints
- G2h3a: Equality constraints only
- G2h3a1: Smooth function and constraints
- G2h3a1a: User provides no derivatives
- G2h3a1b: User provides first derivatives of function and constraints
- G2h3a1c: User provides first and second derivatives of function and constraints
- G2h3a2: General function and constraints (no smoothness assumed)
- G2h3b: Equality and inequality constraints
- G2h3b1: Smooth function and constraints
- G2h3b1a: User provides no derivatives
- G2h3b1b: User provides first derivatives of function and constraints
- G2h3b1c: User provides first and second derivatives of function and constraints
- G2h3b2: General function and constraints (no smoothness assumed)
- G2i: Global solution to nonconvex problems
- G4: Service routines
- G4a: Problem input (e.g., matrix generation)
- G4c: Check user-supplied derivatives
- G4e: Check for redundancy
- H: Differentiation, integration
- H1: Numerical differentiation
- H2: Quadrature (numerical evaluation of definite integrals)
- H2a: One-dimensional integrals
- H2a1: Finite interval (general integrand)
- H2a1a: Integrand available via user-defined procedure
- H2a1a1: Automatic (user need only specify required accuracy)
- H2a1b: Integrand available only on grid
- H2a1b1: Automatic (user need only specify required accuracy)
- H2a2: Finite interval (specific or special type integrand including weight functions, oscillating and singular integrands, principal
value integrals, splines, etc.)
- H2a2a: Integrand available via user-defined procedure
- H2a2a1: Automatic (user need only specify required accuracy)
- H2a2b: Integrand available only on grid
- H2a2b1: Automatic (user need only specify required accuracy)
- H2a3: Semi-infinite interval (including
e
-
x
weight function)
- H2a3a: Integrand available via user-defined procedure
- H2a3a1: Automatic (user need only specify required accuracy)
- H2a4: Infinite interval (including
e
-
x
2
weight function)
- H2a4a: Integrand available via user-defined procedure
- H2a4a1: Automatic (user need only specify required accuracy)
- H2b: Multidimensional integrals
- H2b1: One or more hyper-rectangular regions (includes iterated integrals)
- H2b1a: Integrand available via user-defined procedure
- H2b1a1: Automatic (user need only specify required accuracy)
- H2b1b: Integrand available only on grid
- H2b1b1: Automatic (user need only specify required accuracy)
- H2b2:
n
-dimensional quadrature on a nonrectangular region
- H2b2a: Integrand available via user-defined procedure
- H2b2a1: Automatic (user need only specify required accuracy)
- H2b2b: Integrand available only on grid
- H2b2b1: Automatic (user need only specify required accuracy)
- H2c: Service routines (e.g., compute weights and nodes for quadrature formulas)
- I: Differential and integral equations
- I1: Ordinary differential equations (ODE's)
- I1a: Initial value problems
- I1a1: General, nonstiff or mildly stiff
- I1a1a: One-step methods (e.g., Runge–Kutta)
- I1a1b: Multistep methods (e.g., Adams predictor-corrector)
- I1a1c: Extrapolation methods (e.g., Bulirsch-Stoer)
- I1a2: Stiff and mixed algebraic- differential equations
- I1b: Multipoint boundary value problems
- I1b3: Eigenvalue (e.g., Sturm-Liouville)
- I1c: Service routines (e.g., interpolation of solutions, error handling, test programs)
- I2: Partial differential equations
- I2a: Initial boundary value problems
- I2a1: Parabolic
- I2a1a: One spatial dimension
- I2a1b: Two or more spatial dimensions
- I2b: Elliptic boundary value problems
- I2b1: Linear
- I2b1a: Second order
- I2b1a1: Poisson (Laplace) or Helmholtz equation
- I2b1a1a: Rectangular domain (or topologically rectangular in the coordinate system)
- I2b1a2: Other separable problems
- I2b1c: Higher order equations (e.g., biharmonic)
- I2b4: Service routines
- I2b4a: Domain triangulation (
search also class
P
)
- I2b4b: Solution of discretized elliptic equations
- J: Integral transforms
- J1: Trigonometric transforms including fast Fourier transforms
- J1a: One-dimensional
- J1a3: Sine and cosine transforms
- K: Approximation (
search also class
L8
)
- K1: Least squares (
L
2
) approximation
- K1a: Linear least squares (
search also classes
D5,
D6,
D9
)
- K1a1: Unconstrained
- K1a1a: Univariate data (curve fitting)
- K1a1a1: Polynomial splines (piecewise polynomials)
- K1a1a3: Other functions (e.g., trigonometric, user-specified)
- K1a1b: Multivariate data (surface fitting)
- K1a2: Constrained
- K1a2a: Linear constraints
- K1a2b: Nonlinear constraints
- K1b: Nonlinear least squares
- K1b1: Unconstrained
- K1b1a: Smooth functions
- K1b1a1: User provides no derivatives
- K1b1a2: User provides first derivatives
- K1b1a3: User provides first and second derivatives
- K1b2: Constrained
- K1b2a: Linear constraints
- K1b2b: Nonlinear constraints
- K2: Minimax (
L
∞
) approximation
- K3: Least absolute value (
L
1
) approximation
- K4: Other analytic approximations (e.g., Taylor polynomial, Padé)
- K6: Service routines for approximation
- K6a: Evaluation of fitted functions, including quadrature
- K6a1: Function evaluation
- K6a2: Derivative evaluation
- K6b: Grid or knot generation
- K6c: Manipulation of basis functions (e.g., evaluation, change of basis)
- L: Statistics, probability
- L1: Data summarization
- L1a: One-dimensional data
- L1a1: Raw data
- L1a1d: Frequency, cumulative frequency
- L1b: Two-dimensional data (
search also class
L1c
)
- L1c: Multi-dimensional data
- L1c1: Raw data
- L1c1b: Covariance, correlation
- L1c1d: Frequency, cumulative frequency
- L1c2: Raw data containing missing values (
search also class
L1c1
)
- L2: Data manipulation
- L2a: Transform (
search also classes
L10a1,
N6, and N8
)
- L2d: Merge (search also class
N7)
- L2e: Construct new variables (e.g., indicator variables)
- L3: Elementary statistical graphics (
search also class
Q
)
- L3a: One-dimensional data
- L3a2: Frequency, cumulative frequency, percentile plots
- L3a3: EDA (e.g., box-plots)
- L3a6:
X
i
vs. i (including symbol plots)
- L3a7: Lag plots (e.g., plots of
X
i
vs.
X
i
-
1
)
- L3b: Two-dimensional data (
search also class
L3e
)
- L3b1: Histograms (superimposed and bivariate)
- L3b2: Frequency, cumulative frequency
- L3b3: Scatter diagrams
- L3b3c: Lag plots (i.e., plots of
X
i
vs.
Y
i
-
j
)
- L3c: Three-dimensional data (search also class
L3e)
- L3e: Multi-dimensional data
- L3e2: Frequency, cumulative frequency, percentile plots
- L3e3: Scatter diagrams
- L3e3a: Superimposed Y vs. X
- L3e3c: Superimposed
X
i
vs.
i
- L3e3d: Matrices of bivariate scatter diagrams
- L4: Elementary data analysis
- L4a: One-dimensional data
- L4a1: Raw data
- L4a1a: Parametric analysis
- L4a1a1: Plots of empirical and theoretical density and distribution functions
- L4a1a3: Probability plot correlation coefficient plots
- L4a1a4: Parameter estimates and tests
- L4a1a5: Transformation selection (e.g., for normality)
- L4a1a6: Tail and outlier analysis
- L4a1b: Nonparametric analysis
- L4a1b1: Estimates and tests regarding location (e.g., median), dispersion, and shape
- L4a1b2: Density function estimation
- L4a1c: Goodness-of-fit tests
- L4a1d: Analysis of a sequence of numbers (
search also class
L10a
)
- L4a3: Grouped and/or censored data
- L4a4: Data sampled from a finite population
- L4b: Two-dimensional data (
search also class
L4c
)
- L4b1: Pairwise independent data
- L4b1a: Parametric analysis
- L4b1a1: Plots of empirical and theoretical density and distribution functions
- L4b1a4: Parameter estimates and hypothesis tests
- L4b1b: Nonparametric analysis (e.g., rank tests)
- L4b1c: Goodness-of-fit tests
- L4b3: Pairwise dependent data
- L4b4: Pairwise dependent grouped data
- L4b5: Data sampled from a finite population
- L4c: Multi-dimensional data (
search also classes
L4b and
L7a1
)
- L4c1: Independent data
- L4c1a: Parametric analysis
- L4c1b: Nonparametric analysis
- L4e: Multiple multi-dimensional data sets
- L5: Function evaluation (
search also class
C
)
- L5a: Univariate
- L5a1: Cumulative distribution functions, probability density functions
- L5a1d: Double exponential
- L5a1e: Error function, exponential, extreme value
- L5a1g: Gamma, general, geometric
- L5a1h: Halfnormal, hypergeometric
- L5a1k: Kendall
F
statistic, Kolmogorov-Smirnov
- L5a1l: Lambda, logistic, lognormal
- L5a1n: Negative binomial, normal
- L5a2: Inverse distribution functions, sparsity functions
- L5a2d: Double exponential
- L5a2e: Error function, exponential, extreme value
- L5a2g: Gamma, general, geometric
- L5a2l: Lambda, logistic, lognormal
- L5a2n: Negative binomial, normal, normal order statistics
- L5b: Multivariate
- L5b1: Cumulative multivariate distribution functions, probability density functions
- L5b2: Inverse cumulative distribution functions
- L6: Random number generation
- L6a: Univariate
- L6a2: Beta, binomial, Boolean
- L6a5: Exponential, extreme value
- L6a7: Gamma, general (continuous, discrete), geometric
- L6a8: Halfnormal, hypergeometric
- L6a12: Lambda, logistic, lognormal
- L6a14: Negative binomial, normal, normal order statistics
- L6a16: Pareto, Pascal, permutations, Poisson
- L6a19: Samples, stable distribution
- L6a20:
t
distribution, time series, triangular
- L6a21: Uniform (continuous, discrete), uniform order statistics
- L6b: Multivariate
- L6b3: Contingency table, correlation matrix
- L6b5: Experimental designs
- L6b12: Linear
L
1
(least absolute value) approximation
- L6c: Service routines (e.g., seed)
- L7: Analysis of variance (including analysis of covariance)
- L7b: Two-way (
search also class
L7d
)
- L7c: Three-way (e.g., Latin squares) (search also class
L7d)
- L7d: Multi-way
- L7d1: Balanced complete data (e.g., factorial designs)
- L7d2: Balanced incomplete data
- L7d3: General linear models (unbalanced data)
- L7f: Generate experimental designs
- L8: Regression (
search also classes
D5,
D6,
D9,
G,
K
)
- L8a: Simple linear (i.e.,
y
=
b
0
+
b
1
x
) (
search also class
L8h
)
- L8a1: Ordinary least squares
- L8a1a: Parameter estimation
- L8a1d: Inference (e.g., calibration) (search also class
L8a1a)
- L8a2:
L
p
for
p
different from 2 (e.g., least absolute value, minimax)
- L8a4: Errors in variables
- L8b: Polynomial (e.g.,
y
=
b
0
+
b
1
x
+
b
2
x
2
) (
search also class
L8c
)
- L8b1: Ordinary least squares
- L8b1a: Degree determination
- L8b1b: Parameter estimation
- L8b1b1: Not using orthogonal polynomials
- L8b1b2: Using orthogonal polynomials
- L8b1c: Analysis (search also class
L8b1b)
- L8b1d: Inference (search also class
L8b1b)
- L8c: Multiple linear (i.e.,
y
=
b
0
+
b
1
x
1
+
…
+
b
p
x
p
)
- L8c1: Ordinary least squares
- L8c1a: Variable selection
- L8c1a2: Using correlation or covariance data
- L8c1b: Parameter estimation (
search also class
L8c1a
)
- L8c1b2: Using correlation data
- L8c1c: Analysis (
search also classes
L8c1a and
L8c1b
)
- L8c1d: Inference (
search also classes
L8c1a and
L8c1b
)
- L8c2: Several regressions
- L8c3:
L
p
for
p
different from 2
- L8c5: Measurement error models
- L8c6: Models based on ranks
- L8d: Polynomial in several variables
- L8e: Nonlinear (i.e.,
y
=
F
X
b
) (
search also class
L8h
)
- L8e1: Ordinary least squares
- L8e1a: Variable selection
- L8e1b: Parameter estimation (
search also class
L8e1a
)
- L8e1b1: Unweighted data, user provides no derivatives
- L8e1b2: Unweighted data, user provides derivatives
- L8e1b3: Weighted data, user provides no derivatives
- L8e1b4: Weighted data, user provides derivatives
- L8e5: Measurement error models
- L8f: Simultaneous (i.e.,
Y
=
X
b
)
- L8g: Spline (i.e., piecewise polynomial)
- L8h: EDA (e.g., smoothing)
- L8i: Service routines (e.g., matrix manipulation for variable selection)
- L9: Categorical data analysis
- L9b: Two-way tables (
search also class
L9d
)
- L9d: EDA (e.g., median polish)
- L10: Time series analysis (
search also class
J
)
- L10a: Univariate (
search also classes
L3a6 and
L3a7
)
- L10a1: Transformations
- L10a1a: Elementary (search also class
L2a)
- L10a1b: Stationarity (search also class
L8a1)
- L10a1c: Filters (
search also class
K5
)
- L10a1c2: Symmetric linear (e.g., moving averages)
- L10a2: Time domain analysis
- L10a2a: Summary statistics
- L10a2a1: Autocorrelations and autocovariances
- L10a2b: Stationarity analysis (
search also class
L10a2a
)
- L10a2d: ARMA and ARIMA models (including Box–Jenkins methods)
- L10a2e: State-space analysis (e.g., Kalman filtering)
- L10a2f: Analysis of a locally stationary series
- L10a3: Frequency domain analysis (
search also class
J1
)
- L10a3a: Spectral analysis
- L10a3a3: Spectrum estimation using the periodogram
- L10a3a4: Spectrum estimation using the Fourier transform of the autocorrelation function
- L10a3a5: Spectrum estimation using autoregressive models
- L10b: Two time series (
search also classes
L3b3c,
L10c, and
L10d
)
- L10b2: Time domain analysis
- L10b2a: Summary statistics (e.g., cross-correlations)
- L10b2b: Transfer function models
- L10b3: Frequency domain analysis (
search also class
J1
)
- L10b3a: Cross-spectral analysis
- L10b3a2: Cross-periodogram analysis
- L10b3a3: Cross-spectrum estimation using the cross-periodogram
- L10b3a4: Cross-spectrum estimation using the Fourier transform of the cross-correlation or cross-covariance function
- L10c: Multivariate time series (
search also classes
J1,
L3e3 and
L10b
)
- L10d: Two multi-channel time series
- L11: Correlation analysis (search also classes
L4 and
L13c)
- L12: Discriminant analysis
- L13: Covariance structure models
- L13b: Principal components analysis
- L13c: Canonical correlation
- L14: Cluster analysis
- L14d: Service routines (e.g., compute distance matrix)
- L15: Life testing, survival analysis
- L16: Multidimensional scaling
- L17: Statistical data sets
- M: Simulation, stochastic modeling (search also classes
L6 and
L10)
- M1: Simulation
- M1b: Continuous (Markov models)
- M4: Project optimization (e.g., PERT)
- N: Data handling (
search also class
L2
)
- N3: Character manipulation
- N4: Storage management (e.g., stacks, heaps, trees)
- N6: Sorting
- N6a: Internal
- N6a1: Passive (i.e., construct pointer array, rank)
- P: Computational geometry (
search also classes
G and
Q
)
- Q: Graphics (
search also class
L3
)
- R: Service routines
- R1: Machine-dependent constants
- R2: Error checking (e.g., check monotonicity)
- R3: Error handling
- R3a: Set criteria for fatal errors
- R3b: Set unit number for error messages
- R4: Documentation retrieval
- S: Software development tools
- S1: Program transformation tools
- S2: Static program analysis tools
- S3: Dynamic program analysis tools