Coding wavelets the easy way

function y = addSignals(u,v)
% summation of two Laurent series
% used to sum signals which may start before zero or
% non causal FIR filters
% manage lowest degree
if u.d < v.d
y.d = v.d;
u.s = [zeros(1,v.d - u.d) u.s];
elseif v.d < u.d
y.d = u.d;
v.s = [zeros(1,u.d - v.d) v.s];
else
y.d = u.d;
end
% manage highest degree
if length(u.s) < length(v.s)
u.s = [u.s zeros(1,length(v.s)-length(u.s))];
elseif length(v.s) < length(u.s)
v.s = [v.s zeros(1,length(u.s)-length(v.s))];
end
y.s = u.s + v.s;