光学问题求教,棱镜反射问题。举全家之力算了一晚上,越算越复杂,拿推导得到的方程带入ex
http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_603336UG9VT6.PNG(原文件名:棱镜分析.PNG) 怎么又碰到个问这个问题的? 难道楼上刚被问了。。。。。。 这个示意图是不是有些问题呢?转过一定角度之后反射点应该也变动了吧 是啊,反射点在垂直和水平方向上都会移动,这就使计算复杂了。。。。这个是简易的示意图,我承认不够严谨。 有点麻烦,有时间的话,明天算一下 你先说是不是还要考虑N棱镜的情况? 这个问题是个老问题了 回复【7楼】hulaoban
-----------------------------------------------------------------------
能否给我讲讲 mark,等待高人指点 令x为开始时法线与下平面焦点到A点的距离,则
delta x = 2x - (((x/sin alpha) - d)*sin(2(alpha - theta))/cos(2theta - alpha) )
其中 d = R(1 - cos theta) / cos(alpha - theta)
R为内接圆半径 楼上要测光速? 我的眼里lz的图就是激光打印机激光器的内部……………… 这个应该是条码扫描仪上的。。超市收银台的那种 同时上面还缺少几个参数。菱镜的详细参数 我认为只是~~~~ 三角(沟股)定律的 演化 大不了就是 几个三角型在变由一个边的变化开始带动整个几何的变化。A的A1 边约束 B的 B1边 B2边又去约束C1边 也可能是在作 激光投影机~~~ 呵呵不知有没猜中 回复【10楼】eggcar 八号机
令x为开始时法线与下平面焦点到a点的距离,则
delta x = 2x - (((x/sin alpha) - d)*sin(2(alpha - theta))/cos(2theta - alpha) )
其中 d = r(1 - cos theta) / cos(alpha - theta)
r为内接圆半径
-----------------------------------------------------------------------
R是外接圆的半径吧?就是缺少R这个参数 不好意思,是内切圆半径,直接算就好了,棱镜的边知道的… 有点复杂,可能要建立直接坐标系,用解析几何去算,晚上回去算一算 http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_603428WPAYQ6.png
(原文件名:QQ截图未命名2.png)
可以作为高考压轴题了。
这里的难度是镜面是变化的,普通方法不好算。应该是,
先算出镜面的直线方程(不要跟我说不可以)
然后算出光源的镜像点。
然后根据 镜面线斜率 和 入射光线斜率 练个斜率求出 镜像点到成像点连线的斜率
根据斜率 求出A点。
最后一步才是是关键,求导。
当然思路说的简单,真正算起来只有高三的学生有耐心算下去了,no money no talk。
这里千万不要迷失在 入射线与镜面的交点上,很难算的。
方法很多,但是,镜像法在这里是很有效率的。
还有记得 中点坐标的 巧妙利用 (xm=(x1+x2/2) ym=(y1+y2)/2 那个) 我的做法是这样的,具体算就复杂了
1、以入射光线和参考水平线的交点为原点建立直角坐标系,那么可以求得旋转之前入射点的坐标为( (d-R)*tan(alpha),d-R ),记为(x0,y0),并求得反射镜面的直线方程为 y = y0
2、设旋转之后的反射面方程为 y = kx + b,其中 k = tan(180-theta),只需求出b即可
3、菱形的中心到边的距离是 L = R*sin(60),根据点到直线的距离公式 |y0 - k*x0 - b|/(sqrt(1+k*k)) = L,可以求出b
4、旋转后的反射面方程求出来了,入射光线的方程为 y = tan(90-alpha) * x,联立反射面和入射光线方程,可以求出入射点坐标,记为(x1,y1)
5、旋转后的反射光线的倾斜角很容易求,好像是90-2*theta+alpha,又过入射点,那么可以求出这个方程,方程一求出,什么都出来了 回复【16楼】jrcsh邪恶的小会会
也可能是在作 激光投影机~~~ 呵呵不知有没猜中
-----------------------------------------------------------------------
我开始也以为是这个 是在做激光投影,不过是单线的,呵呵。做个激光UV表玩玩。本来以为很简单,做了才发现那么复杂。
昨晚得到的结果是这样的,不过放到excel里面去算,感觉算出来的数值很不对劲。
http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_603444T5CHHJ.PNG
(原文件名:幻灯片1.PNG) 如果是还是高三到大一这段时间内,就应该是小case了,现在做,得翻下课本公式先 这东西高中的家伙也作出来了 回复【25楼】jrcsh 邪恶的小会会
-----------------------------------------------------------------------
我要虚心向你求教,你能帮我看看我得到的方程对吗? 以AA'线为X轴,入射光线与X轴交点微远点作坐标系;设a是棱镜与X轴平行时入射光的角度,棱镜中心坐标为(l,d),外接圆半径r;
入射线方程为:y=x*tg(90°-a),与入射线干涉的棱镜边方程为:y=x*tgθ+l*tg|θ|+d-r*cos30°;
利用以上两方程可以得出棱镜上的入射点方程为:x=(l*tg|θ|+d-r*cos30°)/(tg(90°-a)-tgθ);y=x*tg(90°-a);
即可得出A'在x轴的点为:x=l+y*tg(a+θ)[注意θ旋转方向,逆时针为+;注意每转过60°即为一周期] 回复【26楼】oufuqiang 欧福强
回复【25楼】jrcsh 邪恶的小会会
-----------------------------------------------------------------------
我要虚心向你求教,你能帮我看看我得到的方程对吗?
-----------------------------------------------------------------------
很不兴。。。。数学我学得不好。。。这类方程公式我只能洗洗睡了。。
(我的数学水平停留在初中一级左右。。不要笑事实是这样的 所以在算法上我很差)
或许过完这个月 我就有空一起学习一下这东西
(捷径。。直接转动光凌柱,,记录角度与长度的变化。。用这堆数据分析后。逆出/测出公式。。。用这个方法的下边的就不用看了)
说说我对这东西的理解把
做个激光UV表 (UV表..确定一下是不是 就是哪个 柱型指示的还是 表针型的,看你的图是 柱型多的多点 )
这东西要显示出来也就是要作到人眼的视觉停留,保持发光多少分之一秒就有效果了
上baidu 查得 反射角=入射角
在画一下看到的条件。。。 还真是要翻初一的课本。。。。
http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_603662OQO6DO.JPG
(原文件名:QQ截图未命名.JPG)
上个图还是 灰溜溜的跑了。。。。
话说~~~~会的家伙也不出来一下 说说是用了什么方法实现的(不方便公开哪家伙ID。) mark 6角边也用利用上 图上没画出来 回复【楼主位】oufuqiang欧福强
-----------------------------------------------------------------------
http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_603675ZIQNSE.JPG
(原文件名:111.JPG) 说的是交点移动吗? 你如果只是要一个对照表,最笨的办法就是直接上AutoCAD作图,然后根据你的旋转步进角度作图、测量。 楼主是搞激光打印机的么? 这样的结构A的光电在一个平面上的移动是变速度的,而且光斑的大小也是变化的。 http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_603833Y7VNS4.png
(原文件名:QQ截图未命名.png)
http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_603795LVLVIP.png
(原文件名:QQ截图未命名3.png)
我慢慢算,欢迎检查有无错漏,因为计算量好大。
废话少讲:h 棱镜的高,l请看图,k1k2k3都是斜率()。e是转动角,那个字母打不出。
镜像点是(x0',y0')未知
中点是((x0'+tg(a)l)/2,y0'/2)未知
移动后的棱镜边的中点是(-hsin(e),d-hcos(e))已知
/////////////////////////////////////////////////////////////////////////////////////////////////
镜面线的斜率是-ctg(e)有
(d-hcos(e)-y0'/2) / (-hsin(e)-(x0'+tg(a)l)/2) =-ctg(e)
镜像点与光源点的连线的斜率是 ctg(e)
y0'/x0'-tg(a)l =ctg(e)
我得出的结果是
x0'=2dsin(e)-2htg(e)+tg(a)l(cos(e)-sin(e)平/cos(e)) / ( sin(e)+cos(e) )
y0'=2dcos(e)-2h / ( sin(e)+cos(e) )
其实方程容易解,不过结果很长而已(高考题一般会防止这个出现的,一般可以化简的)
//////////////////////////////////////////////////////////////////////////
根据光学的知识结合斜率知识
tg(a-e)=tg(a)-tg(e)/1+tg(a)tg(e)
tg(pi/2-e)+tg(x) /1+tg(e)tg(x)=tg(a)-tg(e)/1+tg(a)tg(e),,,AB两个角相等
我解出:
tg(x)=-(ctg(e)+tg(e))/2tg(a)tg(e)
就是说出射光的斜率是tg(x)=-(ctg(e)+tg(e))/2tg(a)tg(e)
等下求交点(最后一步啦)
设交点A'是(xd,0)
tg(x)=y0'-0/x0'-xd ;即xd=x0'-(y0'/tg(x))
算出来是
( 2d (sin(e)-cos(e)平/sin(e)) + tg(a)l (cos(e)-sin(e)平/cos(e)) +2h(ctg(e)-tg(e)) )/( sin(e)+cos(e) )
我有空再算一次,请excel验证
献丑啦 其实整过过程就是用了斜率的计算公式 k=y1-y2/x1-x2
当然用到了镜像点去作图的技巧(可以不管入射点的具体位置)
刚才的k1k2k3没提到,作废 http://cache.amobbs.com/bbs_upload782111/files_35/ourdev_603931EG973D.jpg
(原文件名:QQ截图未命名.jpg)
点击此处下载 ourdev_603932MNA9WJ.pdf(文件大小:19K) (原文件名:光学计算 Model (1).pdf)
编辑原因:更新A'点横坐标 回复【38楼】i7456
-----------------------------------------------------------------------
崇拜楼上,不过你的图点开了还是有点小,那个公式仍然看不清楚。 回复【39楼】oufuqiang 欧福强
-----------------------------------------------------------------------
附件文件有清晰大图,PDF格式
页:
[1]