Python中的泳动和斯托克斯流体力学

pystokes的Python项目详细描述


Imagel

PyStokes:Python中的phoresis和Stokesian流体力学BinderInstallationNotebooksDocumentation StatusDOIPyPIPython VersionDownloads

About |Blog |News |Installation |Documentation |Examples |Publications |Gallery |Support |License

关于

PyStokes是Python中的phoresis和Stokesian流体力学的一个数值库。它采用无网格方法,结合Laplace和Stokes方程的积分表示、谱展开和Galerkin离散化,来计算具有滑动边界条件的球体之间的相互作用。该库还计算悬浮尺度量,如流变响应、能量耗散和流体流动。计算成本是粒子数的二次方,在多核计算机上最多可容纳1e5个粒子。该库已用于模拟微生物合成自泳粒子自推进液滴的悬浮液。在

在使用PyStokes进行研究之前,请先阅读PyStokespaper和{a19}。以下是PyStokes Gallery中的一些示例:

活动粒子的周期轨道

Image

我们的工作显示了一对活跃粒子的振荡动力学 一个边界,最好的例子是绿藻的迷人舞蹈 Volvox可以用哈密顿力学来理解,即使 系统不能节省能量。在PyStokes Gallery中阅读更多内容。

平面无滑移面上的结晶

众所周知,胶体的结晶近似于硬球 矛盾的是,由于有序晶体状态的熵更高 与无序液态相比。失去平衡,没有这样的普遍性 该原理可使结晶合理化。在这里,我们确定了一种新的非平衡机制,与熵产生而不是熵增益有关,它驱动活性胶体在平面壁附近的结晶。在PyStokes Gallery中阅读更多内容。在

Crystallization of active colloids

新闻

2019年7月26日2019年7月26日-PyStokes可以计算自泳悬浮液中的水动力的相互作用。在

安装

你可以用PyStokes来旋转,而无需安装Binder。装载时请耐心等待。在

从本回购协议的结帐

使用

安装PyStokes和扩展的依赖项列表
>> git clone https://github.com/rajeshrinet/pystokes.git
>> cd pystokes
>> pip install -r requirements.txt
>> python setup.py install
{ha24}s{ha24}s} ^{pr2}$

通过pip

安装最新的PyPI版本

>> pip install pystokes

测试

测试安装和运行

>> cd tests
>> python shortTests.py

示例笔记本的长时间测试

>> cd tests
>> python notebookTests.py

示例

# Example 1: Flow field due to $2s$ mode of active slipimportpystokes,numpyasnp,matplotlib.pyplotasplt# particle radius, self-propulsion speed, number and fluid viscosityb,eta,Np=1.0,1.0/6.0,1# initializer,p=np.array([0.0,0.0,3.4]),np.array([0.0,1.0,0])V2s=pystokes.utils.irreducibleTensors(2,p)# space dimension , extent , discretizationdim,L,Ng=3,10,64;# instantiate the Flow classflow=pystokes.wallBounded.Flow(radius=b,particles=Np,viscosity=eta,gridpoints=Ng*Ng)# create grid, evaluate flow and plotrr,vv=pystokes.utils.gridYZ(dim,L,Ng)flow.flowField2s(vv,rr,r,V2s)pystokes.utils.plotStreamlinesYZsurf(vv,rr,r,offset=6-1,density=1.4,title='2s')
#Example 2: Phoretic field due to active surface flux of l=0 modeimportpystokes,numpyasnp,matplotlib.pyplotasplt# particle radius, fluid viscosity, and number of particlesb,eta,Np=1.0,1.0/6.0,1#initialiser,p=np.array([0.0,0.0,5]),np.array([0.0,0.0,1])J0=np.ones(Np)# strength of chemical monopolar flux# space dimension , extent , discretizationdim,L,Ng=3,10,64;# instantiate the Flow classphoreticField=pystokes.phoreticUnbounded.Field(radius=b,particles=Np,phoreticConstant=eta,gridpoints=Ng*Ng)# create grid, evaluate phoretic field and plotrr,vv=pystokes.utils.gridYZ(dim,L,Ng)phoreticField.phoreticField0(vv,rr,r,J0)pystokes.utils.plotContoursYZ(vv,rr,r,density=.8,offset=1e-16,title='l=0')

其他例子包括

精选出版物

请参阅完整的出版物列表here。在

支持

  • 关于PyStokes的帮助和问题,请发到pystokes-users小组。在
  • 对于错误报告和功能请求,请使用GitHub上的issue tracker。在

许可证

我们相信,开放和分享可以促进科学实践,并增加其利益的范围。此代码在MIT license下发布。我们的选择是由一篇关于Licensing for the scientist-programmer的优秀文章指导的。在

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

推荐PyPI第三方库


热门话题
由于测试失败,java testcontainers maven构建失败   java实现jacobi算法实现laplace方程   java中的多线程:如何在不等待所有线程使用ExecutorService完成任务的情况下终止所有线程的执行?   java Hello World不在Android Studio 3中工作   ubuntu Tomcat7的Java版本不正确   java Javafx内存泄漏   对于手动实现的Spring数据存储库方法,我应该使用Java8默认方法吗?   googleappengine中的java添加过滤查询   html当使用JSOUP库在Java中读取标签时,如何保留标签(如<br>、<ul>、<li>、<p>等)的含义?   编码为什么jasper生成的报告在Java中不显示西里尔语(保加利亚语)?   java有没有办法隐藏当前位置和jdk动作?   java找出编译原型文件的版本   有没有办法在运行时更改java方法的访问修饰符?   语法字符串。。。Java中的参数   java数组元素在添加其他元素时会相互覆盖   eclipse中的java GWT项目   java如何为spring rest模板请求将动态json属性名映射到jackson   java无法在Windows 10上找到特定的JDK   在xml字符串和java字符串之间提取正则表达式子字符串