File : numerics-ops-fou.adb


with Fouriers.Ops;

pragma Elaborate_All (Fouriers.Ops);

package body Numerics.Ops.Fou is

  function Par(H: Polynom) return Parity renames Polynoms.Par;
  function Rho(H: Polynom) return Weights renames Polynoms.Rho;
  function Deg(M,N: Integer; H: Polynom) return DegType renames Polynoms.Deg;
  procedure SetZero(J: in Parity; R: in Weights; H: out Polynom) renames Polynoms.SetZero;

  function Component(M,N,K: Integer; H: Polynom) return Rep is
  begin
    return Rep(Polynoms.Component(M,N,K,H));
  end Component;

  package Polynoms_Ops is new Polynoms.Ops;

  procedure SetComponent(M,N,K: in Integer; R: in Rep; H: in out Polynom) is
  begin
    Polynoms_Ops.SetComponent(M,N,K,Numeric(R),H);
  end SetComponent;

  function NumInv(Err: Radius; H: Polynom) return Polynom renames Polynoms_Ops.NumInv;
  function NumFixComp3(Err: Radius; H: Polynom) return Polynom renames Polynoms_Ops.NumFixComp3;
  function NumInvAplus1(Err: Radius; L: Degrees; Hdq,Hdp,F: Polynom) return Polynom renames Polynoms_Ops.NumInvAplus1;

end Numerics.Ops.Fou;