SDPMflut version 0.8

This is a set of Python and C codes to perform aerodynamic and aeroelastic analysis on wings using the compressible unsteady Source and Doublet Panel Method (SDPM) and the compressible unsteady Doublet Lattice Method (DLM). For more information on the SDPM see references 1-5. For more information on the DLM see references 6-9.

The distribution contains the following directories:
-Common: Contains common files used for all test cases.
-AGARD445_6: Flutter solution for the weakened AGARD 445.6 wing described in reference 10.
-NACARMA51G31: Steady aerodynamic solution for the swept and tapered wing described in reference 11.
-NASATMX72799: Flutter solution for the flat plate swept wing with and without winglets described in reference 12. 
-NASATND344: Steady and unsteady pressure calculation for the rectangular wing forced to oscillate in reference 13.
-NASATM84367: Steady pressure calculation for the swept wing described in reference 14.
-PAPA: Flutter solution for the rectangular NACA 0012, NACA 64A010 and BSCW 
 wings tested by NASA on the Pitch and Plunge Apparatus (PAPA) described in references 15-17.  
-T-tail: Flutter solution for the rectangular Van Zyl T-tail described in reference 18.  
-NACARML5: Calculation of aerodynamic stability derivatives for a straight tapered wing, a swept tapered wing and a delta wing, described in references 19-21.
-Theodorsen: Flutter solution for a 2D infinitely thin flat plate airfoil with pitch and plunge degrees of freedom at incompressible conditions and comparison to Theodorsen theory results, reference 22.
-Clipped Delta: Steady and unsteady pressure distributions on a clipped delta wing forced to oscillate in pitch, described in refence 23. 
-LANN: Steady and unsteady pressure distributions on the LANN wing forced to oscillate in pitch, described in refence 24. 
-NACARML52A29: Steady aerodynamic loads on three wing-fuselage combinations, described in reference 25.
-NACARML55E11: Flutter solution for an untapered swept wing, described in reference 26.
-NASATP2990: Steady aerodynamic loads acting on a rectangular wing with a high-lift airfoil, described in reference 27.
-NLR7301: Steady and unsteady pressure distributions on the NLR7301 airfoil force to oscillate in pitch, described in reference 24. 

Installation:
1. Unzip the SDPMflut_v0.8.zip file, place anywhere in your file space, then edit the line starting with install_dir= in AGARD445_6/flutter_*_AGARD.py, NACARMA51G31/steady_*_NACARMA51G31.py, NASATMX72799/flutter_*_NASATMX72799.py, NASATND344/unsteady_*_NASATND344.py, NASATM84367/steady_*_NASATM84367.py, PAPA/flutter_*_NACA0012.py, PAPA/flutter_*_BSCW.py, PAPA/flutter_*_NACA64A010.py, T_tail/flutter_*_Ttail.py, NACARML5/unsteady_*_straight.py, NACARML5/unsteady_*_swept.py, NACARML5/unsteady_*_delta.py, Theodorsen/flutter_*_Theodorsen.py, etc., where * stands for SDPM or DLM. You need to give the absolute path to the Common directory, as installed on your system. 
2. Compile the C codes sdpminfso.c and sdpminf_unsteady_subsonicso.c found in directory Common. At the terminal type:
cc -fPIC -shared -o sdpminfso.so sdpminfso.c
cc -fPIC -shared -o sdpminf_unsteadyso.so sdpminf_unsteadyso.c
cc -fPIC -shared -o dlminf_nonplanarso.so dlminf_nonplanarso.c
cc -fPIC -shared -o find_intersectionsso.so find_intersectionsso.c
If you do not have a C compiler, you need to install one that is compatible with your system architecture. 

3. Run the codes:
- For the AGARD wing:
  Run AGARD445_6/flutter_SDPM_AGARD.py or AGARD445_6/flutter_DLM_AGARD.py
- For the NACA RM RM A51G31 wing:
  Run NACARMA51G31/flutter_SDPM_ NACARMA51G31.py or NACARMA51G31/flutter_DLM_ NACARMA51G31.py
- For the NASA TM X-72799 wing:
  Run NASATMX72799/flutter_SDPM_NASATMX72799.py or NASATMX72799/flutter_DLM_NASATMX72799.py
- For the NASA TN D344 wing:
  Run NASATND344/unsteady_SDPM_NASATND344.py or NASATND344/unsteady_DLM_NASATND344.py
- For the NASA TM 84367 wing:
  Run NASATM84367/steady_SDPM_NASATM84367.py or NASATM84367/steady_DLM_NASATM84367.py
- For the PAPA wings:
  Run PAPA/flutter_SDPM_NACA0012, PAPA/flutter_DLM_NACA0012, PAPA/flutter_SDPM_BSCW, PAPA/flutter_DLM_BSCW, PAPA/flutter_SDPM_NACA64A010 or PAPA/flutter_DLM_NACA64A010
- For the T-tail:
  Run T_tail/flutter_SDPM_Ttail.py or T_tail/flutter_DLM_Ttail.py
- For the NACA RML5 wings:
  Run NACARML5/unsteady_SDPM_straight.py, NACARML5/unsteady_SDPM_swept.py or NACARML5/unsteady_SDPM_delta.py
- For the Theodorsen pitch-plunge wing:
  Run Theodorsen/flutter_SDPM_Theodorsen.py or Theodorsen/flutter_DLM_Theodorsen.py
- Similarly for the other test cases.

Copyright (C) 2024-2026 Grigorios Dimitriadis 
 
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.

References:
1. Dimitriadis, G., Unsteady Aerodynamics - Potential and Vortex Methods, Wiley, 2023, https://doi.org/10.1002/9781119762560.
2. Martínez, M. S. and Dimitriadis, G., Subsonic source and doublet panel methods, Journal of Fluids and Structures, Vol. 113, 2022, pp. 103624, https://doi.org/10.1016/j.jfluidstructs.2022.103624.
3. Dimitriadis, G., Kilimtzidis, S., Kostopoulos, V., Laraspata and V. Soria, L., Flutter Calculations Using the Unsteady Source and Doublet Panel Method, Journal of Aircraft, Article in Advance, 13 November 2024, https://doi.org/10.2514/1.C037891.
4. Dimitriadis, G., Panagiotou, P., Dimopoulos, T., and Yakinthos, K., Prediction of aerodynamic loads and stability derivatives using the unsteady Source and Doublet Panel Method for BWB configurations, Proceedings of the AIAA Scitech 2024 Forum, Orlando, FL, Jan. 2024.
5. Dimitriadis, G., Kilimtzidis, S., Kostopoulos, V., Laraspata, V., and Soria, L., Application of the unsteady compressible source and doublet panel method to flutter calculations, Proceedings of the International Forum on Aeroelasticity and Structural Dynamics, IFASD 2024, The Hague, Netherlands, June 2024.
6. Blair, M. (1994). A compilation of the mathematics leading to the doublet-lattice method. Final Report WL-TR-95-3022, Air Force Wright Laboratory.
7. Demasi, L. (2024). Introduction to Unsteady Aerodynamics and Dynamic Aeroelasticity. Springer.
8. Giesing, J. P., Kalman, T. P., and Rodden, W. P. (1971). Subsonic unsteady aerodynamics for general configurations. part I, volume I - direct application of the nonplanar doublet-lattice method. Technical Report AFFDL-TR-71-5, Air Force Flight Dynamics Laboratory.
9. Voß, A. (2020). An implementation of the vortex lattice and the doublet lattice method version 1.05. Report DLR-IB-AE-GO-2020-137, Deutsches Zentrum für Luft- und Raumfahrt.
10. E.Carson Yates, Jr, AGARD Standard Aeroelastic Configurations for Dynamic Response I -Wing 445.6, AGARD REPORT No.765, 1985
11. C. D. Kolbe and F. W. Boltz, The forces and pressure distribution at subsonic speeds on a plane wing having 45o of sweepback, an aspect ratio of 3, and a taper ratio of 0.5, NACA Research Memorandum RM A51G31, October 1951.
12. R. V. Doggett, Jr and M. G. Farmer, A preliminary study of the effects of vortex diffusers (winglets) on wing flutter, NASA TMX 72799, 1975
13. H. C. Lessing, J. L. Troutman and G. P. Menees, Experimental determination of the pressure distribution on a rectangular wing oscillating in the first bending mode for Mach numbers from 0.24 to 1.3, NASA TN D-344, 1960
14. W. K. Lockman and H. Lee Seegmiller, An experimental investigation of the subcritical and supercritical flow about a swept semispan wing, NASA TM 84367, 1983.
15. Bryan E. Dansberry et al, Experimental unsteady pressures at flutter on the supercritical wing benchmark model. AIAA-93-1592-CP, pp. 2504-2514. 
16. Test Cases for Flutter of the Benchmark Models Rectangular Wings on the Pitch and Plunge Apparatus. Robert M. Bennett. Defense Technical Information Center Compilation Part Notice ADPO10713.
17. J. A. Rivera, Jr., et al., Pressure measurements on a rectangular wing with a NACA0012 airfoil during conventional flutter. NASA Technical Memorandum 104211. July 1992.
18. J. Murua et al, T-tail flutter: Potential-flow modelling, experimental validation and flight tests, Progress in Aerospace Sciences, Vol 71, 2014, pp. 54–84.
19. D. R. Riley et al., Experimental determination of the aerodynamic derivatives arising from acceleration in sideslip for a triangular, a swept, and an unswept wing, NACA RM L55A07, 1955.
20. M. J. Queijo et al., Preliminary measurements of the aerodynamic yawing derivatives of a triangular, a swept, and an unswept wing performing pure yawing oscillations, with a description of the instrumentation employed, NACA RM L55L14, 1957.
21. J. H. Lichtenstein et al., Low-speed investigation of the effects of frequency and amplitude of oscillation in sideslip on the lateral stability derivatives of a 60o Delta wing, 45o degree sweptback wing, and an unswept wing, NACA RM L58B26, 1958.
22. T. Theodorsen, General theory of aerodynamic instability and the mechanism of flutter, NACA Report 496, 1935.
23. R. W. Hess, F. W. Cazier, Jr. and E. C. Wynne, Steady and Unsteady Transonic Pressure Measurements on a Clipped Delta Wing for Pitching and Control Surface Oscillations, NASA-TP-2594, 1988.
24. Compendium of unsteady aerodynamic measurements, AGARD Report 702, 1982.
25. R. E. Kuhn and J. W. Wiggins, Wind tunnel investigation of the aerodynamic characteristics in pitch of wing-fuselage combinations at high subsonic speeds, NACA RM L52A29
26. W.J. Tuovila and J.L. McCarty, Experimental flutter results for cantilever-wing models.  NACA RM L55E11. June 14, 1955.
27. Z. T. Applin and G. L. Gentry, Jr., Experimental and Theoretical Aerodynamic Characteristics of a High-Lift Semispan Wing Model, NASA TP 2990, 1990.
