필터 지우기
필터 지우기

Rectangular Function implementation in Matlab

조회 수: 110 (최근 30일)
Rohan Repale
Rohan Repale 2013년 3월 20일
댓글: Vamshidhar Reddy 2022년 11월 15일
How do I implement this equation?
rect(x)
Thanks

채택된 답변

Azzi Abdelmalek
Azzi Abdelmalek 2013년 3월 20일
편집: Azzi Abdelmalek 2013년 3월 20일
rect=@(x,a) ones(1,numel(x)).*(abs(x)<a/2) % a is the width of the pulse
x=-10:0.001:10
y=rect(x,2)
plot(x,y)
  댓글 수: 6
Khushi Bhatti
Khushi Bhatti 2018년 9월 9일
can someone please tell me how can i use a rectangular function or any function to visualize outliers in my data? i find the outliers in my data but i dnt know how to visualize them using a graph or plot.
Vamshidhar Reddy
Vamshidhar Reddy 2022년 11월 15일
rectangular function do require symbolic toolbox

댓글을 달려면 로그인하십시오.

추가 답변 (2개)

Johan Rincon Botia
Johan Rincon Botia 2022년 4월 16일
I did the implementation for rect function with period w
My function has 4 arguments rect (T,n,amp,xtranslation), where T is the period, n is the periods that you want to show, amp is the amplitude and xtranslation is the translation at x-axis, for example, i want to do this signal:
with any period, like T = 20s, and i wanna show this 3 times,
This is how i use the function
T = 20; %Period
amplitude = 5; %Amplitude of the signal
num = 3; %Numbers of periods that you want to show
xtranslation =-8; % Translation x-axis
[t,y] = rect(T,num,amplitude,xtranslation); %the function return the time vector and amplitud vector
plot(t,y)%use t and y to plot your rect signal
An here is the implementation of the function:
function [t,y] = rect(T_period,num,ampli,xtranslation)
t = -T_period*num:0.01:T_period*num;
y_0=0;
y_1=1;
if xtranslation>=T_period/2
num = num+round((2*xtranslation/T_period))
end
for i=-num:num
y_0=y_0 + 0.*(t>T_period/2+(T_period*(i-1)) & t<T_period*num);
y_1=y_1 + 1.*(t>T_period*(i-1) & t<T_period/2+(T_period*(i-1)));
end
y= (y_0 + y_1)
y = ampli*(y-min(y));
t = t-xtranslation;
end
And this is the result, i hope that this will be useful for you!

balakrishna nair nalivalapil
balakrishna nair nalivalapil 2019년 2월 5일
rect=@(x,a) ones(1,numel(x)).*(abs(x)<a/2) % a is the width of the pulse
x=-10:0.001:10
y=rect(x,2)
plot(x,y)
  댓글 수: 1
俊豪 杨
俊豪 杨 2021년 3월 28일
excuse me ,could i ask y u a question?how can i use rect(x,y) in matlab?

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Antennas, Microphones, and Sonar Transducers에 대해 자세히 알아보기

제품

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by