func TestBranin(t *testing.T) { fixture := &fixtureBranin algorithm, strategy := prepare(fixture) surrogate := algorithm.Compute(fixture.target, strategy) assert.Equal(surrogate.Nodes, fixture.surrogate.Nodes, t) assert.Equal(interpolation.Validate(surrogate.Indices, surrogate.Inputs, fixture.grid), true, t) values := algorithm.Evaluate(surrogate, fixture.points) assert.EqualWithin(values, fixture.values, 0.1, t) }
func TestKraichnanOrszag(t *testing.T) { fixture := &fixtureKraichnanOrszag algorithm, strategy := prepare(fixture) surrogate := algorithm.Compute(fixture.target, strategy) assert.Equal(surrogate.Nodes, fixture.surrogate.Nodes, t) assert.EqualWithin(surrogate.Integral, fixture.surrogate.Integral, 2e-14, t) assert.Equal(interpolation.Validate(surrogate.Indices, surrogate.Inputs, fixture.grid), true, t) values := algorithm.Evaluate(surrogate, fixture.points) assert.EqualWithin(values, fixture.values, 6e-14, t) }
func (self *Solution) Validate(surrogate *Surrogate) bool { return algorithm.Validate(surrogate.Indices, surrogate.Inputs, self.grid) }