DSolveValue
Solves a linear, constant-coefficient ODE of order 1 or 2 for Y(x), with optional initial conditions.
✓ checked against that system · ! checked, with disagreements (hover a chip)Wolfram Language
DSolveValue✓DSolveValue(eqn, Y(x), x)the general solution, with arbitrary constants C(1) (and C(2) for order 2).DSolveValue({eqn, ic1, ic2, ...}, Y(x), x)the particular solution satisfying the stated initial conditions.Typed signatures
| Type | Package | Applies |
|---|---|---|
(expression, expression, symbol) -> expression | analytic | always |
Details
Y'/Y''are written the way compute-engine itself represents an undifferentiated function's derivative --D(Y(x), x)/D(Y(x), x, x)(boxing toApply(Derivative(Y, n), x)) -- no new notation introduced. An initial condition is the same shape applied at a NUMBER instead ofx:Equal(D(Y(x), x), b)atx=0isEqual(Apply(Derivative(Y, 1), 0), b)for . Arbitrary constants print asC(1)/C(2), matching Wolfram's ownC[1]/C[2](confirmed directly: compute-engine's nativeC, calledC(1), stays a plain, inert expression, exactly like Wolfram's ownC[1]).- Homogeneous part: the characteristic polynomial's roots -- a single real root (order 1); two distinct real roots; a repeated real root (); or a complex-conjugate pair ().
- Nonhomogeneous part, by undetermined coefficients, ONE forcing shape at a time (not sums of different shapes): a polynomial in
x(any degree), , or . Each gets times its own trial basis,s= how many times the forcing's own characteristic value already appears as a homogeneous root (the standard resonance bump) -- confirmed againstwolframscript's ownDSolveValuefor every case below, matching up to relabeling which root getsC(1)vsC(2). - Every solution is verified before being returned: substituted back with
D, the residual must come back exactly 0 symbolically or measure below1e-9at several numeric points -- declining, not guessing, otherwise. - Declined: order > 2; a non-constant or non-numeric-literal coefficient (including a leading coefficient of 0); a nonlinear term (, , ...); forcing that mixes shapes or isn't one of the three above; and initial conditions at anything but a plain real-number point.
- Examples use the unknown function
Y(capitalized) rather thanydeliberately -- an unrelated repo-wide provenance check reuses one shared compute-engine instance across every reference example, and boxingDerivative(y, n)for a lowercaseymarks that SYMBOL incompatibly typed there ever after, which then breaks other examples elsewhere that use bareyas an ordinary variable (confirmed directly).Yavoids the collision; the head itself takes any function name.
Examples
Scope #
About
| Examples | 5 |
|---|---|
| Checked against | Wolfram Language 4 agree1 unevaluated |
| Crosswalk | Wolfram Language |
Implementation
primitive · kernela kernel — an algorithm over mutable state that would not be readable as a tree
nativeengine
typescriptpackages/symbols/analysis/analytic/src/dsolve.ts See also: SeriesCoefficient, CaputoD