이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

MuPAD Notebook을 MATLAB 라이브 스크립트로 변환하기

MuPAD® Notebook을 MATLAB® 코드를 사용하는 MATLAB 라이브 스크립트로 마이그레이션할 수 있습니다. 라이브 스크립트는 MATLAB 코드를 대화형 방식으로 실행합니다. 자세한 내용은 라이브 스크립트 또는 라이브 함수란? (MATLAB) 항목을 참조하십시오. Symbolic Math Toolbox™를 사용하면 MuPAD Notebook을 라이브 스크립트로 변환할 수 있습니다. 자세한 내용은 Symbolic Math Toolbox 시작하기 항목을 참조하십시오.

MuPAD Notebook .mnMATLAB 라이브 스크립트 .mlx로 변환하기

  1. Notebook 준비: 이 단계는 선택적이긴 하나, 변환 오류와 경고를 방지하도록 도와줍니다. Notebook에 변환되지 않는 MuPAD 객체가 있습니다.에서 소개되는 변환 불가 객체가 있는지 확인합니다. 이러한 객체는 변환 오류 또는 경고의 원인이 됩니다.

  2. Notebook 변환: convertMuPADNotebook을 사용합니다. 예를 들어, 현재 폴더에 있는 myNotebook.mn을 동일한 폴더의 myScript.mlx로 변환해 보겠습니다.

    convertMuPADNotebook('myNotebook.mn','myScript.mlx')

    또는 현재 폴더 브라우저에서 Notebook을 마우스 오른쪽 버튼으로 클릭하고 라이브 스크립트로 열기(Open as Live Script)를 선택합니다.

  3. 오류 또는 경고 확인: 오류나 경고가 있는지 convertMuPADNotebook의 출력값을 확인합니다. 없다면 7단계로 넘어갑니다. 예를 들어, 다음과 같은 출력값은 변환된 라이브 스크립트 myScript.mlx4개의 오류와 1개의 경고가 있음을 의미합니다.

    Created ''myScript.mlx': 4 translation errors, 1 warnings. For verifying...
     the document, see help.

    변환 오류는 변환된 코드가 올바르게 구동되지 않을 것을 의미하는 반면 변환 경고는 코드에 검토가 필요함을 나타냅니다. 코드에 경고만 있다면 문제 없이 실행될 가능성이 큽니다.

  4. 변환 오류 수정: 출력에 있는 링크를 클릭하여 변환된 라이브 스크립트를 엽니다. ERROR를 검색하여 오류를 찾습니다. 오류는 어느 MuPAD 명령이 올바르게 변환되지 않았는지 설명합니다. 자세한 내용과 수정 방법을 보려면 ERROR를 클릭하십시오. 오류를 수정한 후에는 오류 메시지를 삭제하십시오. 변환 오류 목록은 Troubleshoot MuPAD to MATLAB Translation Errors 항목을 참조하십시오. 오류를 수정할 수 없으며 알려진 문제도 도움이 되지 않는다면 기술 지원팀에 문의하십시오.

  5. 변환 경고 수정: WARNING을 검색하여 경고를 찾습니다. 경고 텍스트는 문제를 설명합니다. 자세한 내용과 수정 방법을 보려면 WARNING을 클릭하십시오. 코드를 조정할지 아니면 경고를 무시할지 결정하십시오. 그런 다음 경고 메시지를 삭제하십시오. 변환 경고 목록은 Troubleshoot MuPAD to MATLAB Translation Warnings 항목을 참조하십시오.

  6. 라이브 스크립트 확인: 라이브 스크립트를 열고 예기치 않은 명령, 주석, 서식 등이 있는지 확인합니다. 가독성을 높이기 위해 보조 변수를 제거하는 등 변환된 코드를 직접 정리해야 할 수 있습니다.

  7. 라이브 스크립트 실행: 코드가 올바르게 실행되고 예상 결과를 반환하는지 확인합니다. 결과가 예상과 다르다면 MuPAD 코드에 아래에 나열된 알려진 문제가 있는지 확인합니다.

MuPAD 그래픽스를 MATLAB 그래픽스로 변환하기

MuPAD 그래픽스를 변환하려면 먼저 이를 생성하는 MuPAD 플롯 명령을 변환해 보십시오. 이 접근 방식을 사용하면 MATLAB에서 MuPAD와 비슷한 방식으로 그래픽 출력값을 제어할 수 있습니다. MuPAD 명령을 변환할 수 없다면 그래픽을 내보내십시오.

알려진 문제

다음은 convertMuPADNotebook 함수를 사용하여 MuPAD Notebook을 MATLAB 라이브 스크립트로 변환할 때 발생하는 것으로 알려진 문제입니다. 겪고 있는 문제를 여기에서 찾을 수 없다면 기술 지원팀에 문의하십시오.

변환되지 않는 MuPAD 객체가 있습니다.

아래 목록을 확장하여 변환되지 않는 MuPAD 객체를 보십시오. 변환 오류 및 경고를 방지하려면 변환 전에 Notebook에서 이들 객체 또는 명령을 제거하십시오.

 변환되지 않는 객체

MATLAB에서 값이 자동 할당되지 않습니다.

MATLAB에서 기호 변수에 값이 할당되면 그러한 값을 포함하는 표현식이 자동으로 업데이트되지 않습니다.

 이 문제 해결하기

MuPADlast(1)MATLABans는 같지 않습니다.

MuPAD에서 last(1)은 항상 마지막 결과를 반환합니다. MATLAB에서 ans할당되지 않은 마지막 명령의 결과를 반환합니다. 예를 들어, MATLAB에서 x = 1을 실행한 경우, ans를 호출해도 1이 반환되지 않습니다.

 이 문제 해결하기

일부 solve 결과가 잘못 액세스됩니다.

MuPAD solve의 결과에 액세스할 때 convertMuPADNotebook은 결과가 유한 집합이라고 가정합니다. 그러나 결과가 유한하지 않은 집합인 경우에는 코드가 잘못 변환됩니다.

 이 문제 해결하기

casebreak가 잘못 변환됩니다.

MuPAD에서 break는 switch case의 case를 종료합니다. 그러나 MATLAB에서는 break가 없어도 case가 종료될 수 있습니다. 따라서 MuPAD break는 MATLAB에 불필요한 break를 추가합니다. 또한, MuPAD case에서 break가 생략되어도 MATLAB case가 다음 case로 넘어가지는 않습니다.

 이 문제 해결하기

일부 MuPAD 그래픽스 옵션이 변환되지 않습니다.

가장 널리 사용되는 MuPAD 그래픽스 옵션들은 변환되지만, 일부 변환되지 않는 옵션이 있습니다.

 이 문제 해결하기

행렬에 대한 일부 연산이 잘못 변환됩니다.

행렬에 대한 연산이 올바르지 않게 변환되는 경우가 있습니다. 예를 들어, M이 행렬인 경우 MuPAD의 exp(M)은 행렬 지수 expm(M)이 아니라 exp(M)으로 잘못 변환됩니다.

 이 문제 해결하기

MATLAB에서 indets 동작이 다릅니다.

indets는 MATLAB의 symvar로 변환됩니다. 그러나 symvar은 종속 변수나 PI 같은 상수 식별자를 찾지 않습니다.

MATLAB에서 factor의 반환 유형이 다릅니다.]

MuPAD에서 factor의 반환 유형에 상응하는 유형은 MATLAB에 없습니다. MATLAB에서 factor의 결과에 대해 후속 연산을 수행할 경우 올바르지 않은 결과가 반환될 수 있습니다.

 이 문제 해결하기

레이아웃 문제

  • MuPAD Notebook 프레임은 변환되지 않습니다.

  • MuPAD Notebook 테이블은 변환되지 않습니다.

  • MuPAD 플롯은 라이브 스크립트에서 대화형 방식으로 작동하지 않습니다.

  • MuPAD Notebook의 제목 또는 소제목이 감지되지 않는 경우가 있습니다.

  • MuPAD 텍스트 특성 underline은 변환되지 않습니다.

  • 텍스트 서식 지정: 글꼴, 글꼴 크기 및 색은 변환되지 않습니다. 모든 텍스트는 라이브 스크립트에서 동일하게 표시됩니다.

MATLABMuPAD 간의 구문 차이점

MATLAB과 MuPAD 간의 구문 차이점은 Differences Between MATLAB and MuPAD Syntax 항목을 참조하십시오.