曲线绕x轴旋转曲面方程_空间曲线绕空间直线旋转生成的旋转曲面方程
校内建模的一道题,虽然我认为这么trivial的东西前人早就造好轮子了,但是找遍所有能找到的网络资料、文献都没找到答案,只好自己造了个轮子。
设空间曲线
其中
证明:
首先,任取
因为
因此
将③④⑤代入②:
令
可以反解出
为了形式简洁起见,令
其中如果
如果
再将
其中
证毕。
一个引理都没用到的证明,就不给例子了,回头赶作业了,困死了。
来自半年后的更新——
新增MATLAB代码实现交互式输入:
注意,本代码仅支持直线绕直线旋转!!!
曲线绕直线旋转写代码太麻烦了,而且反函数不一定单值,处理起来很麻烦。
代码如下——
%先输入为被旋转曲线的参数方程
%再输入转轴的标准方程
close all;clear all;clc;
disp('请输入首先被旋转曲线'); %输入提示信息
prompt1='请输入x=f(t),例如x=2t+3,则输入数组[2 3]nx=';
f=input(prompt1);
prompt2='请输入y=g(t),例如y=4t+5,则输入数组[4 5]ny=';
g=input(prompt2);
prompt3='请输入z=h(t),例如y=6t+7,则输入数组[6 7]nz=';
h=input(prompt3);
disp(['您的被旋转曲线方程是:']);
disp(['x=(' num2str(f(1)) ')×t+(' num2str(f(2)) ')']);
disp(['y=(' num2str(g(1)) ')×t+(' num2str(g(2)) ')']);
disp(['z=(' num2str(h(1)) ')×t+(' num2str(h(2)) ')']);
disp('请输入首先旋转轴的直线标准方程:(x-x0)/m=(y-y0)/n=(z-z0)/p'); %输入提示信息
prompt4='请输入数组[m n p]n[m n p]=';
mnp=input(prompt4);
prompt5='请输入数组[x0 y0 z0]n[x0 y0 z0]=';
xyz=input(prompt5);
disp(['您的旋转轴直线方程是:']);
disp(['(x-(' num2str(xyz(1)) '))/(' num2str(mnp(1)) ')=']);
fprintf("%c",8) %删掉换行符号
disp(['(y-(' num2str(xyz(2)) '))/(' num2str(mnp(2)) ')=']);
fprintf("%c",8) %删掉换行符号
disp(['(z-(' num2str(xyz(3)) '))/(' num2str(mnp(3)) ')']);
F=[mnp(1)*f(1)+mnp(2)*g(1)+mnp(3)*h(1),mnp(2)*f(2)+mnp(2)*g(2)+mnp(3)*h(2)];
disp(['F=(' num2str(F(1)) ')t+(' num2str(F(2)) ')']) %调试用
if(F(1)==0)disp(['两直线垂直,方程退化,不予输出']);return;
end
F_1=[1/F(1) -F(2)/F(1)]; %F的逆为(1/a)t+(-b/a)
disp(['F^(-1)=(' num2str(F_1(1)) ')t+(' num2str(F_1(2)) ')']) %调试用
syms x y z;
F_1u=F_1(1)*(mnp(1)*x+mnp(2)*y+mnp(3)*z); %F^(-1)(mx+ny+pz)
Gamma=(x-xyz(1))^2+(y-xyz(2))^2+(z-xyz(3))^2 ...
-(f(1)*F_1u+f(2)-xyz(1))^2-(g(1)*F_1u+g(2)-xyz(2))^2-(h(1)*F_1u+h(2)-xyz(3))^2;
Gamma=expand(Gamma);
disp(['旋转曲面方程为:' char(Gamma) '=0']);
prompt6='请输入绘图区域[x0 x1 y0 y1 z0 z1],如输入0,则为默认区间n';
plotrange=input(prompt6);
if length(plotrange)==6fimplicit3(Gamma,plotrange); %绘图
elsefimplicit3(Gamma); %绘图
end
xlabel('x');
ylabel('y');
测试输入1:
%测试样例1:圆锥
[1 0]
[0 0]
[1 0]
[0 0 1]
[0 0 0]
0
用户交互界面如下:
绘图效果如下:
测试样例2:
%测试样例2:奇怪的图形
[2 3]
[4 5]
[6 7]
[1 2 3]
[4 5 6]
[-15 15 -15 15 0 20]
用户交互界面如下:
绘图效果如下:
好了,去赶电磁学作业了。为啥网页上写的4月2日提交,截止日期设置的4月8日。今天4月4日才发现,哭了。
曲线绕x轴旋转曲面方程_空间曲线绕空间直线旋转生成的旋转曲面方程相关推荐
- matlab将图片旋转的代码_空间曲线绕空间直线旋转生成的旋转曲面方程
校内建模的一道题,虽然我认为这么trivial的东西前人早就造好轮子了,但是找遍所有能找到的网络资料.文献都没找到答案,只好自己造了个轮子. 设空间曲线 : 绕 : 旋转得到的曲面方程为 ,则 的方程 ...
- 曲线绕x轴旋转曲面方程_几何代数50 ----柱面及其方程
回顾:圆柱面 圆柱面可以视为到一定直线的距离等于常数的动点的轨迹. 圆柱面也可以视为动直线绕一条平行的定直线旋转所得的旋转曲面. 圆柱面也可以视为动直线在圆周C上平行移动得到的曲面. 图一 1.柱面的 ...
- 三维空间中曲线绕任意轴旋转所得的旋转曲面求法
三维空间中曲线绕任意轴旋转所得的旋转曲面求法 对2023汤家凤考研高等数学讲义225页2.三维空间直线旋转曲面的解释和推广 ©️ sylvanding
- matlab线旋转成面,用matlab怎么绘制一条曲线绕z轴旋转生成的曲面?
用matlab怎么绘制一条曲线绕z轴旋转生成的曲面? 已知数据如下: x z y -398.10815554637100 391.8559758318630 690.066133543041 -381 ...
- android 动画x轴旋转,Android Roate3dAnimation实现围绕y轴竖直方向或者绕x轴方向旋转的3d动画效果...
概要: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Roate3dAnim ...
- 曲线绕x轴旋转曲面方程_曲线C绕y轴旋转所成的旋转曲面的方程为.PPT
曲线C绕y轴旋转所成的旋转曲面的方程为 曲面之柱面.旋转面.椭球面 欧阳顺湘 北京师范大学 Recall 曲面方程(Equations for a Surface): 更多曲面 柱 面 旋转面 椭球面 ...
- 曲线绕x轴旋转曲面方程_绕x轴旋转(微积分旋转体绕y轴旋转体积~我看不懂图片上的公式~...)...
关于空间曲线(参数方程)绕x轴旋转得到的曲面方程 绕哪个轴旋转,那个坐标不变,另一个的平方变,坐标的平方和绕轴旋转. 由一些在指定的集的数,称为参数或自变量,以决定因变量的结果.例如在运动学,参数通常 ...
- 曲线绕x轴旋转曲面方程_曲线绕着Ox轴旋转所得的曲面方程是______。
曲线绕着Ox轴旋转所得的曲面方程是______. 更多相关问题 [单选] 清明是民间祭奠亡者的重要时候.在这个节日里,人们会不约而同地云集在骨灰寄存处,进行祭祀活动.清明烧纸是最普遍的民俗,也是()的 ...
- matlab 定义一个有自变量的方程_常微分方程:(第四章) 高阶微分方程
参考<常微分方程>第三版(王高雄) 常微分方程王高雄 第四章 高阶微分方程_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.com 对于高阶微分方程,线性部分 ...
最新文章
- 已知环境静态障碍物避障_我女儿如何教我无障碍环境
- [No000016D]把知识种进脑子:像读教材一样读书
- LiveVideoStackCon 2018 注册通道即将关闭
- oFono安装和启动
- 轮廓检测_轮廓检测| Richer Convolutional Features | CVPR | 2017
- 从pg_hba.conf文件谈谈postgresql的连接认证
- 【python基础知识】Tkinter基础
- python在哪里写代码-程序员面试被要求手写代码,你与顶级程序员的差别在哪?...
- Atitti 存储引擎支持的国内点与特性attilax总结
- javweb音乐网站_基于javaweb音乐网站设计与实现
- vs2003转为vs2010的问题
- 随机划分训练集和测试集
- 计算机无法进去系统,电脑开机后进不了系统的解决方法步骤图
- css怎样 锚定位,CSS:如何定位内部锚
- 重要短信通知解决方案(短信通知+语音播报自动双呼)
- 【实用代码】选项卡切换——带标题底纹样式
- python实用小工具
- GCSE英语语言考试-角色定位
- oracle中表结果对比,ORACLE 两个表或两个结果集的数据对比常用的函数
- CMake 使用方法 http://www.cnblogs.com/lyq105/archive/2010/12/03/1895067.html
热门文章
- springMVC参数的传递方式(1.通过@PathVariabl获取路径参数,2.@ModelAttribute获取数据,3.HttpServletRequest取参,4@RequestParam)
- 表的插入、更新、删除、合并操作_21_合并表中数据
- 表的插入、更新、删除、合并操作_6_通过多表关联插入
- 关于__init、__initdata和__exit、__exitdata的学习笔记
- OpenCV中图像水平拼接函数hconcat的使用
- matlab中.P文件的使用说明
- 算法简介、7种算法分类
- Unity C#基础之 反射反射,程序员的快乐
- CCNA--OSI、TCP/IP
- apache日志记录格式LogFormat参数说明