RegModels.LineEval Method

Overload List

#SignatureDescription
1void LineEval(TVec B, TVec X, TVec YHat)Evaluates linear function (fully vectorized version).
2void LineEval(Double[] B, TVec X, TVec YHat)Evaluates b[0] + b[1]*X for given values in X vector, parameters in B array, and returns the results in XHat vector.
3Double LineEval(Double[] B, Double X)Evaluates linear function.

Overload 1: void LineEval(TVec B, TVec X, TVec YHat)

Evaluates linear function (fully vectorized version).

#NameTypeDescription
1BTVecsource TVec
2XTVecsource TVec
3YHatTVecsource TVec

Result: stored in self (calling object)

Overload 2: void LineEval(Double[] B, TVec X, TVec YHat)

Evaluates b[0] + b[1]*X for given values in X vector, parameters in B array, and returns the results in XHat vector.

#NameTypeDescription
1BDouble[]
2XTVecsource TVec
3YHatTVecsource TVec

Result: stored in self (calling object)

Remarks:

Size and Complex properties of XHat vector are adjusted automatically.

Note
Use this version if you want to evaluate linear function for multiple values at the same time. This is a lot faster than calling single value version for each x value.

Examples
using Dew.Math;
using Dew.Stats.Units;
namespace Dew.Examples
{
    private void Example()
    {
        Vector X = new Vector(100,false);
        Vector Y = new Vector(0);
        X.Ramp(-5.0, 0.1);
        RegModels.LineEval(new double[] {1.0, 3.0}, X, Y);
    }
}
See Also: RegModels.LineDeriv, RegModels.LineFit

Overload 3: Double LineEval(Double[] B, Double X)

Evaluates linear function.

#NameTypeDescription
1BDouble[]
2XDoublescalar

Returns: Double - b[0] + b[1]*X for given value X and parameters in B array.

Examples
using Dew.Stats.Units;
namespace Dew.Examples
{
    private void Example()
    {
        RegModels.LineEval(new double[] {1.0, 3.0}, 2.5);
    }
}