Class Series<T extends Ring<T>>

java.lang.Object
org.episteme.core.mathematics.symbolic.Series<T>

public class Series<T extends Ring<T>> extends Object
Represents a power series Σ aₙxⁿ.

A power series is an infinite series of the form: f(x) = a₀ + a₁x + a₂x² + a₃x³ + ...

This implementation supports: - Truncated series (finite number of terms) - Taylor and Maclaurin expansions - Series arithmetic (addition, multiplication) - Evaluation at a point

Since:
1.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
  • Constructor Details

    • Series

      public Series(List<T> coefficients, T center, Ring<T> ring)
      Creates a power series with given coefficients.
      Parameters:
      coefficients - the series coefficients [a₀, a₁, a₂, ...]
      center - the expansion center (xâ‚€)
      ring - the ring structure
    • Series

      public Series(List<T> coefficients, T center, Ring<T> ring, Real convergenceRadius)
      Creates a power series with given coefficients and convergence radius.
      Parameters:
      coefficients - the series coefficients [a₀, a₁, a₂, ...]
      center - the expansion center (xâ‚€)
      ring - the ring structure
      convergenceRadius - the radius of convergence
  • Method Details

    • maclaurin

      public static <T extends Ring<T>> Series<T> maclaurin(List<T> coefficients, Ring<T> ring)
      Creates a Maclaurin series (expansion around xâ‚€ = 0).
      Type Parameters:
      T - the type
      Parameters:
      coefficients - the series coefficients
      ring - the ring structure
      Returns:
      the Maclaurin series
    • exp

      public static Series<Real> exp(int order)
      Creates a Taylor series for exp(x) = 1 + x + x²/2! + x³/3! + ...
      Parameters:
      order - the number of terms
      Returns:
      the Taylor series for exp(x)
    • sin

      public static Series<Real> sin(int order)
      Creates a Taylor series for sin(x) = x - x³/3! + x⁵/5! - ...
      Parameters:
      order - the number of terms
      Returns:
      the Taylor series for sin(x)
    • cos

      public static Series<Real> cos(int order)
      Creates a Taylor series for cos(x) = 1 - x²/2! + x⁴/4! - ...
      Parameters:
      order - the number of terms
      Returns:
      the Taylor series for cos(x)
    • taylor

      public static Series<Real> taylor(DifferentiableFunction<Real,Real> f, Real a, int order)
      Creates a Taylor series for a differentiable function around a point a. f(x) = f(a) + f'(a)(x-a) + f''(a)(x-a)²/2! + ...
      Parameters:
      f - the function to expand
      a - the expansion point
      order - the number of terms
      Returns:
      the Taylor series
    • add

      public Series<T> add(Series<T> other)
      Adds two series.
      Parameters:
      other - the other series
      Returns:
      this + other
    • multiply

      public Series<T> multiply(Series<T> other)
      Multiplies two series (Cauchy product).
      Parameters:
      other - the other series
      Returns:
      this * other
    • evaluate

      public T evaluate(T x)
      Evaluates the series at a given point.
      Parameters:
      x - the point to evaluate at
      Returns:
      the series value at x
    • derivative

      public Series<T> derivative()
      Returns the derivative of this series.
      Returns:
      the derivative series
    • integral

      public Series<T> integral()
      Returns the integral of this series (with constant of integration = 0).
      Returns:
      the integral series
    • order

      public int order()
      Returns the number of terms in this series.
      Returns:
      the number of terms
    • getCoefficient

      public T getCoefficient(int n)
      Returns the coefficient of xⁿ.
      Parameters:
      n - the power
      Returns:
      the coefficient
    • getCenter

      public T getCenter()
      Returns the expansion center.
      Returns:
      the center
    • getConvergenceRadius

      public Real getConvergenceRadius()
      Returns the radius of convergence.
      Returns:
      the convergence radius
    • toString

      public String toString()
      Overrides:
      toString in class Object