I have a system of two linear differential equations, where the initial conditions depend on a parameter. I want to find the value for this parameter $\lambda$ such that the solution evaluated in one particular point $x_0$ takes some value (in particular, the quotient between the components of the solution vector).
In order to achieve this, I have build a function that admits as input a value for this parameter $\lambda$, uses it to solve the system and then returns the value at the desired point $x_0$. I called this, solver[lambda].
So I was wondering if I could use FindRoot in the followoing way
FindRoot[solver[lambda]-value,{lambda,lambdaInit}]
where value is the value I want and lambdaInit is an initial value for $\lambda$ that I know is close to the desired one.
Does this make sense? Maybe depending on the method applied by FindRoot?
ParametricNDSolve, which returns a family of solutions to the differential equations parameterized by some quantity, which in your case would be $\lambda$. That way, you get a function back that can be used insideFindRoot. – march Sep 20 '16 at 17:12