How to find roots of an implicit exprerssion
2 次查看(过去 30 天)
显示 更早的评论
Can anyone please tell me how to find roots of the following expression in MATLAB (solve for k) :
f(k) = -U + X/t(i) + (h*k*sech (k*h)^2 + tanh (k*h))/(2*(k*tanh (k*h))^(1/2));
for
U = 1;
X = 100;
h = 10;
t = 210:300 ?
Thank you in advance
4 个评论
Torsten
2015-7-22
Try MATLAB's "solve".
If no explicit solution can be found, use MATLAB's "fzero" for the function
func(k)=f(i)-(-U + X/t(i) + (h*k*sech (k*h)^2 + tanh (k*h))/(2*(k*tanh (k*h))^(1/2)))
Best wishes
Torsten.
Walter Roberson
2015-7-23
编辑:Walter Roberson
2015-7-23
Could you confirm that you know the value of f(k) and you are solving for the k that makes the left hand side equal the right hand side? Or are you looking for the k that makes the right hand side zero?
If you are looking for the k that makes the right hand side zero, then my tests show me that the value will be slightly less than 1 for t(n) = 210, and will decrease as t(n) increases, declining to about .56 at t(n) = 300.
回答(0 个)
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!