def joukowsky(cls, m=-0.1 + 0.1j, numpoints=100): from paraBEM.airfoil.conformal_mapping import JoukowskyAirfoil airfoil = JoukowskyAirfoil(m) profile = [[c.real, c.imag] for c in airfoil.coordinates(numpoints)] # find the smallest xvalue to reset the nose x = numpy.array([i[0] for i in profile]) profile = cls(profile, "joukowsky_" + str(m)) profile.normalize(numpy.where(x == min(x))[0][0]) profile.normalize() profile.numpoints = numpoints return profile