Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
38
Task/Deconvolution-1D/BBC-BASIC/deconvolution-1d.basic
Normal file
38
Task/Deconvolution-1D/BBC-BASIC/deconvolution-1d.basic
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
*FLOAT 64
|
||||
DIM h(5), f(15), g(20)
|
||||
h() = -8,-9,-3,-1,-6,7
|
||||
f() = -3,-6,-1,8,-6,3,-1,-9,-9,3,-2,5,2,-2,-7,-1
|
||||
g() = 24,75,71,-34,3,22,-45,23,245,25,52,25,-67,-96,96,31,55,36,29,-43,-7
|
||||
|
||||
PROCdeconv(g(), f(), x())
|
||||
PRINT "deconv(g,f) = " FNprintarray(x())
|
||||
x() -= h() : IF SUM(x()) <> 0 PRINT "Error!"
|
||||
|
||||
PROCdeconv(g(), h(), y())
|
||||
PRINT "deconv(g,h) = " FNprintarray(y())
|
||||
y() -= f() : IF SUM(y()) <> 0 PRINT "Error!"
|
||||
END
|
||||
|
||||
DEF PROCdeconv(g(), f(), RETURN h())
|
||||
LOCAL f%, g%, i%, l%, n%
|
||||
f% = DIM(f(),1) + 1
|
||||
g% = DIM(g(),1) + 1
|
||||
DIM h(g% - f%)
|
||||
FOR n% = 0 TO g% - f%
|
||||
h(n%) = g(n%)
|
||||
IF n% < f% THEN l% = 0 ELSE l% = n% - f% + 1
|
||||
IF n% THEN
|
||||
FOR i% = l% TO n% - 1
|
||||
h(n%) -= h(i%) * f(n% - i%)
|
||||
NEXT
|
||||
ENDIF
|
||||
h(n%) /= f(0)
|
||||
NEXT n%
|
||||
ENDPROC
|
||||
|
||||
DEF FNprintarray(a())
|
||||
LOCAL i%, a$
|
||||
FOR i% = 0 TO DIM(a(),1)
|
||||
a$ += STR$(a(i%)) + ", "
|
||||
NEXT
|
||||
= LEFT$(LEFT$(a$))
|
||||
Loading…
Add table
Add a link
Reference in a new issue