0
회귀 적분과 같은 함수 F (t)를 생성하려고 시도하고 값 F ((n + 1)을 취하여 theta_n tn). 그러나, "유형 '입력 인수에 대해"정의되지 않은 함수'F '오류가 발생합니다. " 뭐가 문제 야?'char'유형의 입력 인수에 대해 정의되지 않은 함수 'F'
function [ theta ] = Untitled(theta_o,omega_o)
nt=5001; %since (50-0)/.01 = 5000
dt = .01; % =H
H=.01;
theta_n = ones(nt,1);
theta_n(1)=0; %theta_o
omega_n = ones(nt,1);
omega_n(1)=-0.4; %omega_o
epsilon=10^(-6);
eta = epsilon*10;
t_o=0;
for n=1:4999
tn=t_o+n*dt;
F := int((422.11/eta)*exp((5*(4*((eta*t-s-tn)^2)/eta^2)-1)^(-1))*omega, s,tn- (n/2),tn+(n/2))
theta_n(n+1) = theta_n(n) + h*F(tn);
end
end
': ='은 (는) 유효한 matlab 구문이 아닙니다. 당신이 의도 한 바를 몰라요. – Daniel
이 페이지에서 ['int'의 버전을 보셨습니까?] (http://www.mathworks.com/help/symbolic/mupad_ref/int.html)? 해당 페이지 상단의주의 사항을 읽으십시오. Symbol 도구 상자에서 ['sym/int'] (http://www.mathworks.com/help/symbolic/int.html)에 대한 문서를 찾고 있습니다.이 도구 상자는 실질적으로 동일하지만 Matlab에서 직접 작동합니다 . 그러나'sym/int'가 당신이 기대하는 것처럼'symfun'을 리턴 할 지 확신하지 못합니다. – horchler
각 단계에서 한정 분모의 값을 계산하는 루프를 작성하려고합니다. 함수 F는 매우 복잡합니다. 간단히 말하면, s = tn- (n/2)에서 s = tn + (n/2)까지 s와 관련하여 여러 용어를 통합합니다. 통합 후, F는 여전히 변수 t를가집니다. 따라서 f (s, t)는 "int (") 다음에 오는 용어의 큰 혼란입니다. for 루프의 마지막 줄에서 F가 f (s, t)의 적분을 계산 한 후에 t = tn에서 F (t) –