Error using .^ not enough input arguments
조회 수: 9 (최근 30일)
이전 댓글 표시
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
채택된 답변
Les Beckham
2023년 4월 11일
편집: Les Beckham
2023년 4월 11일
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);
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Function Creation에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!