Как ограничить переменную в Matlab

Matlab
Вопрос: Matlab newb здесь. Я искал и не нашел, как сделать следующее: x=0.1:1/100:10; y=exp(a(a>=-1&a

Вопрос:

Matlab newb здесь. Я искал и не нашел, как сделать следующее:

x=0.1:1/100:10; y=exp(a(a>=-1&a<=1)*sqrt(x)); plot(x,y)

Я понимаю, что размеры x и a не совпадают, но я просто хочу выразить: “Как выглядит y когда константа a ограничена между -1 и 1″, например.

Любые намеки приветствуются. Заранее спасибо.

Лучший ответ:

Предполагая, что a и x независимы, вы можете идти по этим строкам, используя bsxfun для вычисления y для всех комбинаций a и x:

x = 0.1:1/100:10; %// define x values a = linspace(-1,1,10); %// define a values y = exp( bsxfun(@times, a, sqrt(x).’) ); %’// compute y for all combinations plot(x,y); %// this plots each column of y. Each colum represents a value of a

enter image description here

Или график как трехмерный график (y как функция a и x):

mesh(a,x,y) xlabel(‘a’) ylabel(‘x’) zlabel(‘y’)

enter image description here

Ответ №1

Вы можете сделать следующее:

x=0.1:1/100:10; % 991 clips a=-1:1/495:1; % use 1/495 here to make it also 991 clips y=exp(a.*sqrt(x)); plot(x,y)

Это даст вам следующий рисунок:

enter image description here

Оцените статью
Добавить комментарий