2016-12-06 5 views
1

파이썬에서 시뮬레이션 결과 출력 파일 (.mat)을 여는 데 문제가 발생했습니다. 파일을로드 할 때 다음과 같은 오류가 발생했습니다 :.mat 결과 파일을 Python으로 읽어 들이기에 메모리가 부족합니다.

ValueError: Not enough bytes to read matrix 'description'; is this a badly-formed file? Consider listing matrices with whosmat and loading named matrices with variable_names kwarg to loadmat

누구든지이 오류를 수정하는 데 성공 했습니까? 파이썬에서 매트 파일을 관리 할 수있는 스크립트 DyMat가 있지만 지금까지 아무런 운이 없었다는 소식을 들었습니다.

의견을 보내 주시면 대단히 감사하겠습니다.

+0

파일을 여는 데 어떤 라이브러리를 사용하고 있습니까? 그건 표준 파이썬 오류 메시지가 아니지만 일부 라이브러리에서 던져 것으로 보인다. 오류 메시지 자체가 해결책을 제안하는 것으로 보입니다 - 시도해 보셨습니까? 어떤 경우에도 [mcve]를 게시하지 않는 한 아무도 계속 진행하지 않습니다. –

+0

안녕하세요, 그래서 DyMat이 실제로 라이브러리가 결과 파일을로드하는 데 사용되는 것을 봅니다. 나는 whosmat라는 용어가 무엇을 의미하는지, 그리고 어디에 접근 할 수 있는지 확신 할 수 없다. –

답변

1

Dymola에서 변수 선택을 사용하여 시뮬레이션 결과 파일의 크기를 줄일 수 있습니다. 그러면 출력이 선택 기준과 일치하는 상태, 매개 변수 및 변수로 제한됩니다.

새로운 Dymola 2017 FD01에는 변수 선택을 정의하는 사용자 인터페이스가 있습니다.

+0

다른 해결책은 결과 파일을 SDF (a.k.a. HDF5) 형식으로 변환하는 것입니다. Simulation> Setup in Dymola를 참조하십시오. Dymola 분포에있는 파이썬 함수는 SDF 파일을 읽습니다. – Dag