@Xc-liu
2016-06-10T20:00:31.000000Z
字数 6970
阅读 1489
计算物理
刘星辰—2013301020167—材料物理—计算物理期末论文
将液体膜置于一个平行板电容器中(),同时在液体表面加一个表面电流()。这样就会使得液体膜旋转。本人曾于2015年和李明浩,陈洋遥合作做过这个实验,当时通过相机记录转动情况。基于流体力学中动量流的的概念,本人提出了一个液体膜转动的理论模型。 当时受限于数值计算能力的限制,没能很好的将理论和实验数据对比。
电容器产生的电场大小为,(不考虑边缘效应.)。电容产生的电场使得液膜极化,且极化强度为。在液膜边缘出现极化电荷,极化电荷产生一个退极化场其大小为。考虑到水的相对介电常数大约为,则退极化场对外场有很大程度抵消。因此的作用是将液膜极化并且大致固定偶极子的方向,但是不会对其有力矩的作用。
假定导线的电导率为,液体的电导率为,以正电极为例利用静电场高斯定理有:
外加电场使得液膜极化,液膜其中的偶极子受到外加电流产生的场的力矩作用,在力矩的作用下液体膜发生转动。对于单个偶极子而言其受到的力矩大小为:
液膜的转动可以视为一系列同心圆环的转动,每个同心圆环的转动角速度不相同。角速度大的圆环会把角动量转移给角速度小的圆环,这样在不同的圆环之间就会有一个角动量流。同时外场产生的力矩会向圆环输入角动量,相当于一个源。这种角动量的输运在液体中主要是由于分子之间的相互吸引造成的宏观效果。
类似热量的流动(傅里叶定律),分子浓度的扩散(费克定律),单位时间通过单位面积的角动量正比于角速度的下降率,即:
- 考虑到摩擦损耗:
可以修改为,这里
选取圆形边界,且边界条件取为:
- 参数取值
- 计算结果分析
在直流情况下如果将边界条件和初始条件取为如下形式:
fig-1,交流情形下w=0.3,速度场的稳态分布t=10, 位置坐标的单位为/10cm,速度条的单位0.1mm/s.
fig-1,直流情况下速度分布随时间变化
初始时刻角速度的极大值出现在边界附近,这是由于初始时摩擦阻力远小于驱动力,而且边界附近的驱动力较大导致的结果。随着时间的推移,速度增加阻力增大,角速度的极大值开始向中间移动, 大概在t=10时达到稳态分布。
fig-2,在交流情况下速度分布随时间的变化,角频率w=40
在频率较高的交流情形下,角速度和线速度的变化趋势和直流情形大致相同,区别在于:1.速度的数值大概为原来的一半,2.达到平衡的时间微小增加。第一点变化可以给出定性的分析,由于交流频率较高,任意运动时间都可以大致认为时交流周期的整数倍。考虑交流情形下的驱动项:
- 当交流电角频率大致与转动角频率相当时的现象
fig-3,频率的改变对速度稳态分布t=10的影响
从图中可以明显看出,线速度分布对于范围内的角频率变化非常敏感。大约在时线速度分布值明显大于其它情况。可以认为这个频段发生了共振现象。
fig-4, 其它频段的频率改变对速度稳态分布t=10的影响
通过以上两图可以看出速度分布对其他频段的交流电并不敏感。
通过数值计算的分析结果,可以得出在外加电场和表面电流作用下的液体膜转动的基本特点:
1,液体膜的转动的角速度扩散的宏观方向是由边缘到中心。
2,液体膜的线速度和角速度的径向分布随时间变化,最终达到稳定分布。线速度的极大值出现位置随时间由边缘向中心推移,最终稳定在中间某处,角速度的极大值出现位置随时间由边缘向中心推移,最终稳定在正中心。
3,如果表面电流为交流电,速度分布达到稳态的时间变长,而且 在高频时速度的大小变为直流时的一半左右。在某一频段内,速度分布对交流电频率非常敏感。大约在 时发生共振。
1:
from numpy import *
import math
import matplotlib.pyplot as plt
import numpy as np
import pylab as pl
##########
def ploy(t_t,cmd,cme):
D=10**-1
a=1
w0=40
E_e=10**3
q=10**-3
k0=1*10**-3
#########
w_bf=[]
w_nw=[]
x=[]
t=[0]
dx=0.02
e=dx
dt=0.001
a_1=D*dt/dx
a_2=D*dt/dx**2
l=int(a/dx)
############
for i in range(int(a/dx)):
x.append(0+i*dx)
w_bf.append(0)
w_nw.append(0)
############
for k in range(int(t_t/dt)):
for i in range(int(a/dx)):
#M=E_e*q*(1.0/(x[i]-a*(1+e))**2+1.0/(x[i]+a*(1+e))**2)*(math.sin(w0*(t[0]+(k-1)*dt)))**2
M=E_e*q*(1.0/(x[i]-a*(1+e))**2+1.0/(x[i]+a*(1+e))**2)
print w_nw[3]
if i==0:
w_nw[i]=0
if i==l-1:
w_nw[i]=0
if i>0:
if i<l-1:
w_nw[i]=w_bf[i]+dt*(M-k0*x[i]*w_bf[i]*x[i])+(w_bf[i]-w_bf[i-1])*a_1/x[i]+a_2*(w_bf[i+1]+w_bf[i-1]-2*w_bf[i])
for j in range(int(a/dx)):
w_bf[j]=w_nw[j]
for m in range(int(a/dx)):
w_nw[m]=x[m]*w_nw[m]
##########
plt.scatter(x,w_nw,marker='+',color=cmd,label=cme)
plt.title(u'the different linear velocity distribution for different time',fontsize=14)
plt.xlabel(u'$r/10cm$',fontsize=14)
plt.ylabel(u'$v(r,t)/(mm/s)$',fontsize=14)
plt.legend(fontsize=12,loc='best')
ak=[0.01,0.1,1,3,5,10,20]
cmd=['r','y','k','g','c','b','m']
cme=['t=0.01','t=0.1','t=1','t=3','t=5','t=10','t=20']
for i in range(7):
ploy(ak[i],cmd[i],cme[i])
plt.show()
2:
import numpy as np
import matplotlib.pyplot as plt
Y, X = np.mgrid[-1:1:20j, -1:1:20j]
U=-(((X**2+Y**2)**0.5-0.5)**2+2.5)*Y/(X**2+Y**2)
V=(((X**2+Y**2)**0.5-0.5)**2+2.5)*X/(X**2+Y**2)
#U=-Y/(X**2+Y**2)**0.5
#V=X/(X**2+Y**2)**0.5
speed=np.sqrt(U*U+V*V)
print speed
fig0, ax0 = plt.subplots()
strm = ax0.streamplot(X, Y, U, V, color=U, linewidth=2, cmap=plt.cm.autumn)
fig0.colorbar(strm.lines)
fig1, (ax1, ax2) = plt.subplots(ncols=2)
ax1.streamplot(X, Y, U, V, density=[0.5, 1])
lw =10*speed/speed.max()
ax2.streamplot(X, Y, U, V, density=0.6, color='k', linewidth=lw)