problem with symbolic calculation

조회 수: 1 (최근 30일)
YOGESHWARI PATEL
YOGESHWARI PATEL 2021년 3월 14일
댓글: YOGESHWARI PATEL 2021년 3월 17일
I want symbolic calculation .I write the code but error is displayed
syms a
syms R
n=input('enter the value of n')
F(1)=1;
F(2)=0;
F(3)= a;
aplha=input('enter the value of a=')
R=input('enter the value of reynold number R=')
for i=1:n
F(i+3)=2*alpha*R*F(i)+F(i+1);
end

채택된 답변

Walter Roberson
Walter Roberson 2021년 3월 16일
편집: Walter Roberson 2021년 3월 16일
aplha=input('enter the value of a=')
You assign to aplha . A. P. L. H. A
R=input('enter the value of reynold number R=')
for i=1:n
F(i+3)=2*alpha*R*F(i)+F(i+1);
You use alpha . A. L. P. H. A.
You have not assigned to alpha.
alpha happens to exist as a function, but the function alpha requires that you pass a parameter to it, so you would get an error.
You need to change your input() to assign to alpha instead of aplha

추가 답변 (1개)

Steven Lord
Steven Lord 2021년 3월 14일
The way you've written it, when you try to assign a into F(3) MATLAB needs to convert the symbolic a into a numeric value so it can be stored in the numeric array F. But what is the numeric value of a? It doesn't have one, which is why MATLAB complains.
Since you want F to be able to store symbolic variables, don't initialize it to be a numeric array first. Initialize it as symbolic from the start by assigning a symbolic expression to it to create the array.
F(1) = sym(1);
Or since you know how large it will need to be in the end:
F = sym(zeros(1, n+3));

카테고리

Help CenterFile Exchange에서 Symbolic Math Toolbox에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by