Any clue on why Tau setting for LevenbergMarquardt is by default set to 0.001?
https://forum.freecadweb.org/viewtopic. ... 20#p381364
Tau is initial value for damping factor. Low damping factor means "solve using gauss-newton steps". High damping factor means "solve using gradient descent". A value in between means "do something in between".
https://www.centerspace.net/doc//NMathS ... er_Tau.htmThe Levenberg Marquardt algorithm is an iterative algorithm that takes a step in the direction of decreasing function values on each iteration. The initial step size is determined by the parameter tau. Tau related to the size of the elements in the Jacobian matrix of the minimized function evaluated at the starting point, x0, of the iteration. The algorithm is not very sensitive to the choice of tau, but as a rule of thumb, one should use a small value, e.g. tau = 10^-6, is x0 is believed to be a good approximation to the final solution x. Otherwise, use tau = 10^-3 or even tau = 1. The default value is tau = 10^-3.
You can use Wolfram Alpha online.DeepSOIC wrote: ↑Sat Mar 28, 2020 4:13 pm@abdullah
I know you can use sage. Can you please figure out average value of fourth derivative of sqrt(sq(a*cos(u)) + sq(b*sin(u))) across the period? I'm trying to find out, how many slices should I take for length integration for arc ellipse to achieve a cretain precision, using Simpson's rule.
Thanks, but it's not very useful. I need some clue on what maximum or average of this thing gets to. I actually would prefer an approximation rather than an exact value, something like "4th derivative is about a*100 in magnitude". Any ideas?
Actually, that is quite useful. It took me a while, but I estimated that the value will not exceed 40*b in magnitude, probably somewhat less that that in fact, as I mostly assumed that sin^2 and cos^2 are +1, and I flipped quite a few minuses with pluses along the way.
Code: Select all
def integrate_ellipse(n):
import math
from math import sin, cos, sqrt
x1 = 0; x2 = math.tau/4
x_samples = [x1 + i/n*(x2-x1) for i in range(n+1)]
a = 0.5; b = 1
y_samples = [sqrt((a*cos(x))**2 + (b*sin(x))**2) for x in x_samples]
import scipy.integrate
return scipy.integrate.simps(y_samples, x_samples)