Cocos2d-x学习小结 开始篇
Cocos2d-x学习小结 开始篇
想要学习Cocos2d-x,是因为在高中物理课上找不到某些物理定律的证明,例如欧姆定律。
为此,我翻阅了稍高等级的物理教材,其中关于欧姆定律\(R=\frac{U}{I}\)的证明大体如下
把金属导体中的质子视作相对静止构成点阵的刚体,把电子视作可以在质子周围自由穿梭,不时与质子进行完全弹性碰撞的刚体。
当导体中没有电场时,导体内部的电子并不是静止不动的。电子总是在不停的作无规则热运动,不时与质子点阵相撞。在没有外电场或其他原因的情况下,它们朝任一方向运动的概率都一样。因此从宏观角度上看,自由电子的无规则热运动并不产生电流。
当导体中加了电场时,电子的运动将由两部分构成:无规则热运动和在电场作用下的定向运动。这是可以认为电子的总速度由它的热运动速度和因电场而产生的定向速度组成。前者的矢量平均为0,后者的平均叫做漂移速度,用\(u\)来表示。这种宏观上的定向漂移运动形成了宏观电流。
自由电子在电场中获得的加速度为\(a=-\frac{e}{m}E\)。由于与质子的碰撞,自由电子定向速度的增加受到了限制。电子与质子点阵碰撞后沿什么方向散射具有很大的偶然性。我们可以假设,其散射的速度沿各方向的概率相等,即这时电子完全丧失了定向移动的特征,其定向速度\(u_0=0\)。此后电子在电场力的作用下从零开始作匀加速运动。到下次碰撞之前,它获得的定向速度为\(u_1=a\bar\tau=-\frac{e}{m}E\bar\tau\),其中\(\bar\tau\)为电子在两次碰撞之间的平均自由飞行时间。
在一个平均自由程(粒子在连续两次碰撞之间可能通过的各段路程长度的平均值)内电子的平均漂移速度\(u=\frac{u_0+u_1}{2}=\frac{1}{2}(0-\frac{e}{m}E\bar\tau)=-\frac{e}{2m}E\bar\tau\)。
又由于\(\bar\tau=\frac{\bar\lambda}{\bar v}\),所以\(u=-\frac{e}{2m}\frac{\bar\lambda}{\bar v}E\)
不知道大家还记不记得恒定电流的表达式,我们需要用它推出\(U\)与\(I\)的关系。取一段垂直于导线的面元\(\Delta S\)。从宏观上来看,我们可以认为所有电子都用同一速度\(u\)运动。在时间\(\Delta t\)内电子移过的距离为\(u\Delta t\)。以\(\Delta S\)为底,\(u\Delta t\)为高作一柱体,设导体内电子密度为n,则此柱体内有\(nu\Delta t\Delta S\)个自由电子。在\(\Delta t\)时间内通过\(\Delta S\)的电量为\(\Delta q= neu\Delta t\Delta S\),那么\(I=\frac{\Delta q}{\Delta t}=neu\Delta S\)
将前面关于u的式子带入此式,得\(I=-\frac{ne^2}{2m}\frac{\bar\lambda}{\bar v}E=-\frac{ne}{2m}\frac{\bar\lambda}{\bar v}U\)。由于\(n,e,m,\bar\lambda\)在任何情况下都是不变的,而\(\bar v\)在温度不变时是不变的,因此温度不变时\(\frac{U}{I}\)不变。
由于\(\frac{U}{I}\)在温度不变时不变,并且在相同的电压下,\(\frac{U}{I}\)越大,\(I\)越小,即导体对电流的阻碍作用越大,因此将\(R=\frac{U}{I}\)称作导体的电阻,表示导体对电流的阻碍作用。
——《新概念物理·电磁学》p305 金属导电的经典电子论
顺着把粒子抽象成可以完全弹性碰撞的刚体的思路,我想:能不能用cocos把这个模型用计算机建立起来?如果真的完成了这个项目,那它能模拟的就不只是欧姆定律的证明,还有物理选修3-1中静电场和恒定电流的全部实验内容。
Cocos2d-x学习小结 开始篇的更多相关文章
- Cocos2d-x学习小结 配置篇
Cocos2d-x学习小结 配置篇 学习工具:Cocos2d-x用户手册,<Cocos2d-x游戏开发之旅> 首先官网下载cocos2d-x源码,安装vs2019.如果没有安装python ...
- flex学习小结
接触到flex一个多月了,今天做一个学习小结.如果有知识错误或者意见不同的地方.欢迎交流指教. 画外音:先说一下,我是怎么接触到flex布局的.对于正在学习的童鞋们,我建议大家没事可以逛逛网站,看看人 ...
- (转) Parameter estimation for text analysis 暨LDA学习小结
Reading Note : Parameter estimation for text analysis 暨LDA学习小结 原文:http://www.xperseverance.net/blogs ...
- python --- 字符编码学习小结(二)
距离上一篇的python --- 字符编码学习小结(一)已经过去2年了,2年的时间里,确实也遇到了各种各样的字符编码问题,也能解决,但是每次都是把所有的方法都试一遍,然后终于正常.这种方法显然是不科学 ...
- fastbin attack学习小结
fastbin attack学习小结 之前留在本地的一篇笔记,复习一下. 下面以glibc2.23为例,说明fastbin管理动态内存的细节.先看一下释放内存的管理: if ((unsigned ...
- 一步步学习javascript基础篇(0):开篇索引
索引: 一步步学习javascript基础篇(1):基本概念 一步步学习javascript基础篇(2):作用域和作用域链 一步步学习javascript基础篇(3):Object.Function等 ...
- Python 学习小结
python 学习小结 python 简明教程 1.python 文件 #!/etc/bin/python #coding=utf-8 2.main()函数 if __name__ == '__mai ...
- 一步步学习javascript基础篇(3):Object、Function等引用类型
我们在<一步步学习javascript基础篇(1):基本概念>中简单的介绍了五种基本数据类型Undefined.Null.Boolean.Number和String.今天我们主要介绍下复杂 ...
- react学习小结(生命周期- 实例化时期 - 存在期- 销毁时期)
react学习小结 本文是我学习react的阶段性小结,如果看官你是react资深玩家,那么还请就此打住移步他处,如果你想给一些建议和指导,那么还请轻拍~ 目前团队内对react的使用非常普遍,之 ...
随机推荐
- 后端&前端零碎知识点和注意问题
后端 1. Spring自带的MD5加密工具类 import org.springframework.util.DigestUtils; String md5Password = DigestUtil ...
- OpenLayers加载谷歌地球离线瓦片地图
本文使用OpenLayers最新版本V5.3.0演示:如何使用OpenLayer加载谷歌地球离线瓦片地图.OpenLayers 5.3.0下载地址为:https://github.com/openla ...
- C 语言 基础篇
1.机器语言 2.汇编语言 3.高级语言:C.C++.Java(基于虚拟机) C语言开发:Unix,Linux,Mac OS,iOS,Android,Windows,Ubuntu 开发环境:visua ...
- UnicodeEncodeError: 'ascii' codec can't encode characters in position 18-22: ordinal not in range(128)
文件,放在site-package \Python27\Lib\site-packages sitecustomize.py # -*- coding: utf-8 -*- import sy ...
- 基于Spark2.X系列的累加器和Streaming基础
一.累加器API 关于累加器,前面我也写了一篇博客,顺便粘贴这儿,对比学习,Spark学习之编程进阶总结(一).Spark 2.0系列引入了一个更加简单和更高性能的累加器API,如在1.X版本中可以这 ...
- git 学习笔记 -- 创建标签
在Git中打标签非常简单,首先,切换到需要打标签的分支上: $ git branch * dev master $ git checkout master Switched to branch 'ma ...
- 小程序canvas绘制base64数据格式图片
翻了微信小程序官方文档,看了看画板drawImage的用法,官方对所要绘制的图片资源路径并没有很详细,模棱两可,没说支持什么格式的路径.今天我就试一下支不支持base64格式的图片 随便找张图片从网上 ...
- spring使用JUnit测试,@Autowired无法注入原因
在测试类上加入配置文件 代码如下 @RunWith(SpringJUnit4ClassRunner.class)// SpringJUnit支持,由此引入Spring-Test框架支持! @Cont ...
- 回归写博客时间-----CeliaTodd
2019-10-17-19:28:01 记录自己的学习路程 国庆期间本来是有持续写博客的,但是有各种原因就没时间写博客了, 但是学习的进度还是没有落下的,现在正式回归写博客的时间了. 但现在不是写Py ...
- Java自学-数组 排序
Java 数组选择法,冒泡法排序 步骤 1 : 选择法排序 选择法排序的思路: 把第一位和其他所有的进行比较,只要比第一位小的,就换到第一个位置来 比较完后,第一位就是最小的 然后再从第二位和剩余的其 ...