public override void update() { List <double> times = new List <double>(), blackVols = new List <double>(); for (int i = 0; i < xBegin_.Count; ++i) { times.Add(xBegin_[i]); blackVols.Add(yBegin_[i]); } abcdCalibrator_ = new AbcdCalibration(times, blackVols, abcdCoeffHolder_.a_.Value, abcdCoeffHolder_.b_.Value, abcdCoeffHolder_.c_.Value, abcdCoeffHolder_.d_.Value, abcdCoeffHolder_.aIsFixed_, abcdCoeffHolder_.bIsFixed_, abcdCoeffHolder_.cIsFixed_, abcdCoeffHolder_.dIsFixed_, vegaWeighted_, endCriteria_, optMethod_); abcdCalibrator_.compute(); abcdCoeffHolder_.a_ = abcdCalibrator_.a(); abcdCoeffHolder_.b_ = abcdCalibrator_.b(); abcdCoeffHolder_.c_ = abcdCalibrator_.c(); abcdCoeffHolder_.d_ = abcdCalibrator_.d(); abcdCoeffHolder_.k_ = abcdCalibrator_.k(times, blackVols); abcdCoeffHolder_.error_ = abcdCalibrator_.error(); abcdCoeffHolder_.maxError_ = abcdCalibrator_.maxError(); abcdCoeffHolder_.abcdEndCriteria_ = abcdCalibrator_.endCriteria(); }
public AbcdError(AbcdCalibration abcd) { abcd_ = abcd; }