k = length(obj2.coef) - length(obj1.coef);
zp = zeros(1,k);
zm = zeros(1,-k);
r = DocPolynom([zp,obj1.coef] + [zm,obj2.coef]);
end % plus
function r = minus(obj1,obj2)
% MINUS Implement obj1 - obj2 for DocPolynoms.
obj1 = DocPolynom(obj1);
obj2 = DocPolynom(obj2);
k = length(obj2.coef) - length(obj1.coef);
zp = zeros(1,k);
zm = zeros(1,-k);
r = DocPolynom([zp,obj1.coef] - [zm,obj2.coef]);
end % minus
function r = mtimes(obj1,obj2)
% MTIMES Implement obj1 * obj2 for DocPolynoms.
obj1 = DocPolynom(obj1);
obj2 = DocPolynom(obj2);
r = DocPolynom(conv(obj1.coef,obj2.coef));
end % mtimes
end % methods
end % classdef
The DocPolynom Constructor
The following function is the DocPolynom class constructor, which is in the file
@DocPolynom/DocPolynom.m:
methods
function obj = DocPolynom(c)
if isa(c,'DocPolynom')
obj.coef = c.coef;
else
obj.coef = c(:).';
end
end
end
Constructor Calling Syntax
It is possible to all the DocPolynom constructor with two different arguments:
Representing Polynomials with Classes