2010-07-16 2 views
1

우리가 u1 = 1/24 * h * sin (3 * t) -1/24 * h * sin (3 * t) * k + 1/24 * h * sin * 24 * h k sin (t). .mat 파일에 저장 한 후 matlab에 어떻게로드 할 수 있습니까? 저는 matlab의 새로운 사용자입니다. matlab 5.3 버전의 기호 도구 상자를 사용하고 있습니다. char 명령을 사용하면 매트 파일이나 다른 파일에도 표현을 저장할 수 있습니다. 예 : fid = fopen ('out.mat', 'r'); syms t k class (t);u0 = sin (t) + k * cos (t)^2; u0 = char (u0); fprintf (fid, 'u0 = % s', u0); fclose (fid);어떻게 기호식을 matlab에로드 할 수 있습니까?

이것은 out.mat 파일이나 선택한 이름에 관계없이 최선을 다해 u0를 저장합니다. 더 좋은 옵션이 있으면 알려주십시오. 그럼, 내 질문에 그것을로드하는 방법이나 우리가 다른 파일 에서이 표현을 사용하는 것입니다. 문제에 대한 모든 정보를 제공하지 않아 죄송합니다. 명령 파일 filename을 시도했지만 "파일을 열 수 없습니다."라는 사실을 알았습니다. 모르겠습니다. 왜요?

답변

2

.mat 파일에 변수를 저장하고로드하는 올바른 방법은 SAVELOAD 함수를 사용하는 것입니다. 예를 들어 :

syms t k     %# Declare your symbolic variables 
u0 = sin(t)+k*cos(t)^2; %# Make your symbolic equation 
save out.mat u0   %# Save u0 to out.mat 

은 그럼 당신은 수행하여 변수 u0를로드 할 수있는 사항은 다음과 같습니다

load out.mat    %# Load u0 into your workspace 
파일 이름이 문자열로 저장되어있는 경우는 SAVELOAD의 기능적 형태를 사용할 수 있습니다

:

save('out.mat','u0'); %# Save u0 to out.mat 
load('out.mat');  %# Load u0 into your workspace 
0

귀하의 질문은 약간 혼란스럽고 다소 혼란 스럽습니다. 표현식을 매트 파일에 어떻게 저장 했습니까? 매트 파일에서로드하는 방법에 대한 일반적인 대답은 단순히 load 'matfile.mat' 명령을 실행하는 것입니다.하지만 매트 파일을 올바르게 저장 했느냐에 달려 있습니다.

Matlab Symbolic Toolbox를 사용하고 있습니까? 아니면 Matlab 표현식을 저장하려고합니까? 후자의 경우 m 파일이 매트 파일보다 더 나은 접근 방법 일 수 있습니다.

질문을 명확히하십시오.

관련 문제