Awesome
rootfinding
github.com/khezen/rootfinding
- Brent's Method
Example
package main
import(
"fmt"
"github.com/khezen/rootfinding"
)
func f(x float64) float64 {
return math.Pow(x, 4) - 2*math.Pow(x, 2) + 0.25
}
const(
intervalStart = -100
intervalEnd = 100
precision = 6
)
func main(){
root, err := rootfinding.Brent(f, intervalStart, intervalEnd, precision)
if err != nil {
panic(err)
}
fmt.Println(root)
}
0.366025403784438