Is there a way to program a fixed wing UAV using ArduPlane to fly an ascending spiral about a fixed location up to some maximum altitude and then descend in a similar spiral? I realize that I could define an approximation of such a spiral with a long list of waypoints with changing altitudes, but I’m hoping for a more elegant solution.
yes, you can use the NAV_LOITER_TO_ALT mission commands. They take a position and an altitude and will spiral up/down till the desired altitude is reached.
I suggest you experiment in SITL to get used to using them.