Packages

c

scalation.analytics

QuadraticFit

class QuadraticFit extends AnyRef

The QuadraticFit class uses multiple regression to fit a quadratic surface to the function 'f'. This is useful when computing 'f' is costly, for example in simulation optimization. The fit is over a multi-dimensional grid and can be used for interpolation and limited extrapolation.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. QuadraticFit
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new QuadraticFit(f: FunctionV2S, n: Int = 3, k: Int = 5)

    f

    the vector-to-scalar function to fit.

    n

    the dimensionality of the domain of f

    k

    the number (odd number) of values for each dimension, e.g., 5, 7, 9

Value Members

  1. def fit(xx: MatriD, yy: VectoD): Unit

    Given a design matrix and response vector, use multiple regression to fit the surface, i.e., determine the coefficients of the regression equation.

    Given a design matrix and response vector, use multiple regression to fit the surface, i.e., determine the coefficients of the regression equation.

    xx

    the data/design matrix

    yy

    the response vector

  2. def formGrid(xc: VectoD, xs: VectoD): Unit

    Given a center point x, form a square grid around it.

    Given a center point x, form a square grid around it. This can be used to create a design matrix for use in multiple regression.

  3. def printGrid(): Unit

    Print all the vectors/points in the grid.

  4. def qForms(x: VectoD): VectoD

    Given a vector 'x', compute the values for all of its quadratic, linear and constant forms/terms, returning them as a vector.

    Given a vector 'x', compute the values for all of its quadratic, linear and constant forms/terms, returning them as a vector. for 1D: 'VectorD (1., x(0), x(0)~2.)' for 2D: 'VectorD (1., x(0), x(0)~2., x(1), x(1)*x(0), x(1)~^2.)'

    x

    the source vector for creating forms/terms

  5. def qFormsEval(x: VectoD): Double

    Given a point x, use the quadratic regression equation to estimate a value for the function at x.

    Given a point x, use the quadratic regression equation to estimate a value for the function at x. for 1D: b(0) + b(1)*x(0) + b(2)*x(0)~2. for 2D: b(0) + b(1)*x(0) + b(2)*x(0)~2. + b(3)*x(1) + b(4)*x(1)*x(0) + b(5)*x(1)~^2.

    x

    the point whose functional value is to be predicted

  6. def reduce(): Unit

    Reduce from the full model to one with fewer variable.

    Reduce from the full model to one with fewer variable. FIX: adjust 'qFormEval' to skip left out variable

  7. def response(): (MatriD, VectoD)

    Given a grid of design points, create a design matrix 'xx' and response vector 'yy' returning them as a tuple.