0
我有一個應用程序,我需要使用迭代技術來解決變量問題。基本上我需要猜測一個可以讓K = 1.2的值;下面是參數和方程式,使我有:使用初始猜測值迭代求解的Matlab代碼
b = .02;
M = 3;
Sg = 4.5;
這裏的公式:
X = pi*alpha/2;
F = sqrt((1/X)*tan(X))*(.923 + .199*(1 - sin(X))^4)/cos(X);
K = F*Sg*sqrt(pi*a)
當我猜的0.010125的值,我得到1.2的正確值K. 哪有我使用具有初始猜測值的迭代技術獲得.010125的正確值?
這裏是整個代碼:
%ABS Plastic Under Moment Load
clc
clear all
% We need to guess a value to get K = 1.2
a = .010125; % guess this value
b = .02;
M = 3;
Sg = 4.5;
alpha = a/b;
X = pi*alpha/2;
F = sqrt((1/X)*tan(X))*(.923 + .199*(1 - sin(X))^4)/cos(X);
K = F*Sg*sqrt(pi*a)
然後您需要了解迭代技術!最基本的是二分法,存在更復雜的方法,如牛頓法。嘗試在'fsolve'熟悉 –
謝謝!看起來像fsolve是一個不錯的選擇! – PatStarks