2016-08-15 2 views
2

나는 Modelica 코드를 해결하기 위해 Dymola가 요구하는 단계를 파악하려고합니다. 일부 참고 문헌과 책을 읽음으로써 나는 Dymola를 이해함 :Dymola DAE solver

  1. Modelica 코드를 하이브리드 DAE (병합)로 변환합니다.
  2. DAE를 ODE 형식 (색인 축소 및 기타 기술)으로 변환하기 위해 조작합니다.
  3. DASSL 알고리즘을 사용합니다.

제 질문은 : 왜 Dymola가 ODE를 해결하기 위해 DASSL을 사용해야합니까? BDF 나 Runge-Kutta와 같은 일반적인 ODE 해결사를 사용하기에 충분하지 않아야합니까?

미리 알려 주셔서 감사합니다. 모든 최고의,

알레산드로

+0

짧은 대답 : 더 효율적입니다. Francois Cellier는 Francois Cellier의 "Continuous System Simulation"장 8.4 (DASSL) –

+0

에 Lukas 씨의 의견에 감사드립니다. 나는 실제로 그 장을 읽었지만 나의 의심은 : DASSL은 DAE 솔버이기 때문에 어떻게 ODE를 해결할 수 있습니까? DASSL도 ODE를 해결할 수 있다고 말하면 모든 것이 합리적이며 논리입니다. –

+1

ODE는 DAE의 하위 집합입니다. 기본적으로 ODE는 der (x) = f (x)이고 DAE는 g (der (x), x) = 0입니다. 따라서 g (der (x), x) = der (x) -f (x)를 설정하면 ODE가 DAE로 변환되므로 Dassl이이를 해결할 수 있습니다. –

답변

1

Dymola는 RK 등 여러 가지 통합 알고리즘을 지원합니다. 하지만 DASSL은 좋은 기본 설정입니다. 또한 일부 문제는 ODE 형식으로 축소 할 수 없습니다.

1

색인 축소는 원래 방정식을 그 파생어로 대체함으로써 제약 정보를 버립니다.

이론상 파생 방정식이 이러한 상실한 ID를 보존 된 양으로 갖기 때문에 이론적으로 이는 별 의미가 없습니다. 그러나 수치 적 통합은 DAE의 일관된 상태의 매니 폴드에서 상태를 제거 할 수있는 표류를 유도합니다.

이것은 인덱스 0 ODE로 줄이지 않고 인덱스 -1 DAE에서 중지하여 원래 방정식의 차별성이 적어지고 수치 적분이 근본적으로 암시 적 RK 방법의 복잡성을 갖음으로써 개선 될 수 있습니다 resp. 암시 적 다중 단계 방법.

주문 1 시스템의 경우 DASSL과 같은 DAE 솔버를 사용해야합니다.

+1

Dymola의 지수 감소는 국가 방정식이 보존되어 있기 때문에 그렇지 않습니다. 이론은 다음을 참조하십시오 : http://epubs.siam.org/doi/abs/10.1137/0914043 –