Finding the initial conditions which give a specified event using ode45
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
I'm using ode45 to solve a system of ODEs which describe the movement of a projectile. I now want to find the initial angle which will result in the projectile crossing the x-axis at a specified point x. Is this possible? I was thinking of some sort of iteration method which tests out different angles until it finds one that works, but I need the angle to 8 significant figures, so I feel as if this would result in a lot of iterations.
1 comentario
Walter Roberson
el 11 de En. de 2021
This is a Boundary Value Problem; https://www.mathworks.com/help/matlab/math/boundary-value-problems.html
Respuestas (1)
Mischa Kim
el 11 de En. de 2021
Patrick,
as Walter pointed out this is a BVP. However, you can and I personally would use ode45 and the so-called shooting method to solve this problem. I recommend taking a step-by-step approach:
- First solve the differential equation of the projectile without worrying about x-axis crossing or how to manipulate the initial angle.
- Next use an events function to identify the x-axis crossing. Here is an example that may be helpful.
- Once you get this to work implement the shooting method. These are a few more lines of code, and this is where you (MATLAB) would do the iterations you are referring to in your question.
Feel free to share your code if you have more questions.
0 comentarios
Ver también
Categorías
Más información sobre Ordinary Differential Equations en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!