2011-08-05 11 views
5

Modelica에서 명시 적으로 시간 종속 미분 방정식을 모델링하고 싶습니다. 모델에서 시간 변수에 액세스하는 방법

내가 Modelica에

Real x(start=1); 
der(x) = t; 

을 모델링하고 싶은 말. 시간 변수 t에 접근하는 올바른 방법은 무엇입니까?

답변

11

Modelica의 시간 변수는 time이며 모델, 블록 (패키지, 레코드, 커넥터 또는 함수는 제외)에서 액세스 할 수 있습니다.

또한 start 속성을 사용하는 대신 초기 방정식을 사용하는 것이 좋습니다. 그래서 완전한 모델은 다음과 같이 보일 것이다 다음 initial equation 섹션에서

model FirstOrder 
    Real x; 
initial equation 
    x = 1; 
equation 
    der(x) = time; 
end FirstOrder; 

방정식은 상태의 초기 값을 해결하기 위해 적용됩니다. 위 방정식은 사소한,하지만 당신은 같은 흥미로운 물건을 할 수 있습니다 : 여기에서 요점은 직접 상태의 값을 지정하는 것 외에 다른 방정식을 사용할 수 있다는 것입니다

model FirstOrder_IC2 
    Real x; 
initial equation 
    x*x*x = 3.0*time+7.0; 
equation 
    der(x) = time; 
end FirstOrder_IC2; 

. 위의 초기 방정식은 "물리적으로"흥미로운 것은 아니지만 수학적으로는 비선형이며 시차가 있기 때문에 (즉, 시뮬레이션의 시작 시간에 민감합니다)

관련 문제