1
외부 함수를 호출하는 Modelica 모델이 있습니다. 시간 단계가 너무 길면 종종 외부 C++ 코드가 예외를 throw합니다.외부 함수 throw 예외에 대한 응답으로 timestep을 줄이는 방법
응답으로 적절한 조치를 취하는 것이 시간 단계를 줄이고 다시 시도하는 것입니다. 예외에 대한 응답으로 타임 스텝을 줄이는 방법이 있습니까?
외부 함수를 호출하는 Modelica 모델이 있습니다. 시간 단계가 너무 길면 종종 외부 C++ 코드가 예외를 throw합니다.외부 함수 throw 예외에 대한 응답으로 timestep을 줄이는 방법
응답으로 적절한 조치를 취하는 것이 시간 단계를 줄이고 다시 시도하는 것입니다. 예외에 대한 응답으로 타임 스텝을 줄이는 방법이 있습니까?
는 더 직접 표준화 된 방법은 없습니다,하지만 당신은 예외를 잡아 하나 Modelica에 오류 플래그로 돌아가 assert
를 사용하거나 캐치 부분에 ModelicaError를 사용하여 C-래퍼 (에 ModelicaError
을 사용할 수 있습니다 C++이 가능할 수도 있음).
명세는 실패한 어서션 (또는 ModelicaError의 호출) 후에 시뮬레이션은 예를 들어 더 짧은 스텝 크기로, 또는 반복 변수의 값을 변경함으로써 또 다른 평가로 계속 될 수 있다고 기술한다.