def __init_wing_param(self): OC=OperatingCondition('cond1') OC.set_Mach(0.8) OC.set_AoA(3.5) OC.set_altitude(10000.) OC.set_T0_deg(15.) OC.set_P0(101325.) OC.set_humidity(0.) OC.compute_atmosphere() wing_param=Wing_param('test_param',geom_type='Broken',n_sect=20) wing_param.build_wing() wing_param.set_value('span',34.1) wing_param.set_value('sweep',34.) wing_param.set_value('break_percent',33.) wing_param.set_value('root_chord',6.1) wing_param.set_value('break_chord',4.6) wing_param.set_value('tip_chord',1.5) wing_param.set_value('root_height',1.28) wing_param.set_value('break_height',0.97) wing_param.set_value('tip_height',0.33) wing_param.convert_to_design_variable('span',(10.,50.)) wing_param.convert_to_design_variable('sweep',(0.,40.)) wing_param.convert_to_design_variable('break_percent',(20.,40.)) wing_param.convert_to_design_variable('root_chord',(5.,7.)) wing_param.convert_to_design_variable('break_chord',(3.,5.)) wing_param.convert_to_design_variable('tip_chord',(1.,2.)) wing_param.convert_to_design_variable('root_height',(1.,1.5)) wing_param.convert_to_design_variable('break_height',(0.8,1.2)) wing_param.convert_to_design_variable('tip_height',(0.2,0.5)) wing_param.build_linear_airfoil(OC, AoA0=-2., Cm0=-0.1, set_as_ref=True) wing_param.build_airfoils_from_ref() wing_param.update() return OC,wing_param
def __init_OC(self): OC = OperatingCondition('cond1') OC.set_Mach(0.7) OC.set_AoA(3.0) OC.set_altitude(5000.) OC.set_T0_deg(20.) OC.set_P0(101325.) OC.set_humidity(0.) OC.compute_atmosphere() return OC
def __init_wing_param(self): OC = OperatingCondition('cond1') OC.set_Mach(0.8) OC.set_AoA(3.5) OC.set_altitude(10000.) OC.set_T0_deg(15.) OC.set_P0(101325.) OC.set_humidity(0.) OC.compute_atmosphere() wing_param = Wing_param('test_param', geom_type='Broken', n_sect=20) wing_param.build_wing() wing_param.set_value('span', 34.1) wing_param.set_value('sweep', 34.) wing_param.set_value('break_percent', 33.) wing_param.set_value('root_chord', 6.1) wing_param.set_value('break_chord', 4.6) wing_param.set_value('tip_chord', 1.5) wing_param.set_value('root_height', 1.28) wing_param.set_value('break_height', 0.97) wing_param.set_value('tip_height', 0.33) wing_param.convert_to_design_variable('span', (10., 50.)) wing_param.convert_to_design_variable('sweep', (0., 40.)) wing_param.convert_to_design_variable('break_percent', (20., 40.)) wing_param.convert_to_design_variable('root_chord', (5., 7.)) wing_param.convert_to_design_variable('break_chord', (3., 5.)) wing_param.convert_to_design_variable('tip_chord', (1., 2.)) wing_param.convert_to_design_variable('root_height', (1., 1.5)) wing_param.convert_to_design_variable('break_height', (0.8, 1.2)) wing_param.convert_to_design_variable('tip_height', (0.2, 0.5)) wing_param.build_meta_airfoil(OC, '../examples/MetaModelFixed.xml', relative_thickness=.12, camber=0., Sref=1., Lref=1., sweep=.0, set_as_ref=True) wing_param.build_airfoils_from_ref() wing_param.update() return OC, wing_param
# 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, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # http://github.com/TBD # from DLLM.DLLMGeom.wing_param import Wing_param from MDOTools.OC.operating_condition import OperatingCondition import numpy import string OC=OperatingCondition('cond1') OC.set_altitude(3000.) OC.set_T0_deg(15.) OC.set_P0(101325.) OC.set_humidity(0.) nsect=50 wing_param=Wing_param('test_param',geom_type='Elliptic',n_sect=nsect) wing_param.set_distrib_type('cos_law') wing_param.build_wing() wing_param.set_value('span',40.) wing_param.set_value('root_chord',4.) wing_param.set_value('root_height',0.0) wing_param.set_value('tip_height',0.0)
def __config_OC(self): self.__OC = OperatingCondition(self.__tag+'.OC') self.__OC.config_from_dict(self.__config_dict)
# 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, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # http://github.com/TBD # # Imports import numpy from DLLM.DLLMGeom.wing_param import Wing_param from DLLM.DLLMKernel.DLLMTargetLift import DLLMTargetLift from MDOTools.OC.operating_condition import OperatingCondition OC = OperatingCondition('cond1', atmospheric_model='ISA') OC.set_Mach(0.8) OC.set_AoA(3.5) OC.set_altitude(10000.) OC.set_T0_deg(15.) OC.set_P0(101325.) OC.set_humidity(0.) OC.compute_atmosphere() wing_param = Wing_param('test_param', geom_type='Broken', n_sect=40) wing_param.build_wing() wing_param.set_value('span', 34.1) wing_param.set_value('sweep', 34.) wing_param.set_value('break_percent', 33.) wing_param.set_value('root_chord', 6.1) wing_param.set_value('break_chord', 4.6)
# 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, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # http://github.com/TBD # # Imports from DLLM.DLLMGeom.wing_param import Wing_param from DLLM.DLLMKernel.DLLMSolver import DLLMSolver from MDOTools.OC.operating_condition import OperatingCondition import numpy import string OC = OperatingCondition('cond1', atmospheric_model='simple') #OC.set_Mach(0.8) #OC.set_Mach(0.6) #OC.set_AoA(3.5) AoA_list = [float(xx) for xx in range(0, 10)] #Mach_list = [float(xx)/10. for xx in range(3, 9)] Mach_list = [0.3, 0.6, 0.8] OC.set_altitude(10000.) OC.set_T0_deg(15.) OC.set_P0(101325.) OC.set_humidity(0.) wing_param = Wing_param('test_param', geom_type='Broken', n_sect=20) wing_param.build_wing() wing_param.set_value('span', 2.392)