0

내 운동을하는 동안 wxmaxima 11.08.0 (우분투 12.04, Maxima 버전 : 5.24.0)
나는 example from P.Lutus을 따라 갔고 그의 두 번째 예제는 나에게 효과가 없었습니다. .맥시멈은 diff가있는 diff eq에 대한 해결책을 찾지 못했습니다.

eq: y(t) = -r*c*'diff(y(t),t)+m*sin(%omega*t); 
sol:desolve(eq, y(t)); 
Is %omega zero or nonzero? nonzero 

그러면 Maxima는 다시 시작할 때까지 더 이상 반응하지 않습니다.
결과를 얻으려면 먼저 활성화 또는 정의해야하는 최대 값이 변경 되었습니까?

예상 출력은 다음과 같아야합니다
Intermediate result

내가 손으로 방정식을 정의 할 경우에 내 질문의 두 번째 부분이있다 : 연속 공정에 대한

sol: y(t) = (m * sin(%omega*t))   /(%omega^2*c^2*r^2 + 1) - 
      (%omega*c*m*r*cos(%omega*t)) /(%omega^2*c^2*r^2 + 1) + 
      (%omega*c*m*r*%e^-((1*t)/(c*r)))/(%omega^2*c^2*r^2 + 1); 

초기 조건 :

init_val:-(c*m*r*(%e^-(t/r*c))*%omega)/(c^2*r^2*%omega^2+1); 
atvalue(y(t),t=0, init_val); 
try2 : desolve(sol,y(t)); 
"Is "%omega" zero or nonzero?" nonzero; 

last term still there

여기에도 마지막 용어가 그대로 있습니다. 이러한 문제는 삼각 함수의 사용을 기반으로합니까?

안부, 마커스


나는 wxMaxima 13.04.0 & 맥시마 5.29.1에 PPA를 통해 업데이트. 이제는 사라졌지 만 마지막 임기는 매우 복잡해 보입니다. maxima 5.29.1 desolve result

negativ last term 및 desolve 명령으로 init_val을 수행해도 % e^​​(..) * ...이 방정식에 그대로 남아 있습니다.

답변

1

Maxima 메일 링리스트에서이 질문에 더 많은 관심을 갖게 될 것입니다. 참조 : http://maxima.sourceforge.net/maximalist.html

을 Lutus 예 2의 최초 버전에 대한 I 얻을 :

Y (0) = 그러나 0, I는 표시되지 않는 경우, 예상되는 결과와 동일
y(t) = m*sin(%omega*t)/(%omega^2*c^2*r^2+1) 
-%omega*c*m*r*cos(%omega*t)/(%omega^2*c^2*r^2+1) 
+(y(0)*%omega^2*c^3*r^3+%omega*c^2*m*r^2+y(0)*c*r)*%e^-(t/(c*r)) 
    /(c*r*(%omega^2*c^2*r^2+1))$ 

그것이 가정됩니다.

atvalue(y(t),t=0,init_val) 후, 즉, Lutus과 같은 결과를 얻을 : 나는 리눅스, CLISP로 구축 맥시마 5.31.1, 함께 일하고

y(t) = m*sin(%omega*t)/(%omega^2*c^2*r^2+1) 
-%omega*c*m*r*cos(%omega*t)/(%omega^2*c^2*r^2+1)$ 

.

+0

나는 clima (우분투 12.04 repro)로 빌드 된 Maxima 5.31.2의 컴파일 된 버전을 시도했다. 결과는 5.29.1 버전과 동일하며 메일 링리스트에 메시지를 보냅니다. 문안 인사 – IInatas