029-GeoGebra中级篇—一般对象之复数

news2024/11/28 19:51:44

GeoGebra 支持复数运算和可视化,允许用户在复平面上进行各种操作。用户可以定义复数、进行加减乘除等基本运算,并使用 GeoGebra 的图形工具在复平面上绘制复数的表示,探索复数的几何意义。这使得 GeoGebra 成为学习和研究复数及其应用的有力工具。

几何对象其实还有一些数字、路径没有记录,其实这个已经无关紧要了,毕竟数字和路径都是经常用的,也没必要大费周章的拎出来再唠叨唠叨,今天主要讲一下复数。

在这里插入图片描述

目录

    • 一、关于复数
      • 1. 复数的定义
      • 2. 复数的由来
      • 3. 复数的历史
      • 4. 复数的作用
      • 5. 历史上的故事
    • 二、GeoGebra与复数
      • 1. GeoGebra只能模拟复数
      • 2. 复数的加减乘除
      • 3. 复数的使用注意
    • 三、GeoGebra判断对象是否为复数
    • 四、文章最后

一、关于复数

1. 复数的定义

复数是数学中一种扩展的数,用来解决实数不能解决的问题。复数的形式为 a + b i a + bi a+bi,其中 a a a b b b是实数, i i i是虚数单位,满足 i 2 = − 1 i^2 = -1 i2=1

2. 复数的由来

复数的概念起源于对负数平方根的需求。古代数学家发现,一些方程的解需要用到负数的平方根,但实数体系中不存在这样的数。为了解决这些问题,数学家引入了虚数单位 i i i

3. 复数的历史

数的历史可以追溯到16世纪意大利数学家卡尔达诺,他在解决三次方程时首次使用了复数。尽管他称之为“虚数”,但他认识到它们在数学计算中的重要性。之后,数学家如拉斐尔·邦贝利、约翰·沃利斯和莱昂哈德·欧拉进一步发展了复数理论。

在这里插入图片描述

4. 复数的作用

复数在许多数学和工程学科中起着重要作用。它们广泛应用于电工程、信号处理、量子物理和控制理论等领域。在数学中,复数用于分析、代数几何和数论,帮助解决许多实际问题和理论问题。

举个例子(如果看不懂,可以直接跳过哈,因为能用到复数的例子经常会比较偏)

一个简单的交流电路,其中包含一个电阻 R R R和一个电感 L L L串联。假设电源电压为 V V V,频率为 ω \omega ω

(1)电阻的阻抗: Z R = R Z_R = R ZR=R(纯实数)
(2)电感的阻抗: Z L = j ω L Z_L = j\omega L ZL=L(纯虚数,其中 j j j是虚数单位, j 2 = − 1 j^2 = -1 j2=1

串联电路的总阻抗 Z Z Z可以表示为: Z = Z R + Z L = R + j ω L Z = Z_R + Z_L = R + j\omega L Z=ZR+ZL=R+L
(3)电流计算:
通过欧姆定律,电流 I I I可以表示为: I = V Z = V R + j ω L I = \frac{V}{Z} = \frac{V}{R + j\omega L} I=ZV=R+LV
(4) 相量表示:
复数的相量形式使得我们可以同时考虑电压和电流的幅值和相位关系,简化了计算。通过相量分析,可以很方便地计算电压和电流的相位差,从而分析电路的行为。

5. 历史上的故事

复数的引入最初遭到了许多数学家的质疑和抵制。例如,笛卡尔认为虚数是“想象中的数”,并不具备实际意义。然而,随着复数在解决实际问题中的应用和理论上的完善,它们逐渐被接受和认可。复数的几何表示法由阿根图提出,进一步使复数的理解变得直观,促进了它们在数学中的普及和应用。

为什么要了解这些理论?因为,复数真的很枯燥,一般用不到。

二、GeoGebra与复数

1. GeoGebra只能模拟复数

对于GeoGebra来说,复数明显有些超纲,所以只能来模拟,但是不是真正意义上的复数(若需要高精度的数据分析,建议使用Matlab进行操作)。

在命令行输入:

z_{1}=3+4 ί

在图像展示区显示的是一个(3,4)点,来模拟复数
在这里插入图片描述

2. 复数的加减乘除

假设现在有两个复数:

z_{1}=3+4 ί
z_{2}=1+1 ί

在这里插入图片描述
(1)复数的加法

z_{plus}=z_{1}+z_{2}

在这里插入图片描述

(2)复数的减法

z_{minus}=z_{1}-z_{2}

在这里插入图片描述

(3)复数的乘法

z_{multi}=z_{1} z_{2}

在这里插入图片描述

(4)复数的除法

z_{divi}=((z_{1})/(z_{2}))

在这里插入图片描述

这个没有什么可以操作的难度,主要是一个理解的难度

3. 复数的使用注意

接下来我们所有的操作都基于这个虚数:

z_{1}=3+4 ί

(1)获取虚数的实部

a=real(z_{1})	// 也可以用x(z_1)

在这里插入图片描述

(2)获取虚数的虚部

b=imaginary(z_{1})  // 也可以用y(z_1)

在这里插入图片描述

(3)获取虚数的绝对值

c=abs(z_{1})

在这里插入图片描述

(4)获取虚数的幅角

ang=arg(z_{1})

在这里插入图片描述

这里解释一下什么是幅角


虚数的幅角(也称为辐角或相位角)是一个复数在复平面上的极坐标表示中的角度部分。对于一个复数 z = a + b i z = a + bi z=a+bi(其中 a a a b b b是实数, i i i是虚数单位),其幅角 θ \theta θ是复数在复平面上与实轴正方向之间的夹角。

幅角的定义

对于复数 z = a + b i z = a + bi z=a+bi,幅角 θ \theta θ由以下公式计算: θ = arctan ⁡ ( b a ) \theta = \arctan\left(\frac{b}{a}\right) θ=arctan(ab)这里 a a a是实部, b b b是虚部。注意,这个公式直接计算出的角度在 − π 2 -\frac{\pi}{2} 2π π 2 \frac{\pi}{2} 2π之间,如果需要完整的四象限表示,需要根据 a a a b b b的符号进行调整。

极坐标表示

复数 z z z也可以用极坐标形式表示为: z = r ( cos ⁡ θ + i sin ⁡ θ ) z = r (\cos \theta + i \sin \theta) z=r(cosθ+isinθ)其中 r r r是复数的模(即复数到原点的距离),定义为: r = a 2 + b 2 r = \sqrt{a^2 + b^2} r=a2+b2
幅角的实际计算

通常,计算复数的幅角时,会使用函数 atan2(b, a),这个函数可以处理所有四个象限的情况,给出正确的角度: θ = atan2 ( b , a ) \theta = \text{atan2}(b, a) θ=atan2(b,a)

假设我们有复数 z = 3 + 4 i z = 3 + 4i z=3+4i

  1. 计算模: r = 3 2 + 4 2 = 9 + 16 = 5 r = \sqrt{3^2 + 4^2} = \sqrt{9 + 16} = 5 r=32+42 =9+16 =5
  2. 计算幅角: θ = atan2 ( 4 , 3 ) ≈ 0.93  弧度 \theta = \text{atan2}(4, 3) \approx 0.93 \text{ 弧度} θ=atan2(4,3)0.93 弧度因此,复数 3 + 4 i 3 + 4i 3+4i的幅角约为 0.93 弧度。

幅角是复数在复平面上的一个重要属性,它表示复数与实轴正方向之间的夹角。通过幅角,我们可以更好地理解复数的方向性和在复平面上的位置。


三、GeoGebra判断对象是否为复数

GeoGebra没有提供快读的方式识别复数,不过我写了一个按钮脚本,可以快速判断:

function isComplexNumber(objectName) {
    try {
        // 获取对象的值
        var value = ggbApplet.getValue(objectName);

        // 临时计算 sqrt(a) + sqrt(-a)
        var tempCheck = "sqrt(" + value + ") + sqrt(-" + value + ")";
        var tempObjectName = "tempComplexCheck";

        // 计算并隐藏临时对象
        ggbApplet.evalCommand(tempObjectName + " = " + tempCheck);
        ggbApplet.setVisible(tempObjectName, false);

        // 检查复数
        var complexCheck = ggbApplet.evalCommand("IsDefined(" + tempObjectName + ")");
        var isComplex = (value !== 0) && complexCheck; // a ≠ 0 且表达式有效

        // 删除临时对象
        ggbApplet.deleteObject(tempObjectName);

        return isComplex;
    } catch (e) {
        // 捕获任何可能的错误并返回 false
        return false;
    }
}

// 示例使用
var objectName = "A"; // 假设对象名称是 A
var result = isComplexNumber(objectName);

if (result) {
    ggbApplet.evalCommand("Text1 = \"" + objectName + " 是一个复数。\"");
} else {
    ggbApplet.evalCommand("Text1 = \"" + objectName + " 不是一个复数。\"");
}

在这里插入图片描述

四、文章最后

若有任何问题欢迎联系,也承接定制任务哦。
请添加图片描述
(若找不到可以直接搜索店铺:“第五设计”)

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

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

相关文章

合并K个有序链表

题目 给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中,返回合并后的链表。 示例1: 输入: 输出: 示例2: 输入: 输出: 示例3: 输入&…

【Vue3】组件生命周期

【Vue3】组件生命周期 背景简介开发环境开发步骤及源码 背景 随着年龄的增长,很多曾经烂熟于心的技术原理已被岁月摩擦得愈发模糊起来,技术出身的人总是很难放下一些执念,遂将这些知识整理成文,以纪念曾经努力学习奋斗的日子。本…

Java从入门初级开发到精通百万级架构师:全套教程 | 学习路线(免费白嫖)

以下是一篇关于Java编程从入门到精通的文章,旨在帮助初学者和有一定基础的程序员系统地学习Java语言及其应用: Java语言编程从入门到精通:Java从入门到项目实战全套教程 Java作为一种广泛使用的编程语言,拥有强大的生态系统和丰富…

「 LaTeX 」如何修改公式底纹颜色

一、前言 小白在论文返修过程中,需要标注出部分公式的修正,因此用到这个代码指令。 二、技术实现 指令代码如下: \mathcolorbox{yellow}{ TEXT } 三、实例 \begin{figure*} \begin{equation} \centering \begin{aligned}\begin{bmatrix}{…

食家巷胡麻饼酥脆滋味,难以抗拒

在美食的浩瀚星空中,食家巷胡麻饼宛如一颗璀璨的明珠,散发着独特而迷人的魅力。食家巷胡麻饼,那金黄酥脆的外皮,宛如一层精心雕琢的铠甲,闪烁着诱人的光泽。上面点缀着密密麻麻的胡麻籽,犹如繁星点点&#…

终端pip安装包后,Pycharm却导入失败?新手别慌,3招搞定!

很多小伙伴在学习Python的过程中,都会遇到这种情况:明明在终端用pip安装好了需要的包,但在Pycharm中导入时却报错。难道是安装姿势不对? 例如在cmd中已经有了pandas,但是去pycharm中导入pandas显示没有 先别急着怀疑人生,这很可能是因为pip安装包的路径和Pycharm项目使用…

Docker容器下面home assistant忘记账号密码怎么重置?

环境: docker ha 问题描述: Docker容器下面home assistant忘记账号密码怎么重置? 解决方案: 你可以按照以下步骤来找回或重置密码: 方法一 (未解决) 停止并删除当前的Home Assistant容器(确保你已经保…

设计模式16-代理模式

设计模式16-代理模式 动机定义与结构模式定义结构 代码推导特点应用总结实例说明1. 远程代理2. 虚拟代理3. 保护代理4. 智能引用代理 动机 在面向对象系统中有一些对象由于某种原因比如对象创建的开销很大或者某些操作需要安全控制,或者需要进程外的访问等情况。直…

Mac电脑流氓软件怎么卸载不了 MacBook删除恶意软件 电脑流氓软件怎么彻底清除

对于Mac用户来说,尽管MacOS系统以其较高的安全性而闻名,但依然不可避免地会遭遇流氓软件或恶意软件的困扰。本文将详细介绍Mac电脑流氓软件怎么卸载,Mac电脑如何移除移除恶意软件,确保你的设备运行安全、流畅。 一、Mac电脑流氓软…

【论文共读】【翻译】【GAN】Generative Adversarial Nets

论文原文地址:https://arxiv.org/pdf/1406.2661 翻译:Generative Adversarial Nets 生成对抗网络 0. 摘要 提出了一种新的对抗过程估计生成模型的框架,其中我们同时训练两个模型:一个是捕获数据分布的生成模型G,另一…

【基础夯实】TCP/IP 协议是怎么控制数据收发

【基础夯实】TCP/IP 协议是怎么控制数据收发 网址输入到页面完整显示,对于此问题,粗略的解释可以分为以下几个步骤: 客户端通过 HTTP 协议对数据进行一次包装通过 DNS 服务器(本地无缓存)解析网址的 ip 地址通过 TCP…

layui 乱入前端

功能包含 本实例代码为部分傻瓜框架,插入引用layui。因为样式必须保证跟系统一致,所以大部分功能都是自定义的。代码仅供需要用layui框架,但原项目又不是layui搭建的提供解题思路。代码较为通用 自定义分页功能自定义筛选列功能行内编辑下拉、…

【React】详解如何获取 DOM 元素

文章目录 一、基础概念1. 什么是DOM?2. 为什么需要获取DOM? 二、使用 ref 获取DOM元素1. 基本概念2. 类组件中的 ref3. 函数组件中的 ref 三、 ref 的进阶用法1. 动态设置 ref2. ref 与函数组件的结合 四、处理特殊情况1. 多个 ref 的处理2. ref 与条件渲…

跟着丑萌气质狗学习WPF——Style样式

Style样式 1. 用法介绍2. 样式多样性3. 全局样式说明和资源字典的使用 1. 用法介绍 提前写好样式&#xff0c;让他作用于所有按钮 <Window x:Class"WPF_Study_Solution.window3"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmln…

typescript 解构时配置类型

以下三种写法&#xff0c;可以参考&#xff1a; const handleMenuClick ({item, key, keyPath}: {item: Object, key: string, keyPath:string}) > {} const handleMenuClick ({item, key, keyPath}: any) > {} interface SomeObj {item: Objectkey: stringkeyPath:st…

计算机系统操作系统简介

目录 1.计算机系统简介 1.1组成结构 1.2系统软件 1.3冯诺依曼计算机特点 1.4硬件构架 2.硬件的进一步认识 2.1存储器 2.2输入设备 2.3输出设备 2.4CPU组成 2.5线的概念引入 3.操作系统 3.1操作系统简介 3.2操作系统如何管理 3.3库函数和系统调用 1.计算机系统简介…

Linux 用户管理模式

目录 1. 概述 2. 管控级别 3. 用户组管理 4. 用户管理 4.1 创建用户 useradd 4.2 删除用户 userdel ​编辑4.3 查看用户所属组 id 4.4 修改用户所属组 usermod 5. 查看用户/用户组 5.1 查看系统用户 5.2 查看系统用户组 1. 概述 Linux 可以配置多个用户&#xff0c…

ppt中国风背景图片去哪找?附6个优质中国风PPT模板分享!

在这个全球化的时代&#xff0c;中国传统文化元素正在各个领域焕发出新的生机&#xff0c;不管是在时尚、建筑还是平面设计领域&#xff0c;中国风都以其独特的美学魅力吸引着世界的目光。在商业演示和学术报告中&#xff0c;PowerPoint(PPT)作为最常用的工具之一&#xff0c;同…

opencv arm 交叉编译

step1.opencv源码文件夹下新建build-arm目录 step2. cmake图像化配置 cmake-gui .. step3. 选择交叉编译 step4.检索交叉编译链路径 step5. 配置 配置install路径 配置编译、链接选项 添加人脸检测模块 config->generate step6. make编译 built-arm目录下&#xff1a; …

DC-DC转换器电感参数详解

我们对DC-DC转换器的要求以及电感参数中的电感值、公差和电阻进行了介绍。本文中&#xff0c;我们将对电感的其它参数进行详细讲解。 自谐频率&#xff08;SRF&#xff09; 每个电感线圈都有一些联带的分布电容&#xff0c;与电感值一起形成一个有自谐频率的并联谐振回路。对…