
FUNCTION dynadd2,a0,a1,a2,a3

 s  = size(a0)
 nc = s(1)
 nr = s(2)

ind = 2*lindgen(nc*nr)
for row=1,nr-1 do begin
    i=row*nc
    b=intarr(nc)+i*2
    ind(i)=ind(i:i+nc-1)+b
endfor

d=intarr(2*nc,2*nr)
b = intarr(2*nc,2*nr)

FOR n = 0, 3 DO BEGIN

b = d/4 + SHIFT(d, 1, 0)/4 + SHIFT(d, 1, -1)/4 + SHIFT(d, 0, -1)/4

d(ind)=d(ind)+0.7*(a0-b(ind))
d(ind+1)=d(ind+1)+0.7*(a1-b(ind+1))
d(ind+2*nc)=d(ind+2*nc)+0.7*(a3-b(ind+2*nc))
d(ind+2*nc+1)=d(ind+2*nc+1)+0.7*(a2-b(ind+2*nc+1))

print, (TOTAL(ABS(a0-b(ind))) + $
        TOTAL(ABS(a1-b(ind+1)))+$
        TOTAL(ABS(a2-b(ind+2*nc+1)))+$
        TOTAL(ABS(a3-b(ind+2*nc))))/(MAX(a0)*4.0*nr*nc)

ENDFOR


wert = MAX(d(3:nc-4, 3:nr-4))
d(0:3, *) = wert
d(2*nc-4:2*nc-1, *) = wert
d(*, 0:3) = wert
d(*, 2*nr-4:2*nr-1) = wert


RETURN,d
END
