2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Построить график кусочно заданной функции в матлаб
Сообщение21.10.2011, 16:15 
Аватара пользователя
Построить в матлаб график функции

$$
f(x) =\begin{cases}
sin (x),&\text{если $0\le x\le pi$;}\\
-1 ,&\text{если $ pi < x< 2*pi $;}\\

\end{cases}
$$

 
 
 
 Re: Построить график кусочно заданной функции в матлаб
Сообщение22.10.2011, 22:44 
Код:
>> x1=0:.1:pi;
>> y1=sin(x1);
>> x2=pi:.1:(2*pi);
>> y2(1:1:length(x2))=-1;
>> plot(x1,y1,x2,y2)
>> axis([0,10,-2,2])

Как-то так.

 
 
 
 Re: Построить график кусочно заданной функции в матлаб
Сообщение03.11.2011, 14:56 
Аватара пользователя
vladiko в сообщении #495192 писал(а):
Как-то так.


а зачем лишние точки? да и получилось у Вас два графика, а не один (цвета-то разные)
Вот чуть-чуть модифицирую Ваш код
Код:
x=0:.1:pi;
y=sin(x);
x=[x NaN pi 2*pi];
y=[y NaN -1 -1];
plot(x,y)
axis([0,2*pi,-2,2])


(включение точки с NaN обеспечивает разрыв)

-- Чт ноя 03, 2011 15:11:05 --

vladiko в сообщении #495192 писал(а):
y2(1:1:length(x2))=-1;

PS Указывать шаг в данном случае лишне - он по умолчанию единичный (другое дело, если бы было нужно, скажем, через один с ними что-то делать...), то есть в Вашем примере можно написать просто y2(1:length(x2))=-1; или y2=-ones(1,length(x2));

 
 
 
 Re: Построить график кусочно заданной функции в матлаб
Сообщение06.11.2011, 12:49 
Mike1 в сообщении #494800 писал(а):
Построить в матлаб график функции

$$
f(x) =\begin{cases}
sin (x),&\text{если $0\le x\le pi$;}\\
-1 ,&\text{если $ pi < x< 2*pi $;}\\

\end{cases}
$$

Используется синтаксис Matlab M
function y=f(x)
y=sin(x).*(x>=0).*(x<=pi) + (-1)*(x>pi).*(x<2*pi);


Ну и потом, естественно,

Используется синтаксис Matlab M
x=0:2*pi/1000:2*pi;
plot(x, f(x)),   grid

 
 
 
 Re: Построить график кусочно заданной функции в матлаб
Сообщение06.11.2011, 14:25 
Аватара пользователя
ewert, ага, так получше получается

 
 
 [ Сообщений: 5 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group