Error using .^ not enough input arguments
1 view (last 30 days)
Show older comments
I dont know what i am doing wrong here.
I have a function that is meant to take a single input 'a' and output 'L' however i keep getting this error.
Error using .^
Not enough input arguments.
Error in calc_length (line 11)
L = integral( sqrt(1+{power(dy/dx),2}),x1,x2);
Error in Test (line 1)
z = calc_length(2);
Can someone please advise.
Code:
function [L] = calc_length(a)
%UNTITLED6 Summary of this function goes here
% Detailed explanation goes here
x1 = -1;
x2 = 1;
dx = 0.1;
x = 1:10;
(x1<=x)&(x<=x2);
y=(power((2.*x),a)+1).*cos((pi.*x)/2);
dy = diff(y);
L = integral( sqrt(1+{power(dy/dx),2}),x1,x2);
end
0 Comments
Accepted Answer
Les Beckham
on 11 Apr 2023
Edited: Les Beckham
on 11 Apr 2023
Perhaps you meant this instead
% L = integral( sqrt(1+{power(dy/dx),2}),x1,x2);
% ^ ^ remove the curly braces and move ,2
% inside the parentheses
L = integral(sqrt(1 + power(dy/dx ,2), x1, x2);
Note that this can also be written like this (which explains the mention of .^ in the error message)
L = integral(sqrt(1 + (dy/dx).^2, x1, x2);
2 Comments
More Answers (0)
See Also
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!