椭圆的几何要素

椭圆的几何要素

flyfish
在这里插入图片描述

  • 椭圆的方程为 x 2 a 2 + y 2 b 2 = 1 \frac{x^2}{a^2} + \frac{y^2}{b^2} = 1 a2x2+b2y2=1

  • 长半轴 a a a(绿色虚线)和短半轴 b b b(紫色虚线)。

  • 焦点 F 1 ( − c , 0 ) F1(-c, 0) F1(c,0)(红色点)和 F 2 ( c , 0 ) F2(c, 0) F2(c,0)(蓝色点),焦距 c c c(黄色虚线)。

假设我们有一个椭圆,其长轴长度为 2 a 2a 2a,短轴长度为 2 b 2b 2b,两个焦点分别位于 F 1 ( − c , 0 ) F_1(-c, 0) F1(c,0) F 2 ( c , 0 ) F_2(c, 0) F2(c,0)。根据椭圆的定义,椭圆上任意一点到两个焦点的距离之和为常数,并且等于长轴的长度。考虑椭圆上的顶点 ( a , 0 ) (a, 0) (a,0) ( − a , 0 ) (-a, 0) (a,0)

  • ( a , 0 ) (a, 0) (a,0) 到两个焦点的距离分别为 ( a + c ) 2 + 0 2 \sqrt{(a + c)^2 + 0^2} (a+c)2+02 ( a − c ) 2 + 0 2 \sqrt{(a - c)^2 + 0^2} (ac)2+02 ,因此有:
    ( a + c ) 2 + ( a − c ) 2 = 2 a \sqrt{(a + c)^2} + \sqrt{(a - c)^2} = 2a (a+c)2 +(ac)2 =2a

( a + c ) + ( a − c ) = 2 a (a + c) + (a - c) = 2a (a+c)+(ac)=2a

为什么 c 2 = a 2 − b 2 c^2 = a^2 - b^2 c2=a2b2

对于椭圆上的任意一点 P ( x , y ) P(x, y) P(x,y),到两个焦点的距离之和是常数,并且等于椭圆的长轴长度 2 a 2a 2a$。即
d ( P , F 1 ) + d ( P , F 2 ) = 2 a d(P, F_1) + d(P, F_2) = 2a d(P,F1)+d(P,F2)=2a
其中 F 1 ( − c , 0 ) F_1(-c, 0) F1(c,0) F 2 ( c , 0 ) F_2(c, 0) F2(c,0)。设 P ( x , y ) P(x, y) P(x,y) 是椭圆上的任意一点,根据距离公式:
d ( P , F 1 ) = ( x + c ) 2 + y 2 d(P, F_1) = \sqrt{(x + c)^2 + y^2} d(P,F1)=(x+c)2+y2
d ( P , F 2 ) = ( x − c ) 2 + y 2 d(P, F_2) = \sqrt{(x - c)^2 + y^2} d(P,F2)=(xc)2+y2 根据椭圆的定义:
( x + c ) 2 + y 2 + ( x − c ) 2 + y 2 = 2 a \sqrt{(x + c)^2 + y^2} + \sqrt{(x - c)^2 + y^2} = 2a (x+c)2+y2 +(xc)2+y2 =2a
考虑椭圆上的另一点 ( 0 , b ) (0, b) (0,b) ( x = 0 , y = b ) (x=0, y=b) (x=0,y=b)

  • ( 0 , b ) (0, b) (0,b) 到两个焦点的距离分别为
    ( − c ) 2 + b 2 \sqrt{(-c)^2 + b^2} (c)2+b2
    c 2 + b 2 \sqrt{c^2 + b^2} c2+b2 ,根据椭圆的定义,有:
    c 2 + b 2 + c 2 + b 2 = 2 a \sqrt{c^2 + b^2} + \sqrt{c^2 + b^2} = 2a c2+b2 +c2+b2 =2a

2 c 2 + b 2 = 2 a 2\sqrt{c^2 + b^2} = 2a 2c2+b2 =2a

c 2 + b 2 = a \sqrt{c^2 + b^2} = a c2+b2 =a

两边平方:
c 2 + b 2 = a 2 c^2 + b^2 = a^2 c2+b2=a2

因此,得出结论:
c 2 = a 2 − b 2 c^2 = a^2 - b^2 c2=a2b2
上图的代码

import matplotlib.pyplot as plt
import numpy as np# 椭圆的长半轴 a 和短半轴 b
a = 5
b = 3
# 计算焦距 c
c = np.sqrt(a**2 - b**2)# 创建一个椭圆
theta = np.linspace(0, 2 * np.pi, 1000)
x = a * np.cos(theta)
y = b * np.sin(theta)# 焦点坐标
F1 = (-c, 0)
F2 = (c, 0)# 设置中文字体
plt.rcParams['font.sans-serif'] = ['SimHei']  
plt.rcParams['axes.unicode_minus'] = False  # 绘制椭圆
plt.figure(figsize=(8, 8))
plt.plot(x, y, label=r'$\frac{x^2}{a^2} + \frac{y^2}{b^2} = 1$')
plt.scatter(*F1, color='red', label='焦点 F1(-c, 0)')
plt.scatter(*F2, color='blue', label='焦点 F2(c, 0)')# 标注长半轴 a 和短半轴 b
plt.plot([0, a], [0, 0], 'g--', label='长半轴 a')
plt.plot([0, 0], [0, b], 'm--', label='短半轴 b')
plt.plot([0, -a], [0, 0], 'g--')
plt.plot([0, 0], [0, -b], 'm--')# 标注焦距 c
plt.plot([0, c], [0, 0], 'y--', label='焦距 c')
plt.plot([0, -c], [0, 0], 'y--')# 添加图例
plt.legend()# 设置图形范围
plt.xlim(-6, 6)
plt.ylim(-6, 6)
plt.axhline(0, color='black',linewidth=0.5)
plt.axvline(0, color='black',linewidth=0.5)
plt.grid(color = 'gray', linestyle = '--', linewidth = 0.5)
plt.gca().set_aspect('equal', adjustable='box')
plt.title("椭圆及其几何要素")
plt.show()

在这里插入图片描述

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

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

相关文章

冒泡排序Java详细注释版

冒泡排序源代码,带有详细注释,希望可以帮助到大家,有用的话点个赞和收藏吧,感谢大家的阅读,Java小白一直在努力,承蒙大神们的厚爱。 定义 在程序设计语言中,排序算法主要有冒泡排序、快速排序、…

低代码开发:加速工业数智化转型发展

引言 在当今全球经济一体化和信息化的深度融合的大环境下,工业数智化转型已经成为推动制造业高质量发展的关键因素。这一转型不仅涉及生产过程的智能化、网络化,还涉及到企业管理、市场服务等全方位的数字化升级,其最终目标是为了实现更高效能…

暴雨讲堂|通往AGI的必由之路—AI agent是什么?

在三月份英伟达的新品发布会上,黄仁勋反复提及一个词汇— Generalist Embodied Agent,意为“通用具身智能体”,给观众留下了深刻的印象。其实具身智能指的是不同形态的拥有主动感知交互能力的机器人。其实,业界对它还有一个更为熟…

python如何安装ta-lib依赖包

在使用pip install ta-lib安装ta-lib库的时候,出现了以下错误信息。本文记录安装成功的整个过程。 解决办法 1、创建虚拟环境 我们使用conda进行创建一个python=3.8版本的虚拟环境 conda create -n python38 python==3.8激活创建好虚拟环境 conda activate python382、安装步…

媒体访谈 | 广告变现痛点有新解,俄罗斯市场成大热门?

今年一季度,中国自主研发游戏在海外市场实际销售收入达到了40.75亿美元,环比和同比均实现了超过5%的增长,出海,仍是游戏产品近些年来最主要的发展模式之一。 当今的市场环境正经历一系列深刻变革,移动游戏广告市场呈现…

python“__main__“的解读

Tutorial Gross tutorial 有些模块包含了仅供脚本使用的代码,比如解析命令行参数或从标准输入获取数据。 如果这样的模块被从不同的模块中导入,例如为了单元测试,脚本代码也会无意中执行。 这就是 if name ‘main’ 代码块的用武之地。除非…

IDEA集成Docker实现快捷部署

本文已收录于专栏 《运维》 目录 背景介绍优势特点操作步骤一、修改Docker配置二、配置Docker插件三、编写Maven插件四、构建Docker镜像五、创建Docker容器 总结提升 背景介绍 在我们手动通过Docker部署项目的时候,都是通过把打包好的jar包放到服务器上并且在服务器…

git提交遇见的<<<<<<<< HEAD无法运行程序问题

在项目文件目录下打开git bash Here 在命令行中输入 git reset --hard HEAD~1 进行复原 git reset --hard HEAD~1 即可

查找程序中隐藏界面的思路

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动 某些程序,它会有管理员界面(比如棋牌游戏,它一般会有一个控制端界面,用来控制发牌、换牌),但是这种界…

【Java】线程池技术(三)ThreadPoolExecutor 状态与运行源码解析

ThreadPoolExecutor 状态 ThreadPoolExecutor 继承了 AbstractExecutorService,并实现了 ExecutorService 接口,用于管理线程。内部使用了原子整型 AtomicInteger ctl 来表示线程池状态和 Worker 数量。前 3 位表示线程池状态,后 29 位表示 …

python代码生成可执行文件

以下面转换图片尺寸的代码resize_images.py为例: 代码功能:原始图片放在img文件夹中,然后运行代码可以转换成指定分辨率,保存在同一目录下的新生成的文件夹中 import os import sys import cv2 from datetime import datetime f…

在React中,如何利用React.memo函数对函数组件进行优化?

React.memo 是 React 的一个高阶组件,用于对函数组件进行性能优化。它通过记忆化(memoization)来避免不必要的重新渲染。当组件的 props 没有变化时,React.memo 可以防止组件重新渲染,从而提高应用的性能。 使用 Reac…

wireshark抓包ssl数据出现ignored unknown record的原因

文章目录 前言一、出现原因二、wireshark抓包分析Ignored Unknown RecordTCP segment of a reassembled PDU 总结 前言 使用下面这个例子来观察记录层数据大于TCP MSS时用wireshark抓包出现ignored unknown record的情况并分析原因。 c语言利用openssl实现简单客户端和服务端&…

【LinuxC语言】sigaction

文章目录 前言功能函数定义struct sigaction 结构体使用示例总结前言 在Linux系统编程中,信号(Signal)是一种重要的进程间通信机制。信号可以用来通知进程发生了某个事件,比如中断、终止、非法内存访问等。处理信号的方式有多种,其中sigaction是一个强大且灵活的函数,用…

Rich Human Feedback for Text-to-Image Generation 读论文笔记

Rich Human Feedback for Text-to-Image Generation 读论文笔记 摘要方法细节收集数据的过程人类反馈确认 数据集VQA使用方法数据分析分数统计评价一致性(pair alignment) 实验模型模型架构模型变体模型其他优化 实验MetricsScoreHeatmapMisalignment 量…

什么是NLP-自然语言处理

什么是NLP-自然语言处理 什么是NLP开通NLP新建项目创建模型 什么是NLP NPL是面向算法小白用户的行业自适应标注、训练和服务平台。该产品支持文本实体抽取、文本分类、关键短语抽取、情感分析、关系抽取、短文本匹配、商品评价解析等 NLP 定制化算法能力,用户无需拥…

香港云服务器怎么处理高并发和突发流量?

处理香港云服务器的高并发和突发流量需要综合考虑多种因素,包括服务器配置优化、负载均衡、缓存策略、CDN加速以及监控和自动化调整等措施。以下是处理高并发和突发流量的一些关键步骤和建议: 1. 优化服务器配置 选择高性能实例:根据预期的并…

git-diff详解

NAME git-diff - Show changes between commits, commit and working tree, etc SYNOPSIS git diff [<options>] [<commit>] [--] [<path>…​] git diff [<options>] --cached [--merge-base] [<commit>] [--] [<path>…​] git diff …

【变量与常量】

1.基本程序 容器用来存放物品 声明变量 num 是个用来装整数的变量 &#xff01; 一 个整数变量需要 4 个 byte 存储&#xff0c; 计算机 在内存里为你分配了 4 个 byte 。int num;在代码中&#xff0c;声明一个变量。 常用变量类型 存储不同类型的数据需要声明不同类型的变…

Steam怎么购买黄金树之影 购买了黄金树之影怎么下载DLC教程

《艾尔登法环》大型DLC“黄金树幽影”将于6月21日正式上线&#xff0c;为广大玩家带来全新的冒险与挑战。在“黄金树幽影”中&#xff0c;玩家将拥有专属的强化系统。通过收集探索幽影之地获得的“幽影树的碎片”和“灵灰的加护”&#xff0c;不仅可以大幅度提升玩家的攻击力与…