【Scipy】菲涅尔积分和羊角螺线

news2024/10/9 18:20:57

文章目录

    • 菲涅尔积分简介
    • 复数域的菲涅尔积分
    • 羊角螺线

菲涅尔积分简介

菲涅尔积分一般被写为 S ( x ) S(x) S(x) C ( x ) C(x) C(x),定义为

S ( x ) = ∫ 0 x sin ⁡ ( t 2 ) d t = ∑ n = 0 ∞ ( − 1 ) n x 4 n + 3 ( 2 n + 1 ) ! ( 4 n + 3 ) C ( x ) = ∫ 0 x cos ⁡ ( t 2 ) d t = ∑ n = 0 ∞ ( − 1 ) n x 4 n + 1 ( 2 n ) ! ( 4 n + 1 ) S(x)=\int^x_0\sin(t^2)\text dt=\sum^\infty_{n=0}(-1)^n\frac{x^{4n+3}}{(2n+1)!(4n+3)}\\ C(x)=\int^x_0\cos(t^2)\text dt=\sum^\infty_{n=0}(-1)^n\frac{x^{4n+1}}{(2n)!(4n+1)}\\ S(x)=0xsin(t2)dt=n=0(1)n(2n+1)!(4n+3)x4n+3C(x)=0xcos(t2)dt=n=0(1)n(2n)!(4n+1)x4n+1

接下来在scipy中调用fresnel,并绘制其曲线

import numpy as np
from scipy.special as ss
xs = np.arange(-500,500)/100
s, c = ss.fresnel(xs)
plt.plot(xs, s)
plt.plot(xs, c)
plt.show()

效果为

在这里插入图片描述

复数域的菲涅尔积分

scipy中的fresnel的定义域可拓展到复数域,则当其自变量为复数时,其函数图像如下

在这里插入图片描述

绘图代码为

fig = plt.figure()

ax = fig.add_subplot(2,3,1,projection='3d')
ax.plot_surface(xs, ys, np.real(c))
ax.set_title("real(c)")
ax = fig.add_subplot(2,3,2,projection='3d')
ax.plot_surface(xs, ys, np.imag(c))
ax.set_title("imag(c)")
ax = fig.add_subplot(2,3,3,projection='3d')
ax.plot_surface(xs, ys, np.abs(c))
ax.set_title("abs(c)")

ax = fig.add_subplot(2,3,4,projection='3d')
ax.plot_surface(xs, ys, np.real(s))
ax.set_title("real(s)")
ax = fig.add_subplot(2,3,5,projection='3d')
ax.plot_surface(xs, ys, np.imag(s))
ax.set_title("imag(s)")
ax = fig.add_subplot(2,3,6,projection='3d')
ax.plot_surface(xs, ys, np.abs(s))
ax.set_title("abs(s)")

plt.show()

也可以绘制其实部的为彩图,

xs, ys = np.indices([300,300])/100-1.5
s, c = ss.fresnel(xs + 1j*ys)
fig = plt.figure()
fig.add_subplot(1,2,1)
plt.imshow(np.real(c), cmap=plt.cm.prism)
plt.axis('off')
fig.add_subplot(1,2,2)
plt.imshow(np.real(s), cmap=plt.cm.prism)
plt.axis('off')
plt.show()

出图如下

在这里插入图片描述

羊角螺线

Fresnel积分但看上去似乎平平无奇,但二者一经结合,就会出现神奇的效果,这里甚至不需额外的操作,只需将二者之间的关系一一对应起来即可

plt.scatter(np.real(s), np.real(c), marker='.')
plt.show()

可以得到一个好像翅膀的图像

在这里插入图片描述

如果将实数的菲涅尔积分的sc分量的对应关系画出,则会得到所谓的羊角螺线

在这里插入图片描述

绘图代码为

xs = np.arange(-500,500)/100
s, c = ss.fresnel(xs)
plt.plot(s,c)
plt.grid()
plt.show()

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot中如何优雅的使用多线程

本文带你快速了解Async注解的用法,包括异步方法无返回值、有返回值,最后总结了Async注解失效的几个坑。 在 SpringBoot 应用中,经常会遇到在一个接口中,同时做事情1,事情2,事情3,如果同步执行的…

【翻译】为深度学习购买哪种GPU: 我在深度学习中使用GPU的经验和建议

文章目录概述GPU是如何工作的?对深度学习处理速度最重要的GPU规格张量核心没有张量核心的矩阵乘法使用张量核心的矩阵乘法带有张量核心和异步拷贝的矩阵乘法(RTX 30/RTX 40)和TMA(H100)内存带宽二级缓存/共享内存/一级…

服务器遭受cc攻击的处置策略

如果服务器遭到了CC攻击,你可以采取以下措施来解决问题:使用防火墙和安全组进行限制:限制服务器的流量以防止进一步的攻击。升级服务器资源:为了应对更高的流量,可以升级服务器的内存,处理器等资源。安装防…

字节跳动青训营--前端day5

文章目录前言一、初识HTTP拓展—输入地址到页面渲染发生了哪些事情二、协议分析1.发展2.报文2.1 请求报文:请求行:请求头主体2.2 响应报文:状态行响应头响应正文2.3缓存3.发展3.1 Http23.2 Https前言 仅以此文章记录学习历程 一、初识HTTP …

kubernetes核心概念 Service

kubernetes核心概念 Servicekubernetes核心概念 Service一、 service作用二、kube-proxy三种代理模式2.1 UserSpace模式2.2 iptables模式2.3 ipvs模式2.4 iptables与ipvs对比三、 service类型3.1 service类型3.2 Service参数四、 Service创建4.1 ClusterIP类型4.1.1 普通Cluste…

1月安全月报 | 2亿Twitter用户数据被公开;美计划发起“黑掉五角大楼3.0”漏洞赏金计划

目录 国外安全热点 👉安全政策 👉数据安全 👉市场趋势 👉勒索事件 国内安全热点 👉数据安全 👉业务安全 👉移动安全 👉网安政策 为了让大家更全面的了解网络安全的风险&am…

精读JavaScript中的代理(Proxy)与反射(Reflect)

目录 定义与概念 属性及函数 Proxy Reflect 使用场景 如何实现 实现过程 运行效果 应用限制及优点 写在最后 定义与概念 JavaScript中的Proxy与Reflect是ES6中引入的新特性,它们可以帮助我们更高效地控制对象。 代理(Proxy)是一种…

元宇宙哪些吓死人的概念话题

元宇宙哪些吓死人的概念话题 深层的奥秘:人是符号及符号的意义驱动的 趣讲大白话:现有概念再有东西 ************** **元宇宙与跨学科 2.1 元宇宙与交叉学科 2.2 元宇宙与哲学 2.3 元宇宙与文学 2.4 元宇宙与艺术学 2.5 元宇宙与电影学 2.6 元宇宙与传播…

【面向对象】构造函数与析构函数详解

构造函数与析构函数详解 文章目录构造函数类型参考博客😊点此到文末惊喜↩︎ 构造函数 类型 默认构造函数(缺省构造函数) 一个类中只能出现一个默认构造函数在调用时,不需要传入实参。因为默认构造函数通常是无参的或所有形参都…

射频信号探测器制作

射频信号探测器制作一、元件要求二、芯片参数三、原理剖析四、实验思路五、实物展示、使用六、个人总结一、元件要求 CD4001,是四2输入或非门。或非门的逻辑关系特点是只有当输入端全部为低电平时,输出端为高电平状态;在其余输入情况下&…

TCP-IP协议基础知识

1、简介 tcp/ip:通信协议的统称,是IP,ICMP,TCP,UDP,HTTP,TELNET,SNMP,SMTP等协议的集合 TCP/IP和OSI的关系 OSI属于ISO(国际化标准组织)制定的通信系统标准,但是并没有普及;TCP/IP是非ISO制定的某种国际…

详谈ORB-SLAM2的局部建图线程LocalMapping

ORB-SLAM2的局部建图线程LocalMapping分为5个步骤,非常简单。当得到缓冲队列里的关键帧,第一步处理当前关键帧的地图点关系等;第二步判断地图点是否为新创建,如果是那就进入测试,测试地图点的好坏,如果不好…

【关于Linux中----信号】

文章目录一、信号入门1.1 信号概念1.2 用 kill-l命令查看信号列表1.3 信号处理常见方式预览二、产生信号2.1 通过终端按键产生信号2.2 由于程序中存在异常产生信号2.3 系统接口调用产生信号2.4 软件条件产生信号三、阻塞信号3.1 信号相关常见概念补充3.2 在内核中的表示3.3 sig…

编码技巧——JDK版本切换/JDK7和JDK6下的文件输入输入

最近有使用低版本JDK实现文件输入输出的需求,主要是妹子计算机专业考研复试上级算法题,输入输入依赖文件而非纯算法代码,并且IDE一般使用JDK8以下的SDK,导致一些JDK8的API不适用;较早版本的JDK API代码是操作一大堆的缓…

jenkins部署过程

Jenkins 安装 示例服务器为 阿里云 CentOS 服务器。安全组中增加 8080 端口 Jenkins 默认占用 Jenkins 安装大体分两种方式,一种使用 Docker 另一种则是直接安装,示例选择后者。不管使用哪种方式安装,最终使用层面都是一样的。 Linux安装过…

Linux下源码安装nginx

一 安装步骤 nginx在linux下的源码安装,步骤还是比较简单的,主要分为以下 1. 下载安装包,这里选择:nginx-1.18.0.tar.gz 下载地址:http://nginx.org/en/download.html 2. 安装前置环境: yum install -y…

苹果手机字体大小怎么设置?简单实用,轻松学会

使用苹果手机的时候,发现苹果手机的字体看起来不是很舒服,想要将字体调大一点,却不知道怎么办。苹果手机字体大小怎么设置?其实方法很简单,今天小编就来具体的讲一下调整苹果手机字体大小的方法。 苹果手机字体大小怎么…

智能工厂中的设备如何实现远程监控和故障报警

智能工厂是在数字化工厂内,利用物联网技术和云计算计算加强设备信息管理水平,提高生产过程可控性、减少生产线人工干预,保证安全稳定的生产节奏,助力构建高效、节能、绿色、舒适、安全的工厂。 物通博联推出的智能工厂设备物联网…

C语言及算法设计课程实验四:选择结构程序设计

C语言及算法设计课程实验四:选择结构程序设计一、实验目的二、实验内容2.1、根据x的分段函数求对于的y值2.2、求小于1000正数的平方根2.3、百分制等级输出2.4、四个整数的顺序输出三、实验步骤3.1、选择结构程序设计实验题目1:根据x的分段函数求对于的y值…

四、GStreamer基础

本章介绍GStreamer的基本概念。理解这些概念对于阅读本指南的其他任何内容都是很重要的,它们都假定理解了这些基本概念。 元素 元素是GStreamer中最重要的一类对象。你通常会创建一个链接在一起的元素链,并让数据在这个元素链中流动。元素有一个特定的…