Hi,
I’m working on a long term project where I want to automate OpenVSP + VSPAERO for parametric geometry sweeps. Right now I’m just trying to change span automatically.
What I’m doing is pretty simple I read a .vsp3 as text in MATLAB, replace the TotalProjectedSpan value, and write out a new .vsp3.

what has happened though is when I open the edited file in OpenVSP, the span changes but not to what I typed. The original span is 18. If I set TotalProjectedSpan to 21 in the file, OpenVSP shows 19.4422. If I set it to 22, OpenVSP shows 19.89975. So it’s definitely responding, but it isn’t sticking to the value I set. Is TotalProjectedSpan not the right parameter for the span I’m looking at in the GUI?
Also, when OpenVSP opens the edited .vsp3 I get an Unknown I/O error. Could that be something on the MATLAB side like how I’m writing the file, or is there a common reason OpenVSP gives an I/O error when a .vsp3 was edited outside the program?
Longer term, if I’m doing this for a real automation/optimization workflow, should I stop editing the XML directly and use the OpenVSP API to set parameters and save instead? And if the API is the right way, is Python basically what I should be using for this vs MATLAB? I can learn Python if that’s what makes the most sense, I don't want to get into the weeds with this and then realize I need to do it a different way.
Thanks,
Nate Carr
Hi Rob and Brandon,
Thanks, this helps a lot. I’ll stop editing the .vsp3 directly and use the .des workflow for simple sweeps, then VSPSCRIPT/Python for the larger automation . Also appreciate the per panel span tip and the links/resources.
Best,
Nate