用Python画出极坐标的基向量

文章目录

    • 极坐标基向量的推导
    • 可视化

极坐标基向量的推导

极坐标其实很神奇,一方面,它描述的是平直时空,另一方面,任意两点间的坐标差为 d r , d θ \text dr, \text d\theta dr,dθ时,两点间的距离却是不固定的。极坐标到直角坐标的转换函数为

x = f x ( r , θ ) = r cos ⁡ θ y = f y ( r , θ ) = r sin ⁡ θ x=f_x(r,\theta)=r\cos\theta\quad y=f_y(r,\theta)=r\sin\theta x=fx(r,θ)=rcosθy=fy(r,θ)=rsinθ

考虑到行文简洁,在不引起歧义的情况下,用 x , y x,y x,y来表示 f x , f y f_x, f_y fx,fy

r , θ r,\theta r,θ求偏导数,就可以得到二者在转换为直角坐标是时的变化情况,则

d s = d x 2 + d y 2 \text ds=\sqrt{\text dx^2+\text dy^2}\\ ds=dx2+dy2

其中

d x = ∂ x ∂ r d r + ∂ x ∂ θ d θ d y = ∂ y ∂ r d r + ∂ y ∂ θ d θ → [ d x d y ] = [ ∂ x ∂ r ∂ x ∂ θ ∂ y ∂ r ∂ y ∂ θ ] [ d r d θ ] \begin{aligned} \text dx=\frac{\partial x}{\partial r}\text dr+\frac{\partial x}{\partial\theta}\text d\theta\\ \text dy=\frac{\partial y}{\partial r}\text dr+\frac{\partial y}{\partial\theta}\text d\theta \end{aligned}\to \begin{bmatrix} \text dx\\ \text dy \end{bmatrix}=\begin{bmatrix} \frac{\partial x}{\partial r}&\frac{\partial x}{\partial \theta}\\ \frac{\partial y}{\partial r}&\frac{\partial y}{\partial \theta} \end{bmatrix}\begin{bmatrix} \text dr\\\text d\theta \end{bmatrix} dx=rxdr+θxdθdy=rydr+θydθ[dxdy]=[rxryθxθy][drdθ]

e r = [ ∂ x ∂ r , ∂ y ∂ r ] e_r=[\frac{\partial x}{\partial r}, \frac{\partial y}{\partial r}] er=[rx,ry] e θ = [ ∂ x ∂ θ , ∂ y ∂ θ ] e_\theta=[\frac{\partial x}{\partial\theta}, \frac{\partial y}{\partial\theta}] eθ=[θx,θy],称作极坐标系的基向量。

可以看到,这个基向量在不同的位置 ( x , y ) (x,y) (x,y)处的值显然是不同的,将其带入极坐标和直角坐标的换算关系,就可以得到基向量的具体表达式,

e r = [ cos ⁡ θ , − r sin ⁡ θ ] e θ = [ sin ⁡ θ , r cos ⁡ θ ] e_r=[\cos\theta, -r\sin\theta]\\ e_\theta=[\sin\theta, r\cos\theta] er=[cosθ,rsinθ]eθ=[sinθ,rcosθ]

可视化

下面可以绘制一下这个基向量,采用matplotlib中的quiver函数。

import numpy as np
import matplotlib.pyplot as pltM, N = 10, 20
r, th = np.indices([M, N])
r = r/10
th = th/N*np.pi*2X, Y = r*np.cos(th), r*np.sin(th)U1, V1 = np.cos(th), -r*np.sin(th)
U2, V2 = np.sin(th), r*np.cos(th)style = dict(width=0.005, headwidth=8, headlength=6, headaxislength=4)
fig, ax = plt.subplots(1, 2, figsize=(8,4))
ax[0].quiver(X, Y, U1, V1, np.sqrt(U1**2+V1**2), **style)
ax[1].quiver(X, Y, U2, V2, np.sqrt(U2**2+V2**2), **style)
plt.tight_layout()
plt.show()

效果如下

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/84666.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Leetcode刷题之1658. 将 x 减到 0 的最小操作数

题目: 算法分析: 可以看出,这道题本意是从计算两侧和为x 的数字, 要求数量最少, 那我们可以反向思考, 假如整个数组的和为sum, 那么我们就可以求中间部分和为sum-x的数字(当然必须连续), 当中间部分的数字同时达到和为sum-x以及长度最长两个要求时, 两侧数字也就达到了和为x以…

嵌入式设备应用开发(发现需求和提升价值)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】 很多做技术的同学,都会陷入到技术的窠臼之中。对于如何做具体的产品、实现具体的技术,他们可能很感兴趣。但是做出来的东西做什么用,或者说是有没有竞争力,事实上他们不是很关心…

#systemverilog# 之 event region 和 timeslot 仿真调度(六)疑惑寄存器采样吗

一 象征性啰嗦 想必大家在刚开始尝试写Verilig HDL代码的时候,都是参考一些列参考代码,有些来自于参考书,有些来自于网上大牛的笔记,甚至有写来自于某宝FPGA开发板的授权代码。我还记得自己当时第一次写代码,参考的是一款Altera 芯片,结合Quartus 开发软件, 在上面练习…

CFC编程入门_【10分钟学会】

什么是CFC: 【差不多10分钟全学会】 CFC是图形化编程, 跟单片机的连线一样, 唯一的区别:功能块右侧是【只能输出】引脚。 只有左侧引脚可以输入输出。 有哪些控件: 指针:用于拖动功能块。 控制点&#xf…

opencv进阶14-Harris角点检测-cv2.cornerHarris

类似于人的眼睛和大脑,OpenCV可以检测图像的主要特征并将这 些特征提取到所谓的图像描述符中。然后,可以将这些特征作为数据 库,支持基于图像的搜索。此外,我们可以使用关键点将图像拼接起 来,组成更大的图像。&#x…

抖音web主页视频爬虫

需要抖音主页视频爬虫源码的发私信,小偿即可获得长期有效的采集程序。 比构造 s_v_web_id 验证滑块的方法更快,更稳定。

【HSPCIE仿真】输入网表文件(1)基本内容和基本规则

输入网表文件 1. 输入网表文件基本内容2. 输入网表文件示例3. 一些基本规则4. 数值表示5. 压缩文件格式的读取6. 参数和表达式 从HSPICE的仿真流程看,出去初始化配置过程,真正的仿真是从输入网表文件开始的。 HSPICE 根据输入网表文件( inpu…

iconfont 图标在vue里的使用

刚好项目需要使用一个iconfont的图标,所以记录一下这个过程 1、iconfont-阿里巴巴矢量图标库 这个注册一个账号,以便后续使用下载代码时需要 2、寻找自己需要的图标 我主要是找两个图标 ,一个加号,一个减号,分别加入到…

【C++】容器适配器stack、queue以及deque容器

🏖️作者:malloc不出对象 ⛺专栏:C的学习之路 👦个人简介:一名双非本科院校大二在读的科班编程菜鸟,努力编程只为赶上各位大佬的步伐🙈🙈 目录 前言一、什么是容器适配器1.1 stack的…

[Linux]文件IO

文章目录 1. 文件描述符1.1 虚拟地址空间1.1.1 存在的意义1.1.2 分区 1.2 文件描述符1.2.1 文件描述符1.2.2 文件描述符表 2. Linux系统文件IO2.1 open/close2.1.1 函数原型2.1.2 close函数原型2.1.3 打开已存在文件2.1.4 创建新文件2.1.5 文件状态判断 2.2 read/write2.2.1 re…

kubernetes--技术文档-真--集群搭建-三台服务器一主二从(非高可用)附属文档-使用不同运行商服务器-搭建公网集群

!!!!!版本!!!! 使用公网初始化 Kubernetes 需要 Kubernetes 版本 1.19 或更高版本。在早期的版本中,Kubernetes 还不支持公网初始化。因此,请确保…

怎么把pdf转换成jpg格式?

怎么把pdf转换成jpg格式?在我们日常的办公过程中,PDF文件是一个经常被使用来传输文件的格式。它能够确保我们的文件内容不会混乱,并以更加完美的方式呈现出来。然而,PDF文件也存在一些缺陷。例如,它无法直接编辑&#…