for a university project I am designing a hypersonic gliding vehicle or wave rider. The geometry is based on 4 planes, as shown here.
2 upper surfaces and 2 lower surfaces such that it forms a caret shape, with the upper surfaces at 0 degrees to the flow.
I have written some python code which defines the points (front tip, left and right wing tips and the rear points) based on vehicle parameters. I need to calculate the angles of these planes to the flow. I have tried using the dot product of the plane normals and the flow vector, which gives an answer different to that expected.
Here, the normal should be 0.1 rad, same as was defined in the parameters, however the plane normal is calculated as ~0.075 rad. However, if I change the code such that the y-component of the plane normal is ignored then the angle is correctly calculated including any pitch rotation, shown below. The signs are off but that's a different problem.
So, with that working I add a yaw rotation to the vehicle. In the image below you can see that adding a yaw rotation has changed the angle.
However, as I am looking at shocks generated, the pitching angle should remain the same, with the same shocks, but now with shocks generated on the side of the vehicle.
I need some way of finding the pitched, yawed and rolled angles of these planes separately. I've tried using the cross product of the planes with the flow vector but this didn't work either.
Hope my question makes sense. Many thanks



