2016-03-22 2 views
0

Я работающий на домашнем задании и пытаюсь решить следующую задачу:Использования логических Маски

Вот код, который я до сих пор:

function [ ] = Activity45(Time) 
%Homework 4 
%Activity 4.5 

t=Time; 

A=[0:0.1:t]; 
B=3*exp(-(A/3)).*sin(pi.*A); 
C=(B>0); 

plot(A,B(C)) 

end 

Так что я пытаюсь использовать маску для извлечения данных из матрицы B в матрице C. Но я не знаю, как сопоставить данные между A и C, а затем использовать plot().

Любая помощь?

+0

Отлично! Большое вам спасибо, сразу после того, как я опубликовал вопрос, который я подумал, чтобы попытаться построить A (C), B (C). – BLKKROW

ответ

1

С plot(A(C), B(C)) вы не получаете предполагаемую кривую, потому что у вас нет значений, равных нулю. Вместо этого последние две точки слева и справа связаны с линией выше нуля. Правильный путь - установить значение на оси Y равным нулю.

B(~C)=0; 
plot(A,B); 

Для будущих формул может быть хорошей идеей использовать имена переменных, соответствующие именам переменных в ваших формулах.

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