# -*- coding: utf-8 -*- """ Created on Mon Apr 9 18:14:52 2018 @author: kassi """ import numpy as np import matplotlib.pyplot as plt import xlrd workbook = xlrd.open_workbook('Airfoil data.xlsx', on_demand = True) for i in range (50): xup = [] yup = [] xlow = [] ylow = [] xup1 = [] xlow1 = [] yup1 = [] ylow1 = [] xup2 = [] xlow2 = [] yup2 = [] ylow2 = [] xup3 = [] xlow3 = [] yup3 = [] ylow3 = [] xup4 = [] xlow4 = [] yup4 = [] ylow4 = [] xup5 = [] xlow5 = [] yup5 = [] ylow5 = [] upper1 = [] lower1 = [] upper2 = [] lower2 = [] upper3 = [] lower3 = [] upper4 = [] lower4 = [] upper5 = [] lower5 = [] worksheet = workbook.sheet_by_index(i-1) for rowx in range(1, worksheet.nrows): #dividing the data for polyfit on upper surface if worksheet.cell(rowx,0).value <= 0.2: xup1.append(worksheet.cell(rowx,0).value) yup1.append(worksheet.cell(rowx,1).value) if (worksheet.cell(rowx,0).value <= 0.4 and worksheet.cell(rowx,0).value >= 0.2): xup2.append(worksheet.cell(rowx,0).value) yup2.append(worksheet.cell(rowx,1).value) if (worksheet.cell(rowx,0).value <= 0.6 and worksheet.cell(rowx,0).value >= 0.4): xup3.append(worksheet.cell(rowx,0).value) yup3.append(worksheet.cell(rowx,1).value) if (worksheet.cell(rowx,0).value <= 0.8 and worksheet.cell(rowx,0).value >= 0.6): xup4.append(worksheet.cell(rowx,0).value) yup4.append(worksheet.cell(rowx,1).value) if (worksheet.cell(rowx,0).value <= 1.0 and worksheet.cell(rowx,0).value >= 0.8): xup5.append(worksheet.cell(rowx,0).value) yup5.append(worksheet.cell(rowx,1).value) #dividing the data for polyfit on lower surface if worksheet.cell(rowx,2).value <= 0.2: xlow1.append(worksheet.cell(rowx,2).value) ylow1.append(worksheet.cell(rowx,3).value) if (worksheet.cell(rowx,2).value <= 0.4 and worksheet.cell(rowx,2).value >= 0.2): xlow2.append(worksheet.cell(rowx,2).value) ylow2.append(worksheet.cell(rowx,3).value) if (worksheet.cell(rowx,2).value <= 0.6 and worksheet.cell(rowx,2).value >= 0.4): xlow3.append(worksheet.cell(rowx,2).value) ylow3.append(worksheet.cell(rowx,3).value) if (worksheet.cell(rowx,2).value <= 0.8 and worksheet.cell(rowx,2).value >= 0.6): xlow4.append(worksheet.cell(rowx,2).value) ylow4.append(worksheet.cell(rowx,3).value) if (worksheet.cell(rowx,2).value <= 1.0 and worksheet.cell(rowx,2).value >= 0.8): xlow5.append(worksheet.cell(rowx,2).value) ylow5.append(worksheet.cell(rowx,3).value) #polynomial calculations coeffup1 = np.polyfit(xup1,yup1,(len(xup1)-1)) coefflow1 = np.polyfit(xlow1,ylow1,(len(xup1)-1)) coeffup2 = np.polyfit(xup2,yup2,(len(xup2)-1)) coefflow2 = np.polyfit(xlow2,ylow2,(len(xup2)-1)) coeffup3 = np.polyfit(xup3,yup3,(len(xup3)-1)) coefflow3 = np.polyfit(xlow3,ylow3,(len(xup3)-1)) coeffup4 = np.polyfit(xup4,yup4,(len(xup4)-1)) coefflow4 = np.polyfit(xlow4,ylow4,(len(xup4)-1)) coeffup5 = np.polyfit(xup5,yup5,(len(xup5)-1)) coefflow5 = np.polyfit(xlow5,ylow5,(len(xup5)-1)) for count in range (10): cinq = np.arange(1,0.8,-1/50) upper5.append(np.polyval(coeffup5, cinq[count])) quatre = np.arange(0.8,0.6,-1/50) upper4.append(np.polyval(coeffup4, quatre[count])) trois = np.arange(0.6,0.4,-1/50) upper3.append(np.polyval(coeffup3, trois[count])) deux = np.arange(0.4,0.2,-1/50) upper2.append(np.polyval(coeffup2, deux[count])) un = np.arange(0.2,0.0,-1/50) upper1.append(np.polyval(coeffup1, un[count])) uno = np.arange(0,0.2,1/50) lower1.append(np.polyval(coefflow1, uno[count])) dos = np.arange(0.2,0.4,1/50) lower2.append(np.polyval(coefflow2, dos[count])) tres = np.arange(0.4,0.6,1/50) lower3.append(np.polyval(coefflow3, tres[count])) quatro = np.arange(0.6,0.8,1/50) lower4.append(np.polyval(coefflow4, quatro[count])) cinqo = np.arange(0.8,1,1/50) lower5.append(np.polyval(coefflow5, cinqo[count])) plt.figure(figsize=(8,8), dpi = 120) plt.plot(un,upper1) plt.plot(deux,upper2) plt.plot(trois,upper3) plt.plot(quatre,upper4) plt.plot(cinq,upper5) plt.plot(uno,lower1) plt.plot(dos,lower2) plt.plot(tres,lower3) plt.plot(quatro,lower4) plt.plot(cinqo,lower5) plt.axis('equal') plt.title(worksheet.cell(0,0).value)