How to plot a function ?
1 次查看(过去 30 天)
显示 更早的评论
Helli, i'm a newbie in mathlab and i try for hours to make the program below, please would you explained me how to begin or make the program and write the code to see where i make some mistake.
Write a program that recieve as arguments two real numbers a and b with a>0 and b∈(0,1) and who represent graphic in cartesian coordinate function f:[0,2]->R.
{ (a*x)/(x^2+b), x∈[0,1]
f(x)= {
{ ln(x^2-3*x+3), x∈(1,2]
with dashed line and black color. The program display an error message if the requirements about arguments are not respected.
Thank You!!
0 个评论
采纳的回答
Carlos
2014-3-17
编辑:Carlos
2014-3-17
Some ideas here
function y=new(a,b)
if(a<0)
disp('a must be bigger than zero');
end
if(b<0||b>1)
disp('a must be bigger than zero and smaller than 1');
end
x=0:0.1:2;
y=zeros(1,length(x));
for k=1:length(x)
if (x(k)<1)
y(k)=(a*x(k))/(x(k)^2+b);
else
y(k)=log(x(k)^2-3*x(k)+3);
end
end
plot(x,y)
3 个评论
更多回答(1 个)
Niklas Nylén
2014-3-17
function fx = myFunction(a,b)
x=0:0.1:2; % Create the x vector with step size 0.1
fx = zeros(size(x)); % Initialize the function output fx with zeros
% Make the calculation for when x<=1
index = x <= 1; % Creates a logical vector with 0's and 1's
% Calculate f(x) for the indices of x which fulfill the previous logical statement
fx(index) = (a.*x(index))./(x(index).^2+b);
% Use the second equation when x > 1
index = x > 1;
fx(index) = log(x(index).^2-3.*x(index)+3);
figure;
plot(x,fx)
2 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Graphics Performance 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!