I am trying to find all the solutions of an equation that contains an interpolation function int, where int=Interpolation[data] (the interpolation of some data I have).
When I tried to use Reduce such as:
Reduce[int''[x] == 0, {x}]
I get an error saying "Reduce::inex: Reduce was unable to solve the system with inexact coefficients or the system obtained by direct rationalization of inexact numbers present in the system. Since many of the methods used by Reduce require exact input, providing Reduce with an exact version of the system may help.".
The same is true if I use NSolve as NSolve[int''[x] == 0, x]
Question:
How can I use Reduce when my input is an interpolation function?
Reducewon't work with interpolated functions.NSolveshould work like you said, so without seeing the data I can't say why it didn't work.NSolvewill likely only return a subset of the solutions.FindRootcan be used to find all solutions, but you need to know where they are, roughly. See this question on finding all of them automatically. – imas145 Jun 19 '20 at 07:01Piecewisepolynomial. – Michael E2 Jun 19 '20 at 23:35MeshFunctionsoption ofPlot[], or useNDSolve[]withWhenEvent[]to seek roots. – J. M.'s missing motivation Jul 09 '20 at 12:22