this programme in matlab 2017b but icant run it

조회 수: 2 (최근 30일)
Aalaa Abu alrob
Aalaa Abu alrob 2018년 8월 13일
댓글: Walter Roberson 2018년 8월 14일
syms x;
syms E;
syms a;
p(x) =(sqrt(2*(E-potential(x,a))))
q = integral(p(x),0,x)
function [v] = potential(a,x)
v= a.*x
end
  댓글 수: 2
Rik
Rik 2018년 8월 13일
Today I formatted your code. Next time, you can do it yourself by selecting your code and pushing the {}Code button.
Rik
Rik 2018년 8월 13일
What is the error you are getting? You can run scripts that contain functions since R2016b, so that isn't the problem. I don't have the symbolic toolbox, so I can't check the code itself for you.

댓글을 달려면 로그인하십시오.

채택된 답변

Tiasa Ghosh
Tiasa Ghosh 2018년 8월 13일
For using Integral (), you must describe 'p' as a function handle with the '@' notation.Like this:
p = @(x) sqrt(2*(E-potential(x,a)));
This will work for Integral(). However, your second input to integral is 'x' which a symbolic variable. But Integral() accepts only scalar values as input. You need to change that.
  댓글 수: 3
Aalaa Abu alrob
Aalaa Abu alrob 2018년 8월 14일
Thanks for your attention .. but my integral is with respect to x.. and other sympoles are constant
Walter Roberson
Walter Roberson 2018년 8월 14일
Your a is not constant, it is an unresolved symbolic variable.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Walter Roberson
Walter Roberson 2018년 8월 13일
p is defined in terms of the symbolic variable a. integral() is for numeric integration and cannot be used with unresolved symbolic variables.
Please recheck the order of parameters for your function. You define the function with one order but you call it with a different order.

카테고리

Help CenterFile Exchange에서 Calculus에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by