преобразование сигнала туда и обратно с помощью тригонометрических функций

Я пытаюсь преобразовать сигнал туда и обратно, используя тригонометрические функции. В приведенном ниже примере:

  • 1) начать с сигнала cos
  • 2) преобразовать сигнал в секущий сигнал
  • 3) хотел бы преобразовать сигнал секущей обратно в исходный сигнал косинуса. (Это возможно)

Я знаю, что sec=1/потому что я пытался посмотреть, вернет ли простая алгебра исходный сигнал, но похоже, что мне не хватает понимания Trig, как вы можете видеть на третьем графике ниже, он не возвращается к оригиналу сигнал cos, что я и пытаюсь сделать.

И, пожалуйста, не публикуйте, просто используйте cos (x). Это простой пример, показывающий, что я пытаюсь сделать, реальный код состоит примерно из 500 строк с несколькими функциями, которые он вызывает. Я пытаюсь выяснить, есть ли способ вернуться к исходному сигналу с помощью Trig и matlab/octave.

Вот пример кода Matlab/октавы ниже:

clear all, clf
x = linspace(0,2*pi,1000);
y = cos(x); % 
subplot(3,1,1); 
plot(x,y)
title('original signal')

y2 =1./cos(x);  % secant
subplot(3,1,2); 
plot(x,y2)
title('converted signal')

y3 =sec(y2).*sec(y2);  % this section is incorrect not sure how to fix it
subplot(3,1,3); 
plot(x,y3)
title('back to original cos signal from secant') 

введите здесь описание изображения


person Rick T    schedule 10.02.2014    source источник
comment
Какова цель y3 =sec(y2).*sec(y2);? Когда вы конвертируете обратно в cos?   -  person Luis Mendo    schedule 10.02.2014
comment
@Luis Mendo Я делал снимок в темноте, чтобы посмотреть, преобразует ли это его обратно в исходный сигнал cos, чего, конечно же, нет. Это показывает, что я не понимаю Триг.   -  person Rick T    schedule 10.02.2014
comment
Я имею в виду, почему бы и нет y3 = 1./y2;? сек 1/cos   -  person Luis Mendo    schedule 10.02.2014
comment
@Luis Mendo спасибо, что сделает это, но мне нужно использовать функцию Trig, чтобы вернуться к исходному сигналу.   -  person Rick T    schedule 10.02.2014


Ответы (1)


Ваш y3 расчет неверен:

sec(y2) = 1/cos(y2) = 1/cos(1/cos(x))

y3 = sec(y2) * sec(y2) = 1 / cos(1/cos(x))^2.

Это не равно cos(x), поэтому y3 никоим образом не должно выглядеть как y.

person am304    schedule 11.02.2014
comment
так есть ли способ исправить мой расчет y3? - person Rick T; 02.05.2014