File:Illustration of causal and non-causal filters.svg
From formulasearchengine
Jump to navigation
Jump to search
Size of this PNG preview of this SVG file: 664 × 599 pixels. Other resolutions: 266 × 240 pixels | 532 × 480 pixels | 851 × 768 pixels | 1,135 × 1,024 pixels | 2,269 × 2,048 pixels | 688 × 621 pixels.
Original file (SVG file, nominally 688 × 621 pixels, file size: 65 KB)
This file is from Wikimedia Commons and may be used by other projects. The description on its file description page there is shown below.
Summary
DescriptionIllustration of causal and non-causal filters.svg |
English: Each component of the causal filter output begins when its stimulus begins. The outputs of the non-causal filter begin before the stimulus begins. |
|||
Date | (UTC) | |||
Source |
This file was derived from: Illustration of causal and non-causal filters.png |
|||
Author | Bob K | |||
Permission (Reusing this file) |
I, the copyright holder of this work, hereby publish it under the following license:
|
|||
SVG development InfoField | This W3C-invalid vector image was created with LibreOffice. |
|||
Gnu Octave source InfoField | click to expand
This graphic was created with the help of the following Octave script: % Options
frame_background_gray = true;
if frame_background_gray
graphics_toolkit("qt") % has "insert text" option
% graphics_toolkit("fltk") % has cursor coordinate readout
frame_background = .94*[1 1 1];
d = 4; % amount to add to text sizes
else
graphics_toolkit("gnuplot") % background will be white regardless of value below
frame_background = .94*[1 1 1];
d=0;
endif
xmax = 1000; % length of plots
L = 100; % length of rectangles
% (https://octave.org/doc/v4.2.1/Graphics-Object-Properties.html#Graphics-Object-Properties)
% Speed things up when using Gnuplot
set(0, "DefaultFigureColor",frame_background)
set(0, "DefaultAxesTitleFontweight","normal")
set(0, "DefaultAxesFontsize",12+d) % size of numeric tick labels
% set(0, "DefaultTextFontsize",12+d)
set(0, "DefaultAxesYlim",[0 2])
set(0, "DefaultAxesXlim",0.02*([-200 xmax]))
set(0, "DefaultAxesYtick",[])
set(0, "DefaultLineLinewidth",2)
%=======================================================
hfig = figure("position",[1 -150 735 835]);
x1 = .02; % left margin
x2 = .02; % right margin
y1 = .08; % bottom margin for annotation
y2 = .10; % top margin for title
dy = .10; % vertical space between rows
width = 1-x1-x2;
height= (1-y1-y2-3*dy)/4; % space allocated for each of 4 rows
x_origin = x1;
y_origin = 1; % start at top of graph area
%=======================================================
y_origin = y_origin -y2 -height; % position of top row
subplot("position",[x_origin y_origin width height])
f = [zeros(1,200) ones(1,L) zeros(1,100)];
plot(0.02*([1:length(f)]-250), f ,"r" )
title("h(t) (non-causal impulse response)", "fontsize",14+d)
%=======================================================
y_origin = y_origin -dy -height;
subplot("position",[x_origin y_origin width height])
plot(0.02*([1:length(f)]-200), f, "b" )
title("h(t-1) (causal impulse response)", "fontsize",14+d)
%=======================================================
y_origin = y_origin -dy -height;
subplot("position",[x_origin y_origin width height])
a = [zeros(1,200) ones(1,L) zeros(1,250) 0.5*ones(1,100) zeros(1,250) 0.25*ones(1,100) zeros(1,200)];
plot(0.02*([1:length(a)]-200), a,"m")
ylim([0 2*max(a)])
title("Input", "fontsize",14+d)
%=======================================================
y_origin = y_origin -dy -height;
subplot("position",[x_origin y_origin width height])
b = conv(a,f);
c = b(200:end);
plot(0.02*([1:length(c)]-250), c, "r", 0.02*([1:length(c)]-200), c, "b")
ylim([0 max(b)])
legend("f(t) non-causal output", "f(t-1) (causal output)")
title("Outputs", "fontsize",14+d)
print -dsvg Illustration_of_causal_and_non-causal_filters.svg
|
Original upload log
This image is a derivative work of the following images:
- File:Illustration_of_causal_and_non-causal_filters.png licensed with PD-user
- 2012-01-07T02:20:59Z OgreBot 1470x1671 (32150 Bytes) (BOT): Reverting to most recent version before archival
- 2012-01-07T02:20:55Z OgreBot 483x585 (6466 Bytes) (BOT): Uploading old version of file from en.wikipedia; originally uploaded on 2005-12-12 00:25:17 by [[:en:User:Bob K|Bob K]]
- 2012-01-07T02:20:53Z OgreBot 441x659 (5782 Bytes) (BOT): Uploading old version of file from en.wikipedia; originally uploaded on 2005-12-11 23:47:49 by [[:en:User:Bob K|Bob K]]
- 2012-01-07T02:20:51Z OgreBot 429x635 (5727 Bytes) (BOT): Uploading old version of file from en.wikipedia; originally uploaded on 2005-12-11 23:34:00 by [[:en:User:Bob K|Bob K]]
- 2012-01-06T13:35:34Z Bob K 1470x1671 (32150 Bytes) {{BotMoveToCommons|en.wikipedia|year={{subst:CURRENTYEAR}}|month={{subst:CURRENTMONTHNAME}}|day={{subst:CURRENTDAY}}}} The upload bot is [[User:CommonsHelper2 Bot]] which is called by [http://toolserver.org/~commonshelper2/in
7 August 2012
image/svg+xml
File history
Click on a date/time to view the file as it appeared at that time.
Date/Time | Thumbnail | Dimensions | User | Comment | |
---|---|---|---|---|---|
current | 09:52, 2 February 2020 | 688 × 621 (65 KB) | wikimediacommons>Bob K | minor cleanup |
File usage
There are no pages that use this file.