已编译的python模块的精简版xrotor

xrotor的Python项目详细描述


一般

这是XRotor的精简版。所有的修改、设计和图形功能 已被移除。此精简版中提供的主菜单选项只有:

  • Oper,允许计算给定工作条件下的性能特性;
  • 弯曲,用于计算结构荷载和变形;
  • nois,用于计算声学特征;
  • 加载,从磁盘加载螺旋桨定义文件;
  • save,将螺旋桨定义文件保存到磁盘;和
  • disp,在屏幕上显示当前螺旋桨特性数据。

构建和安装python模块

要成功构建和安装python模块,系统上必须具备一些先决条件。首先, 当然,python的工作安装是必需的。该模块以Python3为目标,不支持Python2。 此外,C和Fortran的工作编译器必须安装在路径上。在windows上,构建和 安装只测试了mingw,使用gcc和gfortran。

然后,安装Xrotor应该和运行一样简单:

pip install xrotor

或者,从下载的存储库的根目录:

pip install .

在windows上,您可能必须强制系统使用mingw。为此,请在中创建名为distutils.cfg的文件 PYTHONPATH\Lib\distutils包含以下内容:

[build]compiler=mingw32

如果不能为python环境创建此文件,也可以强制使用mingw 调用pip时直接调用:

pip install --global-option build_ext --global-option --compiler=mingw32 xrotor

使用模块

所有的xrotor操作都是使用XRotor类执行的。所以使用这个模块的第一步是创建 此类的实例:

>>> fromxrotorimportXRotor>>> xr=XRotor()

如果这不会产生任何错误,安装程序应该正常运行。 测试用例与模块一起安装。要在xrotor中运行它,请在同一python中执行以下命令 控制台:

>>> fromxrotor.modelimportCase>>> fromxrotor.testimportcase>>> xr.case=Case.from_dict(case)>>> xr.operate(1,2000) Iter     dGmax  @Imax    gGrms       Av        Aw         Be       rlx   1    0.397E-01    1   0.167E-02    0.1553    0.1750     9.966    0.2000   2    0.225E-01    1   0.103E-02    0.1553    0.1764     9.966    0.2000   3    0.154E-01    1   0.733E-03    0.1553    0.1776     9.966    0.2000   4    0.116E-01    1   0.559E-03    0.1553    0.1824     9.966    1.0000   5    0.514E-03   29   0.224E-04    0.1553    0.1825     9.966    0.2000   6    0.412E-03   29   0.179E-04    0.1553    0.1825     9.966    1.0000   7    0.227E-05   29   0.742E-07    0.1553    0.1825     9.966    0.2000

这些命令初始化了xrotor中的样本螺旋桨定义,并以2000转/分的固定转速运行。 以前使用过XRotor控制台应用程序的任何人都应该熟悉上一个功能的输出: 这是oper命令的收敛历史。熟悉的解决方案结果也可以用 以下命令:

>>> xr.print_case() =========================================================================== Free Tip Potential Formulation Solution:                                                  Wake adv. ratio:    0.18252 no. blades :  2            radius(m)  :   0.8300     adv. ratio:     0.15532 thrust(n)  :   481.        power(w)   :  0.219E+05   torque(n-m):   105. Efficiency :  0.5929       speed(m/s) :   27.000     rpm        :   2000.000 Eff induced:  0.8510       Eff ideal  :   0.8993     Tcoef      :     0.4981 Tnacel(n)  :     0.0132    hub rad.(m):   0.0600     disp. rad. :    0.0000 Tvisc(n)   :   -15.5982    Pvisc(w)   :  0.615E+04 rho(kg/m3) :   1.22500     Vsound(m/s):  340.000     mu(kg/m-s) : 0.1789E-04 --------------------------------------------------------------------------- Sigma:        NaN                Ct:    0.04658     Cp:    0.03833    j:    0.48795                Tc:    0.49815     Pc:    0.84023  adv:    0.15532  i  r/r   c/r  beta(deg)  cl     Cd    rEx10^6 Mach   effi  effp  na.u/u  1 0.081 0.1458  59.81  0.433   0.0934   0.25  0.090  3.944 0.555   0.000  2 0.108 0.1475  56.04  0.501   0.0799   0.28  0.097  1.343 0.691   0.000  3 0.149 0.1500  50.09  0.602   0.0720   0.32  0.110  1.036 0.782   0.000  4 0.196 0.1527  43.42  0.642   0.0687   0.38  0.127  0.953 0.808   0.000  5 0.244 0.1558  36.98  0.624   0.0620   0.44  0.147  0.933 0.816   0.000  6 0.292 0.1594  31.45  0.581   0.0559   0.52  0.169  0.933 0.811   0.000  7 0.341 0.1634  27.32  0.544   0.0521   0.60  0.191  0.928 0.800   0.000  8 0.388 0.1672  24.38  0.521   0.0495   0.69  0.214  0.914 0.789   0.000  9 0.435 0.1697  22.20  0.506   0.0474   0.77  0.236  0.896 0.781   0.000 10 0.481 0.1699  20.38  0.494   0.0459   0.85  0.258  0.882 0.772   0.000 11 0.526 0.1679  18.76  0.484   0.0450   0.91  0.280  0.875 0.761   0.000 12 0.569 0.1639  17.37  0.476   0.0444   0.95  0.301  0.871 0.749   0.000 13 0.611 0.1583  16.20  0.471   0.0440   0.99  0.322  0.867 0.738   0.000 14 0.652 0.1515  15.24  0.470   0.0438   1.00  0.342  0.864 0.729   0.000 15 0.690 0.1438  14.45  0.471   0.0436   1.00  0.361  0.860 0.722   0.000 16 0.727 0.1356  13.78  0.475   0.0436   0.99  0.380  0.856 0.715   0.000 17 0.762 0.1271  13.22  0.479   0.0438   0.98  0.397  0.853 0.709   0.000 18 0.794 0.1188  12.73  0.483   0.0441   0.95  0.414  0.849 0.702   0.000 19 0.825 0.1106  12.29  0.486   0.0447   0.92  0.429  0.846 0.694   0.000 20 0.853 0.1029  11.91  0.487   0.0455   0.88  0.443  0.843 0.685   0.000 21 0.879 0.0958  11.57  0.485   0.0466   0.84  0.456  0.838 0.673   0.000 22 0.903 0.0892  11.26  0.479   0.0481   0.81  0.468  0.832 0.660   0.000 23 0.924 0.0834  10.99  0.468   0.0501   0.77  0.479  0.824 0.642   0.000 24 0.943 0.0782  10.74  0.450   0.0529   0.74  0.488  0.813 0.618   0.000 25 0.959 0.0738  10.53  0.423   0.0570   0.71  0.496  0.796 0.585   0.000 26 0.972 0.0701  10.35  0.385   0.0635   0.68  0.503  0.775 0.537   0.000 27 0.983 0.0672  10.20  0.335   0.0740   0.66  0.509  0.747 0.467   0.000 28 0.991 0.0651  10.08  0.270   0.0913   0.65  0.513  0.713 0.365   0.000 29 0.997 0.0636  10.01  0.193   0.1177   0.63  0.516  0.675 0.236   0.000 30 0.999 0.0629   9.97  0.125   0.1467   0.63  0.518  0.642 0.123   0.000

如果模块正常工作,则输出应与上面显示的输出匹配。

在撰写本文时,仅有的两种工作模式是固定转速和固定叶距的固定推力。 两者都可以通过对XRotor类的实例调用operate成员函数来调用。第一个论点 此函数指定使用哪种模式:1表示固定转速,如上所示;2表示固定推力 叶片间距。函数的第二个参数指定RPM/推力的值。

有关如何使用api的详细说明,请参阅文档。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
关于JSP转发的java问题   强制Oracle驱动程序向java输出带有时区的时间戳。sql。使用getObject时的时间戳   Java中的配置单元UDF在创建表时失败   eclipse怀疑Java上下文加载器使用不再存在的文件   范围如何为我没有在JavaEE中编写的类定义单例对象?   java Eclipse未启动:JVM已终止。退出代码=14   仅存在于子类中的属性的java别名(Hibernate标准)   Java字符串插入错误   无法打开java@PropertySource,因为它不存在   java从多项目Maven配置生成WAR文件   java Hibernate@Lob注释不再有效:不能用几个字符串超过CLOB的总长度?   java jbutton的鼠标侦听器包含if/else循环阻塞的jvm?   java如何删除最近24小时安卓的通话记录   java Android服务+计数器不工作   java如何获取返回结果的服务器的数据,我希望将该结果更新到另一台服务器   java从javax获得“一切”是可能的。命名。初始上下文?   java Spring云门请求超时不适用于路径   java web应用程序会话缓存   java使用dialogflow的响应通过google助手打开我的应用程序   MongoDB添加createAt updatedAt字段java