Пример #1
0
func main() {
	// Struct type from the functions package
	rosenbrock := functions.ExtendedRosenbrock{}

	x := []float64{3, 4, 5} // Literal slice allocation
	fmt.Printf("Rosenbrock(%v) = %v", x, rosenbrock.Func(x))
}
Пример #2
0
func main() {
	rosenbrock := functions.ExtendedRosenbrock{}
	p := Uniform{
		Max: -2.0,
		Min: 2.0,
	}
	n := 100
	dim := 3
	var sum float64
	x := make([]float64, dim)
	for i := 0; i < n; i++ {
		for j := range x {
			x[j] = p.Rand()
		}
		sum += rosenbrock.Func(x)
	}
	fmt.Println("Expected value is ", sum/float64(n))
}