I think it's cute to do a build thread for a computer program, rather than a rocket. I can fantasize about taking the code out into the driveway and spraying on a primer coat or something.
Anyway, I'm working on a program that does aerodynamics calculations for rocketry, and this thread is where I'll document my progress. I've posted bits and pieces in other places and now I'm trying to get organized.
The story so far...
I wrote a fairly simple Panel Method solver about a month ago for computing airflow around a 3D object in Go, to see whether I could make it work.
It kind of worked.
I've been gradually improving it ever since, trying to make it good enough to be useful for things like CP estimates for rocket designs.
Now I'm trying to get more systematic about working on it.
The current User Interface (if it can be dignified with such a name) goes something like this:
1. You type a text file which describes the rocket geometry. There's an example attached to this post.
2. You run the program from a command line, and it thinks a while and spits out some text which might have hidden in it some actual aerodynamics results, like this:
3. You also get out a folder full of files that are a webpage displaying the results as a 3D rendering, which looks like this can be rotated around live to get a better look at things:
And then you stare at that until you attain enlightenment.
I'm keeping the code on GitHub: https://jlassahn.github.io/aerodynamics/
Next steps include putting the useful parts of the output into the webpage in readable form with correct units so I don't have to drive myself nuts finding results and converting them with a calculator.
Anyway, I'm working on a program that does aerodynamics calculations for rocketry, and this thread is where I'll document my progress. I've posted bits and pieces in other places and now I'm trying to get organized.
The story so far...
I wrote a fairly simple Panel Method solver about a month ago for computing airflow around a 3D object in Go, to see whether I could make it work.
It kind of worked.
I've been gradually improving it ever since, trying to make it good enough to be useful for things like CP estimates for rocket designs.
Now I'm trying to get more systematic about working on it.
The current User Interface (if it can be dignified with such a name) goes something like this:
1. You type a text file which describes the rocket geometry. There's an example attached to this post.
2. You run the program from a command line, and it thinks a while and spits out some text which might have hidden in it some actual aerodynamics results, like this:
Code:
solving 1044 panels
solving done
lift = 0.004 drag = 0.001
force = {-0.004019384 0.00015826232 8.0558493e-10}
torque = {-1.2718715e-10 -5.919676e-11 -0.00040920314}
par = {-9.413501e-05 -0.00053386565 0}
perp = {-0.003925249 0.000692128 8.0558493e-10}
strength = 2.2407057e-05
map[Body:{-5.735272e-05 0 -8.7538865e-12} Fins:{-0.0037655758 0.00023054832 6.5324457e-10} Nose:{-0.00025628772 2.772361e-05 -3.657874e-10} Tail:{-9.520942e-05 -4.4910586e-05 3.1081981e-10} TipBody:{0.00010766924 0 2.564775e-10} TipNose:{-0.00015274544 2.4437386e-05 -4.570211e-11} TipTail:{0.00020011759 -7.953635e-05 -4.3564796e-10}]
residual force = {0 0 -4.2081183e-10}
Force Perp = {-0.004019384 0.00015826232 1.2263968e-09}
Cp offset = {-0.0040024393 -0.10164984 1.5949047e-08}
Cp = {-0.0040024393 -0.10164984 1.5949047e-08}
Cd = 0.002760902
3. You also get out a folder full of files that are a webpage displaying the results as a 3D rendering, which looks like this can be rotated around live to get a better look at things:
And then you stare at that until you attain enlightenment.
I'm keeping the code on GitHub: https://jlassahn.github.io/aerodynamics/
Next steps include putting the useful parts of the output into the webpage in readable form with correct units so I don't have to drive myself nuts finding results and converting them with a calculator.