2014-01-16 6 views
0

Я хотел бы построить функцию fx (y) = 3 * y-y.^(3) -x, где x - параметр. Я хотел бы нарисовать fx (y) по сравнению с y для x, изменяющихся по 0:0.5:6 всего в одном графике. По какой-то причине он работает только тогда, когда вы даете x одно значение, а затем используете анонимную функцию, но это не то, что мне нужно.Построение функции с одним параметром (MATLAB)

[email protected](y) 3.*y-y.^(3)-x; 
ezplot(fx) 

Это дает мне 3Y-у^(3) -х = 0, но это не то, что мне нужно. Мне нужно иметь график fx против y для параметра x, изменяющегося от 0 до 6 с шагом 0,5. Это даст мне length(x) количество графиков в одном графике.

+2

Это сайт программирования. Измените свой вопрос, чтобы показать код, который вы используете. – horchler

+0

Является ли 'y' зависимым от' x'? Если нет, чего вы хотите? Если да, можете ли вы переписать уравнения? –

+0

y не зависит от x, x является просто параметром. Я хотел бы, чтобы y менялась от [-3,3]. Так что y находится на горизонтальной оси, а fx (y) находится на вертикальной оси. –

ответ

2

Как насчет:

y = -3:0.01:3; 
x = 0:0.5:6; 

n1 = numel(y); 
n2 = numel(x); 

fx = repmat(3.*y-y.^(3),n2,1)-repmat(x',1,n1); 
plot(y,fx) 

enter image description here

Смежные вопросы