文档库 最新最全的文档下载
当前位置:文档库 › sonic scanner声波扫描仪

sonic scanner声波扫描仪

sonic scanner声波扫描仪
sonic scanner声波扫描仪

Sonic Scanner声波扫描仪的工作原理及其

应用

摘要:本文介绍了Sonic Scanner声波扫描仪的结构、工作原理、记录内容、并对仪器信号在油田中的应用进行了分析,对这种仪器在确定渗透性地层、探测并评价地层裂缝、获取地层方向特性参数、评价地层力学性质等方面的应用价值进行了分析和评价。

关键词:Sonic Scanner声波扫描仪渗透性地层裂缝

一、 Sonic Scanner仪器结构简介

与电磁和核测井仪器相比,声波仪器下入井内会对其测量产生较大影响。Sonic Scanner仪器完全不同于其它仪器,其设计、材料和组件都经过特殊设计,可以对其影响进行模拟。这样在各向同性均质地层中,可以准确预测仪器的影响,在井场可以进行实时校正。

Sonic Scanner仪器在6英尺接收器阵列上有13个轴向接收点,每个接收点有8个周向分布的接收器,总计104个传感器。三个单极发射器能够获取长源距和短源距数据进行不同探测深度的井眼补偿。两个正交的偶极发射器能产生弯曲波,用于描述慢地层和各向异性地层的横波慢度。

图1. Sonic Scanner仪器结构

图2. Sonic Scanner仪器的规格

二、 Sonic Scanner仪器的工作原理

Sonic Scanner仪器的发射器-接收器(TR)的几何尺寸和功能经过仔细设计,可以提供不同径向探测深度的纵波、横波、斯通利波和弯曲波慢度测量数据。这些模式下的测井速度为1800英尺/小时(549米/小时)。对于地层纵波和横波速度随距井眼距离增加而增加的典型情况,通过增加TR距离来提高探测深度。Sonic Scanner 仪器将这种长源距方法与井眼补偿TR短源距方法相结合,而且还增加了周向分布接收器。仪器在6英尺(1.8米)的接收器阵列上有13个轴向接收点。每个接收点有8个以45°间隔绕仪器放置的接收器,仪器上总

计有104个传感器。在接收器阵列的两端各有一个单极发射器,另一

个单极发射器和两个正交定向偶极发射器位于仪器下部较远处

Sonic Scanner仪器的三个单

极发射器都能产生更强的压力脉

冲。这些发射器能产生清楚的纵

波和横波,低频率斯通利波以及

进行固井评价所需的高频能量。

两个偶极发射器都是一种振动装

置,由电磁马达组成,其中电磁

马达安装在悬挂在仪器上的一个

圆筒上。这种机构产生一个高压

偶极信号,而不会引起仪器外壳

的颤动。震源可采用两种模式驱

动:脉冲模式的传统偶极源产生

一个很深的“咔哒”信号,Sonic

Scanner仪器采用扫频产生线性

调频脉冲信号。与窄带偶极源相

比,线性调频脉冲模式维持每图3. Sonic Scanner仪器

个频率的时间更长,能向地层提供更多的偶极能量。

两个偶极源是正交定向的。一个沿仪器参考轴振动,另一个与参考轴成90°,这些装置产生很强的弯曲波型。弯曲波型沿井筒上下传播,同时根据频率不同,传到地层不同深度。

图4. Sonic Scanner仪器偶极发射器频率扫描

三、记录内容

随着声波在井中传播理论的研究,知道发射器在井孔中激发出的声脉冲经过泥浆、地层传播到接收器。把携带了很多地层信息的声波都记录下来,通过数字信号处理,可获得波形信息,能提供的岩石力学属性包括体积模量、泊松比、杨氏模量、屈服强度、剪切模量和抗压强度等。由此开展地层弹性特征、破裂压力、地层渗透性、裂缝及油气识别等方面研究,有利于扩大声波在石油勘探中的应用。

各种组分波的传播速度、幅度衰减、频率主值以及波形包络等参数都与储层及性质有密切关系。这些参数可广泛用于非均质复杂储层的油气评价和钻采工程参数选择。

Sonic Scanner输出信息有纵波和横波DT,全波形,水泥胶结质量波形。包括交叉偶极子和多种距离的单极子测量结果。除了可以进行轴向和方位测量外,该仪器还可以进行径向测量,能够探测到井

眼附近地层的慢度和远场慢度,其探测深度为井眼直径的2~3倍。这种新的Sonic Scanner声波扫描平台可以提供包括长短距离的井眼补偿单极子、交叉偶极子和水泥胶结质量测量等。其测量结果可以用于评价钻井环境和储集层有用信息。这些信息对提高采收率和最大化产量等决策方面有作用。

正交偶极子声波测井仪的工作方式有:纵横波方式、斯通利波方式、偶极横波方式、正交偶极子方式。

纵横波方式:单极子,高频声源激发,测量全波信息。用来计算孔隙度、识别岩性、识别气层、计算弹性力学参数。

斯通利波方式:单极子,低频声源激发,测量斯通利波信息。用来识别裂缝,计算渗透率。

偶极横波方式:偶极子声源发射,低频率激发,测量横波时差。用来计算孔隙度、判断岩性、识别裂缝、评价地层各向异性。

正交偶极子方式:正交偶极子声源交替发射,测量正交偶极波形。用于计算纵、横波慢度,评价地层渗透率、各向异性以及非均质性等。

四、仪器应用

Sonic Scanner仪器的应用:

在地球物理方面:改善三维地震分析和地震闭合差、分析横波各向异性、流体替代输入。

在地质力学方面:岩石力学分析、识别应力状况、确定孔隙压力、井眼轨迹导向和稳定性评价。

在油藏描述方面:气层识别、渗透性评价、张开裂缝识别、选择性射孔,防砂效果最大化、安全压降窗口最大化、水力压裂优化。

在井筒技术状况方面:水泥胶结质量评价

1.确定渗透性地层

因为目前基本上没有针对流度的连续测井方法,因此须考虑其他方法。一个方法就是测量地层流度,也就是渗透率与黏度的比值。然而流度数据并非只要需要就能得到,因为孔隙度评价只是初步的, 电缆取芯需要额外入井作业,而整体取芯则价格昂贵。斯通利波分析是一种提供直接连续测量流度的有效方法。在井眼条件较好的情况下,斯通利波可以在砂岩和碳酸盐岩储层中得到连续流度测量剖面。这些数据作为岩心渗透率在连续地层上的扩展,可以节省取芯费用,或为确定射孔层段而对渗透性进行快速评价。斯通利波对仪器的存在所产生的影响非常敏感,将这种影响减到最小极其重要。Sonic Scanner 仪器的设计,配合广泛的实验室和现场测试,可非常精确地预测仪器在不同环境下对声波测量的影响。

用斯通利波计算的流度与用MDT 预测试得到的流度有很好的相关性。靠近油水界面的一个地层的地层和流体特性输入参数采用Platform Express 综合电缆测井仪器的测井数据确定。当井眼条件较好时,可用从斯通利波得到的连续流度曲线快速估计渗透率,以便选择取样点和射孔段,而且连续流动性曲线可以作为较长井段岩心或地层测试器渗透率点的补充。

示了Sonic

Scanner斯通利

波如何用于连续

流度分布测量并

快速评价渗透率。

其他斯通利渗透

率的应用包括地

层评价、试采策略

和设计以及油藏

建模。第4道Sonic

Scanner测量得到

的流度曲线。红颜

色点子是MDT模块

式地层测试器测

试的地层流度值,

二者具有很好的图5. Sonic Scanner测量的流度曲线

一致性。

2.探测并评价地层裂缝

当一口井选择正确的水力压裂液的时候,了解各向异性的机制非常重要,尤其是有应力诱发的各向异性或有天然裂缝有关的固有各向

异性(Intrinsic Anisotropy)。除了评价天然张开裂缝和钻井诱导

缝,Sonic Scanner仪器还用于评价各向异性类型。

在FMI电阻率成像测井所示的裂缝近乎垂直。它们最初被解释为钻井诱导缝。Sonic Scanner仪器的斯通利波测量结果清楚地表明了裂缝是天然开口断裂,而不是钻井诱导缝。这一额外声波数据无疑防止了作业者作出不正确的解释,这会导致选择高凝胶(high-gel)压裂液,而这可能会破坏天然断裂的渗透率。在这种情形中, 密闭压裂(encapsulated breaker)效果很差,而需更有效的措施设计。另外,除了避免流体漏失,这些数据对于预防完井作业中的水泥漏失也是至关重要的。

例如,在美国落基山地区,需要水力压裂裂缝才能经济开采硬岩石储层,但该地区极度不平衡的原地应力产生天然裂缝。如果在一口井中遇到天然裂缝,必须调整注水泥和增产设计,以防止水泥进入天然裂缝系统。例如,可利用用于固井和增产的纤维基处理剂来减少流体滤失。增产计划需要考虑主应力的大小和方位。为了优化完井设计,需要了解井眼周围和地层的裂缝和应力特征。与井筒相交的开启裂缝会引起斯通利波反射和衰减。通过分析斯通利波波形可以定量确定这些变化,作为裂缝开度反演的输入。但是,冲刷、井眼不规则和岩性的突变也会引起斯通利波反射,在分析中必须考虑这些因素。

图6. 斯通利波测量结果

3.获取地层方向特性参数

Sonic Scanner仪器在高频率时,单极源产生清晰的纵波、横波和斯通利波,而在低频率时则主要产生斯通利波。X和Y偶极发射器产生弯曲波。频散曲线显示了非频散横波至、轻微频散斯通利波至和高频散弯曲波至的慢度与频率之间的关系。弯曲波频散曲线的低频极限与地层的横波首波和真横波慢度一致。两条弯曲波曲线一致,表明不存在方位各向异性。

高频单极源不能产生直接横波,但却产生漏泄纵波。在低频率下,单极源产生斯通利波,但除此之外还产生很强的漏泄纵波。X和Y偶极发射器产生具有慢地层低频响应特征的弯曲波。频散数据包括轻微频散的斯通利波和漏泄纵波,但没有横波首波。在没有横波首波时,根

据弯曲波的低频极限估算横波慢度。弯曲波不象在快地层那样频散,但比预计的均匀各向同性地层的频散强。在低频时,两个弯曲波频散曲线在不同慢度拉平,表明方位各向异性。弯曲波形已经数学转换旋转到快慢横波方向。

通过将观察到的频散曲线与模型假设的均匀各向同性地层对比,根据各向异性类型,分析来自Sonic Scanner仪器的弯曲波频散曲线对地层分类。

在均匀各向同性地层中,横波不分裂成快慢组分,因此,观察到的两条弯曲波频散曲线有同样的慢度与频率特征波形,与模型曲线重叠。在固有各向异性情况下,如页岩和裂缝性地层中,快慢横波频散曲线处处分离,并且趋向频率为零时的真慢度。在经历了钻井破坏和接近破裂的均匀各向同性地层中,两条频散曲线相同,但与均匀各向同性地层模型频散相比,在高频率时表现出较大慢度。在应力诱发各向异性地层中,快慢横波频散曲线交叉,这种特征是由近井应力集中引起的。当只有一种物理机理控制波的特征时,频散曲线间这种简化的关系才成立。当存在多种机理时,如既有应力诱发各向异性又有固有各向异性时,曲线就有可能非常不同。

图7. 弯曲波频散曲线用于识别地层各向异和非均质性4.评价地层力学性质

声波测量一般是深度的一维函数,很少在二维中同时作为深度和不同方位的函数。而且解释几乎总是基于这种最佳条件假设,即无限均质地层和各向同性的——一项有争议的假设,因为存在着裂缝走向,地层倾角,非均衡应力,以及钻井对地层的损失。Sonic Scanner 仪器可以进行全面的地层三维描述,通过多个发射-接收源距,宽带频率测量,以及井眼中全模式声波传播采集。从扩展的声波测量数据中,可以对主体地层信息进行评价,选择适当的处理技术来提取地层三维声学特性。井眼稳定性模拟用来确保地球力学模型和测井及钻井数据之间的一致性。地球力学模型然后用来优化后续的钻井作业。

参考文献

1.声波测井新技术.Schlumberger [J],2006

2.斯伦贝谢新技术简介.Schlumberger [J],2009

3.sonic scanner. Schlumberger [J]

4.张元中.测井新方法[M]

C语言的类和对象

C语言的类和对象 【类实现了C++面向对象程序设计的基础,我们使用类来定义对象的属性,类是 C++封装的基本单元。】 一、----- 类 使用关键字class创建类,一个类声明定义了一个连接代码和一个数据的新类型,这个新的类型又可以用来声明该类的对象。因此,类又是逻辑逻辑抽象概念,儿对象是物理存在的,也就是说对象是类的实例。 类的声明语法上和结构相似。 [一下是完整的类的形式] class class_name { private data and functions access_specifier: data and functions access_specifiter: data and functions //…….. access_specifier:是 data and functions }object_list; 其中,object_list是任选项,如过存在,他声明类的对象。access_specifier为下面的三个关键字之一: Public private protected 默认时,在类声明的函数和数据属于该类私有,只能被该类的成员访问。如果使用,pubilc访问限定符号,函数和程序就可以被其他部分访问。Protected访问限定符,仅在涉及继承的时候才需要(十五章了解)。访问限定符已经使用,其作用就保持到遇到别的访问限定符或者达到类声明的结束处。 在类声明内可以任意改变访问说明符号,对于某些声明,可以转换位public,然后再转换成private。 [如下所述] /******************************* ··构造函数和析构函数学习··· *******************************/ //Using a constructor and destructor. /******************************* 声明C++ 程序头文件 *******************************/ #include #include #include #include /******************************* ·名字空间:组织大型的程序结构·

长沙各区教师招聘考试语文笔试真题

2016年长沙市雨花区教师招聘考试初中语文真题试卷 积累与运用 1、下列各组词语中加点的字,读音全都不相同的一组是 A.绚丽嶙峋殉职徇私舞弊 B.阻挠连翘丰饶分外妖娆 C.颛顼揣测湍急惴惴不安 D.绯闻诽谤菲薄匪夷所思 2、下列各组词语中,没有错别字的一组是 A.鸿鹄之志恪尽职守龙吟风哕宠辱偕忘 B.讲信修睦戛然而止吹毛求疵浑身解数 C.箪食壶酒周道如砥和辙押韵缊袍敝衣 D.起承转合心如磐石本色当行既物起兴 3、一次填入下列横线处的词语,最恰当的一组是 《疯狂动物城》是成年人给儿童世界打出的一个____的比方,他简单二真实,没有一个家长有能力去塑造这么一个与成人世界平行_____的世俗城邦,它完整的向你的孩子介绍了成人世界的一切美好与残酷,_____与偏见,友谊与竞争……它流畅紧凑的讲述中,___着有美人性和世界的朴素真相。 A.精妙映照宽容隐藏 B.精致对照自私渗透 C.巧妙对比狭隘埋藏 D.简单映射公平包含 4、下列各项中,没有语病的一项是 A.2015年我国快递业务量完成206亿件,最高日处理超过1.6亿件。 B.随着全国力推教育均衡,公办教育校际差距缩小,诸多限令不断出台,使得购买学区房的风险正在加大。 C.亚洲基础设施投资银行是中国主导并倡议建立的多边国际金融机构。 D.近日重读矛盾少年时代的作文手稿,除了感叹他在学生时代的作文就写得文采斐然外,当年教书先生的评改批语,也让人感慨良多。 5、下列有关文学常识的表述,错误的一项是 A.《威尼斯商人》中残忍吝啬的夏洛克,与莫里哀笔下的泼留希金,巴尔扎克笔下的葛朗台,果戈里笔下的阿巴贡,并称为外国文学人物画廊中的“四大吝啬鬼”。 B.《诗经》是我国最早的一部诗歌总集,收录了从西周到春秋时期的诗歌205骗,这些诗歌分为“风”“雅”“颂”三部分。 C.《谈读书》的作者培根是英国著名的哲学家和作家,“知识就是力量”就是他的名言,其随笔致力于探讨并树立新的信念、规范和道德。 D.《海底两万里》讲述了诺第留斯号潜艇环球航行的精彩故事,作者是法国著名科幻和毛线小说家儒勒.凡尔纳。 二、古诗文阅读 破阵子

类和对象练习题

类和对象 一、选择题 1、下面对方法的作用描述不正确的是:( d ) A、使程序结构清晰 B、功能复用 C、代码简洁 D、重复代码 2、方法定义的变量:( b ) A 、一定在方法所有位置可见B、可能在方法的局部位置可见 C、在方法外可以使用 D、在方法外可见 3、方法的形参:(a) A、可以没有 B、至少有一个 C、必须定义多个形参 D、只能是简单变量 4、方法的调用:(c) A、必须是一条完整的语句 B、只能是一个表达式 C、可能是语句,也可能是表达式 D、必须提供实际参数 5、return 语句:( d) A、不能用来返回对象 B、只可以返回数值 C、方法都必须含有 D、一个方法中可以有多个return 语句 6、void 的含义:(d) A、方法体为空 B、方法体没有意义 C、定义方法时必须使用 D、方法没有返回值 7、main()方法的返回类型是:( c ) A 、boolean B、int C、void D、static 8、方法重载所涉及的方法:( a ) A、有相同的名字 B、参数个数必须不同 C、参数类型必须不同 D、返回类型必须不同 9、下面关于类和对象之间关系的描述,正确的是( c ) A、联接关系B、包含关系C、具体与抽象的关系D、类是对象的具体化 10、下面关于java中类的说法哪个是不正确的( c ) A、类体中只能有变量定义和成员方法的定义,不能有其他语句。 B、构造方法是类中的特殊方法。 C、类一定要声明为public的,才可以执行。

D、一个java文件中可以有多个class定义。 11、下列哪个类声明是正确的( d) A、public void H1{…} B 、public class Move(){…} C、public class void number{} D、public class Car{…} 12、下面的方法声明中,哪个是正确的(c) A、public class methodName(){} B、public void int methodName(){} C、public void methodName(){} D、public void methodName{} 13、下述哪些说法是不正确的?( b ) A、实例变量是类的成员变量 B、实例变量是用static关键字声明的 C、方法变量在方法执行时创建 D、方法变量在使用之前必须初始化 14、下面对构造方法的描述不正确是( b)。 A、系统提供默认的构造方法 B、构造方法可以有参数,所以也可以有返回值 C、构造方法可以重载 D、构造方法可以设置参数 15、定义类头时,不可能用到的关键字是( b)。 A、class B、private C、extends D、public 16、下列类头定义中,错误的是( )。 A、public x extends y {...} B、public class x extends y {...} C、class x extends y implements y1 {...} D、class x {...} 17、设A为已定义的类名,下列声明A类的对象a的语句中正确的是( ) 。 A、float A a; B、public A a=A( ); C、A a=new int( ); D、static A a=new A( ); 18、设i , j为类X中定义的int型变量名,下列X类的构造方法中不正确的是( a )。 A、void X(int k ){ i=k; } B、X(int k ){ i=k; } C、X(int m, int n ){ i=m; j=n; } D、X( ){i=0;j=0; } 19、有一个类A,以下为其构造方法的声明,其中正确的是

类的定义和对象的创建

实验二类的定义和对象的创建 实验目的 1、学习定义类和使用类 2、学习创建的对象和使用对象 实验内容 1、定义一个Student类。其中定义有“学号”“姓名”“班级”“性别”“年龄”等属性,定 义一个无参数的构造器和至少一个有参数的构造器,定义“获得学号”“获得姓名”“获得班级”“获得性别”“获得年龄”“修改年龄”等方法。另外定义一个方法: public String toString( ) 把Student类的对象的所有属性信息组合成一个字符串,并检验这个功能的程序体现。 public class Student { private int 学号; private String 姓名; private String 班级; private char 性别; private int 年龄; public Student(int a, String b, String c, char d, int e) { 学号= a; 姓名= b; 班级= c; 性别= d; 年龄= e; } public Strudent() { this(0, "张三" ,"软件0901" ,'男', 19); } public int get学号() { return 学号; } public String get姓名() { return 姓名; } public String get班级() { return 班级; } public char get性别() { return 性别; } public int get年龄()

{ return 年龄; } public void set学号(int a) { 学号=a; } public void set姓名(String a ) { 姓名=a; } public void set班级(String a) { 班级= a; } public void set性别( char a) { 性别= a ; } public void set年龄(int a) { 年龄= a; } public String toString() { return "该学生的学号为"+ 学号+ " 姓名为"+姓名+" 班级为"+班级+ " 性别为" +性别+ " 年龄为" +年龄"; } } 2、编程实现圆类,其中包括计算圆周长和面积的方法,并测试方法的正确性。 public class Yuan { private double X, Y, R; public Yuan(double a, double b, double c) { X=a; Y=b; R=c; } public double MianJi() { return 3.1416*R*R; } public double ZhouChang() { return 2*3.1416*R; } public static void main(String[] args) { Yuan s=new Yuan(2,3,4); System.out.println("该圆的面积是"+ s.MianJi()); System.out.println("该圆的周长是"+ s.ZhouChang()); } }

类的构建和对象的使用练习题

类的构建和对象的使用 判断题 1、一个类可以生成多个对象,并且这些对象都具有相同的属性。() 2、当运行javac命令对一个java源程序进行编译时,必须写出该源程序文件的完整文件名,包括扩展名.java。() 3、 java语言中不用区分字母的大写小写。() 4、数组允许存放不同类型的定长元素。() 程序分析题 阅读下列程序,然后回答问题。 class Car { int carNumber; Car(){} Car(int no){ this.carNumber=no; } void setNumber(int carNum) { carNumber = carNum; } void showNumber() { System.out.println(“My car No. is :” + carNumber); } } ①写出这里定义了什么类?有哪些成员变量?有哪些成员方法? ②有哪些构造方法? ④ void表示什么? 下列程序中,main()方法中使用了上面定义的类,产生了多少个对象?对象名字分别是什么?写出执行后的输出结果。 public class CarDemo { public static void main(String args[]){ Car demoCar1= new Car(); demoCar1.setNumber(168168); demoCar1.showNumber(); } } 编程题 1. 做一个学生管理系统的登陆界面,并判断用户名和密码是否正确。

2.做一个学生管理系统的子界面,来实现对10个学生的成绩的输入,并输出总成绩、平均成绩、最大成绩、最小成绩。再加上了对学生成绩的输入功能,如果输入的成绩部队不对就重新输入。

声悬浮实验

实验四十四 声悬浮实验 【实验目的】 1. 观察声悬浮现象,并利用声悬浮现象测量声速; 2. 用驻波法(共振干涉法)和时差法测量声速。 【实验方案】 一般地讲,弹性介质中的纵波都被称为声波。频率在20~20000Hz 之间的声波,能引起人的听觉,称为可闻声波,也简称声波。频率低于20Hz 的叫做次声波,高于20000Hz 的叫做超声波。 介质中有声波传播时的压力与无声波时的静压力之间有一差额,这一差额称为声压。声波是疏密波,在稀疏区域,实际压力小于原来的静压力,声压为负值;在稠密区域,实际压力大于原来的静压力,声压为正值。以p 表示声压,则有 )sin(kx t p p m --=ω (1) 其中,ω=2π/T ,为声波的角频率;k =2π/λ,为声波的角波数;而声压振幅 ωρuA p m = (2) 其中ρ为介质密度,u 为声波波速(简称声速),A 为声波振幅,ω为声波角频率。由(2)式可知,声压的大小由4个物理量来决定。因为声速的大小仅由声波传播时所经过的介质来决定,所以在传播介质一定的情况下,声压的大小主要取决于声波的振幅和频率。 声强就是声波的强度,即为 u p uA I m ρωρ2222121== (3) 声悬浮是利用高强度声波产生的声压来平衡重力,从而实现物体悬浮的一种技术。由于驻波产生的声压远大于行波,所以声悬浮实验普遍采用驻波。 一个最简单的驻波系统可由一个声发射端和一个声反射端构成,即形成一个谐振腔。发射端到反射端的距离L 是可调的,以满足驻波条件。如果将声场近似看作平面驻波,则驻波条件为 3212,,,==n n L λ , (4) 发射面和反射面是声压的两个波腹,声压波节位于λ/4,3λ/4,5λ/4,…处。在声压波节处,声辐射力具有回复力的特性,即一旦样品有所偏离,就会被拉回原位置,所以声压波节就是样品的稳定悬浮位置。因此可以悬浮的样品数应为n 个,且两个样品之间的距离为λ/2。通常,选择声波的传播方向与重力方向平行,以克服物体的重力。较重的物体,其悬浮位置会偏向声压波节的稍下方。 以悬浮一个半径为r 的小球为例,若平面驻波的声压为 ) sin()cos(t kx p p m ω= (5) 则它在小球上产生的声辐射力为 )2sin(265322kh r p F m ??? ??=λπρωπ (6)

基于COMSOL的声悬浮模拟仿真

基于COMSOL的声悬浮模拟仿真 发表时间:2018-11-15T11:43:16.157Z 来源:《科技新时代》2018年9期作者:卜艺浦 [导读] 本文主要研究超声悬浮中液滴的悬浮情况,利用COMSOL有限元分析软件建立超声悬浮仪器的物理模型 江苏省泰兴中学江苏泰兴 225400 摘要:本文主要研究超声悬浮中液滴的悬浮情况,利用COMSOL有限元分析软件建立超声悬浮仪器的物理模型,模拟驻波悬浮的声场,从而得到声压与声压级的分布频域。通过改变悬浮液滴的形状和尺寸,发现声压分布随着液滴参数的变化而发生相应的改变。通过研究液滴并对这些液滴在声场中的声压分布进行分析,最终得出液滴在驻波场中稳定悬浮所需的条件。 关键词:声悬浮;声压;声辐射力;液滴;COMSOL有限元分析软件 1. 引言 超声悬浮是实现无容器环境的一种方便快捷的技术,无容器环境对于材料、生化分析和样品制备非常重要,因为它避免了样品与容器壁的接触,从而隔绝了众多污染源。相较于其他类型的悬浮,声悬浮具有很多方面的优势。与磁悬浮和电悬浮相比,声悬浮技术对样品是否带电或是否具有磁性没有要求,也不会使样品产生热效应;对比光悬浮,声悬浮不必特意使用特定材质样品,比如石墨烯等,也能产生较大的悬浮力;声悬浮也比气流悬浮技术更稳定可控。另外,声悬浮可广泛应用于蛋白质结晶、液态合金深过冷快速凝固研究、液滴动力学、微剂量生化研究,以及胶体液滴的干燥等领域[1]。 超声悬浮一般分为有两种,一种为超声近场悬浮[2],另一种是驻波悬浮[3]。所谓近场悬浮,就是依靠物体下方发射器发射高频声场产生声辐射力与物体自身重力平衡使物体悬浮,这种悬浮方式多应用于无接触条件下移动物体的研究。驻波悬浮仪器一般由超声波发射器、换能器、变幅杆、发射端、反射端、石英管及调谐机构组成,在发射端与反射端之间形成驻波场,从而产生声辐射力使物体悬浮。所谓驻波,就是指振幅相同、传输方向相反的两个波共同形成的波,也就会有两个方向相反的压强,对其中的物体产生方向相反的两个力。一般地,两个声波产生的声压相抵消,和压为0的位置称为波节点,悬浮样品在波节点处受到声辐射力与重力相抵消而稳定悬浮。声悬浮仪器产生的声驻波就是这样与物体相互作用,同时水平方向的声辐射力作为定位力把悬浮物固定悬浮于驻波场的波节点处。驻波产生的声辐射力与(R/λ)3成正比,行波与(R/λ)6成正比,其中R表示物体尺寸,λ表示波长,声悬浮一般要求物体尺寸远小于半波长,因此驻波产生的力比行波大得多[4]。 目前声悬浮技术只能悬浮一些体型质量较小的样品,不能悬浮体型质量较大的物体,这也就造成实验应用的局限性,无法应用于大物体或大剂量的实验。尽管近场悬浮技术有望能在目标质量与尺寸的限制上有所突破,但其技术还不够完善。驻波悬浮技术,相较于近场悬浮,已经是比较成熟的声悬浮技术,能够悬浮密度最大的元素铱并已经在生物医学等领域得到应用[5]。 另外,液滴是自然界中常见的流体单元,可以作为研究对象或实验载体。在生物化学反应中,液滴可作为微反应溶器或是微生物的培养基;在工业应用中,液滴性质影响着液态合金的深过冷快速凝固。换言之,液滴的力学行为对实际应用产生重大影响。为了分析液滴在无容器环境中的力学行为,本文利用COMSOL有限元分析软件对液滴在声场中进行模拟实验,并进行了相关理论分析和总结。 2. 声悬浮对液滴形态的影响 2.1 COMSOL模拟计算方法 COMSOL有限元分析软件是可以分析耦合物理场的软件。利用COMSOL有限元分析软件的模拟仿真,可以更加直观的观察到一些物理现象,更加方便地得到相关的实验数据,并随时作出参数的调整。利用其进行仿真模拟,能为现实中的实验提供理论数据依据。该软件模拟研究声悬浮技术,由一个声波发射传感器和弧型反射面构成,需要设定一些必要的参数,比如声场频率f0,发射端与反射端的距离H,发射器宽度Dr等(见表1),建立声悬浮模型(如图1)。通过网格构建划分,以有限元分析法便可以计算出驻波场的声压分布,悬浮样品

实验二 类和对象的使用_参考答案

实验二类和对象的使用 班级:学号:姓名:成绩: 一.实验目的 1.掌握类和对象的概念、定义和使用方法。 2.掌握不同特性对象成员的访问方法。 二.使用的设备和仪器 计算机+Windows XP +Visual C++6.0 三.实验内容及要求 1.定义一个Book类,在该类定义中包括以下数据成员和成员函数: 数据成员:bookname(书名)、price(价格)、number(存书数量) 成员函数:set()输入图书信息;display()显示图书的情况;borrow()将存书数量减1,并显示当前存书数量;restore()将存书数量加1,并显示当前存书数量。 在主函数中,要求创建某一图书对象,并对该图书进行简单的显示、借阅和归还等管理。 2.定义一个中国好声音歌手类。其中,包括每个歌手的名字、年龄、来自哪个省份、所唱的曲目等。可以实现报名、显示、修改等功能。 3.定义一个时间类,实现课堂中第五节中的例2.2。 数据成员:时、分、秒 成员函数:输入时间、设置时间、按12小时制显示时间、按24小时制显示时间、增加1小时、减少1小时等功能。 4.定义一个学生类Student,要求如下: (1)数据成员包括学号、姓名、数学成绩、英语成绩和C++成绩;要求对所输入的成绩的合法性进行判断。 成员函数包括:设置学生的信息函数;输入学生的信息函数;输出学生的信息函数; 计算学生平均成绩的函数。 (2)添加新的数据成员:出生年月日;实现多个学生信息的添加、成绩的修改(一次只能修改一科成绩)等功能。要求单独定义一个日期类,并对所输入的出生年月日的合法性进行判断。 (3)设计一个菜单函数。 ****************************************************************** * * * 1.添加 2.设置 3.显示 4.修改成绩 5.计算平均分0.退出* * *

2015声波透射法题库

一、选择题(单项选择题,本题只有一个正确答案) 1、端承型大直径灌注桩应选用钻芯法或声波透射法对部分受检桩进行桩身完整性检测。抽检数量不应少于总桩数的( A ) A.10% B.20% C.5% D.30% 2、声波透射法检测前应在桩顶测量相应声测管( B )壁间净距离,称为管距。 A. B.外 C.桩径 D.声测管中心 3、声波透射法检测时发射与接收声波换能器同步升降时,测点间距不宜大于( C )。 A.200mm B.250mm C.100mm D.350mm 4、当采用低应变法或声波透射法检测时,受检桩混凝土强度至少达到设计强度的( B ),且不小于15 MPa。 A.60% B.70% C.80% D.90% 5、声波透射法的声幅判据用声幅平均值减(B)作为声幅临界值。 A.3dB B. 6dB C. 9dB D. 12dB 6、平面纵波波速比平面横波波速( A )。 A.大 B.小 C.相等 D.无法确定 7、无限大介质中弹性平面波纵波波速比弹性杆中平面波纵波波速( A )。 A.大 B.小 C. 相等 D.无法确定 8、在声波透射法检测中,接收到的首波幅值越低,表明混凝土对声波的衰减就( A )。 A.越大 B.越小 C.无衰减 D.无法确定 9、从声波透射法角度对声测管的材料要求未考虑的是哪个因素?(D) A. 强度和刚度 B.与混凝土粘结性 C.声透率 D.抗腐蚀性 10、在声波透射法检测中,预埋声测管径一般比换能器直径大(C )mm。 A.30~50 B.50~60 C.10~20 D.20~30 11、声波透射法检测的声波主频一般为(A)Hz。 A.2×104~2×105 B.2×103~2×104 C.2×105~2×106 D.2×106~2×107 12、直径为1.5m的混凝土灌注桩,应埋设不少于几根声测管(C)。 A. 1 B.2 C.3 D.4 13、声波透射法检测是利用( C )在桩身中传播时声学参数的变化来判断桩的质量。 A. 次声波 B.声波 C. 超声波 D.特超声波 14、声波透射法检测时,换能器在声测管一般用( B )耦合。 A. 空气 B.清水 C.黄油 D.泥浆 15、实现电能和声能相互转换的装置叫做( D )。 A. 发射器 B.接收器 C.转换器 D.换能器 16、声波透射法零时校正不是考虑哪个因素?( D ) A.发射机的延迟 B.发射换能器的延迟 C.接收换能器的延迟 D.耦合水的延迟。 17、下列声学参数中,最稳定、重复性好的是( B ) A、波幅 B、波速 C、频率 D、波形 18、下列哪个声学参数对缺陷的反应最为敏感( B ) A、声时 B、波幅 C、频率 D、声速 19、气泡密集的混凝土,往往会造成( A )

看看用声波悬浮和移动物体

看看用声波悬浮和移动物体 声波将用来悬浮和移动物体 史上第一次,科学家们成功使用声波来悬浮和移动物体,这些科学家来自瑞士联邦技术研究所,他们用新发现的“神奇力量”来操纵咖啡和水滴,成功在半空中碰撞出速溶咖啡。这样的方法也许同样可以应用在人类身上,并可能导致灾难性的小爆炸和内出血。 相对于磁悬浮,声悬浮是更有吸引力的。目前这些浮力可以轻轻浮起一些液体,不过必须是非混合的,比如单独水和单独的油,还有一点限制就是现在声悬浮的对象直径必须是对应波长的一半。之前磁力和浮力不可以悬浮起的东西,比如牙签,这个技术就可以悬浮起来。此次声悬浮的巨大突破是可以进一步控制物体,向上、向下,从一边到另一边。当声波在空气中移动的时候,波中有一定的静态波(驻波)是非常稳定的,可以通过额外控制来创建一个一致向上的压力,迫使波束可以呆在一定的地方。如果它有足够强大的振幅(体积),就可以支撑相当重力的物体。 总之来说,只要你能释放出足够的声波,你就能轻轻浮起任何东西,包括人类自己。目前的实验证明托起水滴需要160分贝。 现在我们好奇的是,这个新开发的技术最应该用在什么地方呢? 很多化学过程和生物过程希望不经过直接人体接触就能通过表面接触而产生紊乱,声悬浮看来是很好的解决方案。另外除了磁悬浮,另外增加一门声悬浮也是个很好的悬浮选择。研究员表示,声波撞击到表面时会产生相当的反弹力,平时量太小很被注意到,但是强度足够

大的时候,就能抵消相当一部分的重力了。 看视频的时候,甚至引发了我们的思考,除了对制药和电子业产生深远影响。如果用这种办法在细胞中引入外来DNA,使得细胞转染成其它细胞,这些会不会产生一些生物进化的新篇章? 本文来源:雷锋网作者:宗仁 以下内容为繁体版聲波將用來懸浮和移動物體 史上第一次,科學傢們成功使用聲波來懸浮和移動物體,這些科學傢來自瑞士聯邦技術研究所,他們用新發現的“神奇力量”來操縱咖啡和水滴,成功在半空中碰撞出速溶咖啡。這樣的方法也許同樣可以應用在人類身上,並可能導致災難性的小爆炸和內出血。 相對於磁懸浮,聲懸浮是更有吸引力的。目前這些浮力可以輕輕浮起一些液體,不過必須是非混合的,比如單獨水和單獨的油,還有一點限制就是現在聲懸浮的對象直徑必須是對應波長的一半。之前磁力和浮力不可以懸浮起的東西,比如牙簽,這個技術就可以懸浮起來。此次聲懸浮的巨大突破是可以進一步控制物體,向上、向下,從一邊到另一邊。當聲波在空氣中移動的時候,波中有一定的靜態波(駐波)是非常穩定的,可以通過額外控制來創建一個一致向上的壓力,迫使波束可以呆在一定的地方。如果它有足夠強大的振幅(體積),就可以支撐相當重力的物體。 總之來說,隻要你能釋放出足夠的聲波,你就能輕輕浮起任何東西,包括人類自己。目前的實驗證明托起水滴需要160分貝。 現在我們好奇的是,這個新開發的技術最應該用在什麼地方呢?

JAVA类与对象的创建

试验四 类和对象的创建 一.类的定义 类是组成Java程序的基本要素。类封装了一类对象的状态和方法。类用来定义对象的模板。 类的实现包括两部分:类声明和类体。基本格式为: 修饰符class类名[extends父类名]{ /*类体的内容*/ } 1.类声明 以下是一个类声明的例子。 class People成为类声明,People是类名。习惯上,类名的第一个字母大写,但这不是必须的。类的名字不能是Java中的关键字,要符合标识符规定,即类的名字可以由字母、下划线、数字或美元符号组成,并且第一个字母不能是数字。但给类命名时,最好遵守下列规则: (1)如果类名使用拉丁字母,那么名字的首写字母使用大写字母,如Hello、Time、People等。 (2)类名最好容易识别,当类名由几个“单词”复合而成时,每个单词的首写字母使用大写,如BeijingTi me、AmericanGame、HelloChina等。 2.类体 编写类的目的是为了描述一类事物共有的属性和功能,描述过程由类体来实现。类声明之后的一对大括号“{”、“}”以及它们之间的内容称为类体,大括号之间的内容称为类体的内容。 类体的内容由两部分构成:一部分是变量的定义,用来刻画属性;另一部分是方法的定义,用来刻画功能。 下面是一个类名为“Trapezia”的类,类体内容的变量定义部分定义了4个float类型变量:top、bottom、h igh和laderArea,方法定义部分定义了两个方法:“getArea”和“setHigh”。

二.对象 1.对象的创建 创建一个对象包括对象的声明和为对象分配内存两个步骤。 (1)对象的声明。 一般格式为: 类的名字对象名字; 如: 这里People是类的名字,zhubajie是我们声明的对象的名字。 (2)为声明的对象分配内存。 使用new运算符和类的构造方法为声明的对象分配内存,如果类中没有构造方法,系统会调用默认的构造方法(你一定还记得构造方法的名字必须和类名相同这一规定),如: 例1: 「注」如果类里定义了一个或多个构造方法,那么Java不提供默认的构造方法。 2.对象的使用 对象不仅可以改变自己变量的状态,而且还拥有了使用创建它的那个类中的方法的能力,对象通过使用这些方法可以产生一定的行为。 通过使用运算符“.”,对象可以实现对自己的变量访问和方法的调用。 例2:

类与对象的复习与练习

一选择题 1.下面方法定义中,正确的是: A)int x(int a,b){return a-b;} B)double x(int a,int b){int w;w=a-b;} C)double x(a,b){return b;} D)int x(int a,int b){return a-b;} 2.下面方法定义中,不正确的是: A)float x(int a,int b){return a-b;} B)int x(int a,int b){return a-b;} C)int x(int a,int b){return a*b;} D)int x(int a,int b){return 1.2*(a-b);} 3下面方法定义中,正确的是: A)int x(){char ch='a';return (int)ch;} B)void x(){return true;} C)int x(){return true;} D)int x(int a,b){return a-b;} 4设X 、Y 均为已定义的类名,下列声明类X的对象x1的语句中正确的是? X x1=new X(); B)X x1= X ( ); C)X x1=new Y( ); D)int X x1; 5设A为已定义的类名,下列声明并创建A 类的对象a的语句中正确的是?

A)A a=new A( ); B)public A a=A( ); B)C)A a=new class( ); D)a A; 6下面类的定义中结构正确的是? A)class A B)class 2A C)int class A D)public class A () 7下面关于类的结构的说法正确的是? A)类只能包含一个构造方法 B)类可以没有属性 C)类只能包含方法 D)类只能包含属性 8下面哪个关键字在定义类头时用不到? A)class B)public C)extends D)int33 9 this在程序中代表的是? A)类的对象 B)属性 C)方法 D)父类 10下列对构造方法的调用方式的描述中正确的是? A)使用new调用 B)使用类名调用 C)使用对象名调用

c类和对象练习题

c类和对象练习题 Standardization of sany group #QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN#

第8章类与对象 8.1知识要点 1.掌握类与对象的概念和定义方法,掌握类成员的访问属性。 2.掌握构造函数的概念、定义方法和使用方法。 3.掌握析构函数的概念、定义方法和使用方法。 4.掌握拷贝构造函数的概念、定义方法和使用方法。 5.掌握包含对象成员的类构造函数的定义方法。 6.掌握静态成员的概念、定义方法、作用和特点。 7.掌握友元的概念、定义方法、作用和特点。 8.掌握类模板的定义格式与使用方法。 8.2典型例题分析与解答 例题1:下列有关类的说法不正确的是()。 A.对象是类的一个实例 B.任何一个对象只能属于一个具体的类 C.一个类只能有一个对象 D.类与对象的关系和数据类型与变量的关系相似 答案:C 分析:对象是类的一个实例,类与对象的关系和数据与变量的关系相似,所以一个类可以有多个对象。 例题2:下面()项是对构造函数和析构函数的正确定义。 A.void X::X(), void X::~X() B.X::X(参数),X::~X() C.X::X(参数),X::~X(参数) D.void X::X(参数),void X::~X(参数) 答案:B 分析构造函数无返回类型、可带参数、可重载;析构函数无返回类型、不可带参数、不可重载。 例题3:()的功能是对象进行初始化。 A.析构函数B. 数据成员 C.构造函数 D.静态成员函数 答案:C 分析:当一个对象定义时,C++编译系统自动调用构造函数建立该对象并进行初始化;当一个对象的生命周期结束时,C++编译系统自动调用析构函数注销该对象并进行善后工作; 例题4:下列表达方式正确的是()。 A.class P{B.class P{ public: public: int x=15; int x; voidshow(){cout<

青海省海北藏族自治州2020版中考物理模拟试卷A卷

青海省海北藏族自治州2020版中考物理模拟试卷A卷 姓名:________ 班级:________ 成绩:________ 一、选择题 (共12题;共24分) 1. (2分)在索马里海域,我国海军护航编队使用“金嗓子”(又名“声波炮”)震慑海盗,它的声波定向发生器外观类似喇叭,能发出145dB以上的高频声波,甚至比喷气式飞机引擎的声音还要刺耳。下列说法中错误的是() A . 声波具有能量 B . 声波定向发生器喇叭状外观可以减少声音的分散,从而增大响度 C . 使用“金嗓子”时,护航官兵戴耳罩是在接收处减弱噪声 D . “金嗓子”发出的声波是次声波 2. (2分)如图所示的四种现象中,由于光的折射形成的是() A . ①② B . ②③ C . ①④ D . ②④ 3. (2分)(2017·乳山模拟) 生活中常把碗放在锅里的水中蒸食物.当锅里的水沸腾以后,碗中的水() A . 同时沸腾 B . 稍后也沸腾了 C . 温度达到沸点,不会沸腾 D . 温度低于沸点,不会沸腾 4. (2分)(2013·丹东) 下面四幅图中能说明电动机原理的是()

A . B . C . D . 5. (2分)(2011·湛江) 我市于2011年6月6日(端午节)成功举办了第五届“中国湛江海上国际龙舟邀请赛”,在划龙舟比赛活动中,下列有关说法中正确的是() A . 以龙舟上的运动员为参照物,龙舟是运动的 B . 龙舟漂浮在水面上时,龙舟所受的浮力大于重力 C . 桨往后划,龙舟前进,说明物体间力的作用是相互的 D . 停止划桨后,龙舟还会继续前进一段距离,是因为受到惯性力的作用 6. (2分) 2012年春节联欢晚会上,山西绛州鼓乐团表演的《鼓韵龙腾》气势磅礴.下面有关说法中错误的是() A . 鼓乐声主要是由鼓面振动产生的 B . 鼓乐声主要是由鼓内空气振动产生的 C . 鼓乐声是经过空气传到现场观众耳朵的 D . 由于设计师对剧场的混响时间的合理设计,才会使现场观众感觉鼓声的气势磅礴 7. (2分)为测出石块的密度,某同学先用天平测石块的质量,所加砝码和游码在标尺上的位置如图甲所示,接着用量筒和水测石块的体积,其过程如图乙所示。下列判断不正确的是()

类和对象

6.1实验目的和要求 1.熟悉面向对象的基本概念。 2.进一步掌握类的各种成员的使用方法。 3.掌握对象之间通信的基本方法。 6.2实验内容与步骤 题目1 点和直线类 (1)创建C#控制台应用程序L6_1。 (2)在程序中新建一个点类CzPoint,为其定义两个double类型的私有字段成员x和y,分别表示点的横坐标和纵坐标。 (3)为CzPoint定义两个公有属性X、Y,分别用于封装对字段x 和y的读写访问。 (4)定义CzPoint的带参构造函数,在其中对字段x和y进行初始化。参考源代码如下: public CzPoint(double x, double y) { this.x = x; this.y = y;

} (5)为CzPoint定义公有方法Move,用于按指定的水平距离和垂直距离移动坐标点。参考源代码如下: public void Move(double dx, double dy) { x += dx; y += dy; } (6)对CzPoint类进行相等和不相等操作符重载。两个坐标点相等,是指它们的横坐标和纵坐标都相等。 (7)在程序主方法中创建坐标为(1,2)和(3,3)的两个坐标点对象,判断它们是否相等;而后将第一个坐标点移动到第二个坐标点上,再判断它们是否相等。 (8)在程序中再新建一个直线类CzLine,为其定义两个double类型的字段成员a和b,分别表示直线的斜率和截距;再定义字段的封装属性A和B,但它们都是只读的。

(9)为CzLine定义两个构造函数,一个根据斜率和截距来创建直线对象,另一个则根据两个CzPoint对象来构造直线对象(直线穿过这两个点)。后一个的参考源代码如下: public CzLine(CzPoint p1, CzPoint p2) { if (p1 == p2) throw new ArgumentException("两点不能相同"); this.a = (p2.Y - p1.Y) / (p2.X - p1.X); this.b = p1.Y - this.a * p1.X; } (10)为CzLine定义公有方法Move,但它只用于平移直线,而不改变直线的斜率。再为其定义公有方法Contains,用于判断某点是否在该直线上。 (11)类似的,为CzLine重载相等和不等操作符。 (12)最后在程序主方法中采用不同的方式创建直线对象,并编译运行程序,测试它们的使用效果。 程序的整体结构如下:

类和对象的概念

类和对象的概念 类(Class) 面向对象思想来源于对现实世界的认知。现实世界缤纷复杂、种类繁多,难于认识和理解。但是聪明的人们学会了把这些错综复杂的事物进行分类,从而使世界变得井井有条。比如我们由各式各样的汽车抽象出汽车的概念,由形形色色的猫抽象出猫的概念,由五彩斑斓的鲜花抽象出花的概念等。汽车、猫、鲜花都代表着一类事物。每一类事物都有特定的状态,比如汽车的品牌、时速、马力、耗油量、座椅数,小猫的年龄、体重、毛色,鲜花的颜色、花瓣形状、花瓣数目,都是在描述事物的状态。每类事物也都有一定的行为,比如汽车启动、行驶、加速、减速、刹车、停车,猫捉老鼠,鲜花盛开。这些不同的状态和行为将各类事物区分开来。 面向对象编程也采用了类的概念,把事物编写成一个个“类”。在类中,用数据表示事物的状态,用函数实现事物的行为,这样就使编程方式和人的思维方式保持一致,极大的降低了思维难度。 封装(Encapsulation) 制造汽车的过程中什么人最牛?当然不是焊钢板的,也不是装轮胎的,更不是拧螺丝的,而是设计汽车的工程师,因为他知道汽车的运行原理。但是我们开车时,需要知道汽车的运行原理吗?答案显然不需要。汽车的运行原理已经被伟大的工程师封装在汽车内部,提供给司机的只是一个简单的使用接口,司机操纵方向盘和各种按钮就可以灵活自如的开动汽车了。 与制造汽车相似,面向对象技术把事物的状态和行为的实现细节封装在类中,形成一个可以重复使用的“零件”。类一旦被设计好,就可以像工业零件一样,被成千上万的对其内部原理毫不知情的程序员使用。类的设计者相当于汽车工程师,类的使用者相当于司机。这样程序员就可以充份利用他人已经编写好的“零件”,而将主要精力集中在自己的专署领域。 接口(Interface) 今天你买了一台等离子电视机,你拿出遥控器,操纵按钮,开始欣赏精彩的电视节目。人们通过遥控器这个接口使用电视机,同样,人们通过类的接口使用类。程序员在编写类时精心地为它设计接口,而设计良好的接口不但方便其他程序员使用,还有利于类的升级改造。 假设你是一个环保人士,最近你用节能的荧光灯代替了普通的白炽灯。白炽灯通过加热电阻丝照亮整个屋子;荧光灯则是激活空气中的某些分子的电子能而发光。虽然它们的原理不同,但是它们的功能却是一样的——照明。因为两种灯具有相同的接口,所以你只需拧下白炽灯,然后再拧上荧光灯即可,轻易的实现“零件”的更新换代。同样,在面向对象编程中,只要保持接口不变,你可以任意更改类的实现细节,用一个设计更好的类替换原来的类,实现类的升级换代。 现在软件维护和修改的成本已经占到了整个软件开发的80%,类的这一编成思想极大的方便了程序的维护和修改,降低了软件成本。

实验四 类和对象定义

实验四类和对象定义 一、实验类型 设计型 二、实验目的 1、实验目的 (1) 掌握类的声明、定义和使用方法。 (2) 掌握对象的定义和使用方法。 (3) 掌握具有不同访问属性的类中成员的使用方法。 三、上机准备 1、实验室安装VC++6.0软件。 2、类的基本概念、对象的基本概念。 四、实验内容与步骤 1、在Rect.cpp中,定义一个矩形(Rect)类,包括矩形的左上角坐标(X1,Y1),矩形右下角坐标(X2,Y2)四个数据成员;包括计算矩形面积(getArea),计算矩形周长(getPerimeter),设置矩形数据成员(setRect)和输出矩形数据成员(print)四个成员函数。数据成员为私有成员,成员函数为公有成员且在类说明内定义实现。在main()函数中建立Rect类对象并进行测试。 提示与分析: (1) 分析类中数据成员的类型并定义对应的变量,如double X1,X2,Y1,Y2; (2) 分析成员函数的函数原型,即返回值及其类型以及相关参数,如: double getArea(); double getPerimeter(); void setRect(double,double ,double,double); void print(); (3) 思考成员函数的函数体实现代码。 计算矩形面积和周长的方法: Area=fabs(X2-X1)*fabs(Y2-Y1); Perimeter=(fabs(X2-X1)+fabs(Y2-Y1))*2; (4) 根据要求设定类成员的访问权限,如成员函数为公有成员(public),数据成员为私有成员(private)。 (5) 将成员函数的函数体代码放到类说明中。 (6) 在main()函数中建立Rect类的实例并调用对象的方法进行测试,如

相关文档