线性代数笔记25--复数矩阵、快速傅里叶变换
1. 复数矩阵
复向量
Z = [ z 1 z 2 z 3 z 4 ⋯ ] Z=\begin{bmatrix} z_1\\z_2\\z_3\\z_4\\ \cdots \end{bmatrix} Z= z1z2z3z4⋯
复向量的模长
∣ z ∣ = z ‾ ⊤ z = [ z ‾ 1 z ‾ 2 z ‾ 3 ] [ z 1 z 2 z 3 ] \lvert z\rvert=\overline z^{\top}z= \begin{bmatrix} \overline z_1\overline z_2\overline z_3 \end{bmatrix} \begin{bmatrix} z_1\\z_2\\z_3 \end{bmatrix} ∣z∣=z⊤z=[z1z2z3] z1z2z3
内积
y ⊤ x = [ y ‾ 1 y ‾ 2 y ‾ 3 ] [ x 1 x 2 x 3 ] y^{\top}x= \begin{bmatrix} \overline y_1\overline y_2\overline y_3 \end{bmatrix} \begin{bmatrix} x_1\\x_2\\x_3 \end{bmatrix} y⊤x=[y1y2y3] x1x2x3
实对称矩阵
A = A ⊤ A=A^{\top} A=A⊤
复对称矩阵
A = A ‾ ⊤ A=\overline A^{\top} A=A⊤
如
[ 2 3 − i 3 + i 5 ] \begin{bmatrix} 2 & 3 - i \\3 + i & 5 \end{bmatrix} [23+i3−i5]
垂直
q 1 q 2 q 3 ⋯ q n q ‾ i ⊤ q j = { 0 i ≠ j 1 i = j q_1\ q_2\ q_3\ \cdots q_n\\ \overline q_i^{\top}q_j= \begin{cases} 0 \quad i \ne j \\1\quad i = j \end{cases} q1 q2 q3 ⋯qnqi⊤qj={0i=j1i=j
复正交矩阵
Q ‾ ⊤ Q = I \overline Q^{\top}Q=I Q⊤Q=I
2. 快速傅里叶变换
F n = [ 1 1 1 ⋯ 1 1 ω ω 2 ⋯ ω n − 1 ⋮ ⋯ 1 ω n − 1 ω 2 ( n − 1 ) ⋯ ω ( n − 1 ) ( n − 1 ) ] F_n= \begin{bmatrix} 1 &1 & 1 & \cdots &1\\ 1 & \omega & \omega^2 & \cdots &\omega^{n-1}\\ \vdots &\cdots\\ 1 & \omega^{n-1} & \omega^{2(n-1) } & \cdots & \omega^{(n-1)(n-1)} \end{bmatrix} Fn= 11⋮11ω⋯ωn−11ω2ω2(n−1)⋯⋯⋯1ωn−1ω(n−1)(n−1)
F n ( i , j ) = w i j , ω n = 1 ω = e i 2 π n = cos 2 π n + i sin 2 π n F_n(i,j)=w^{ij},\omega^{n}=1\\ \omega=e^{i\frac{2 \pi}{n}}=\cos \frac{2\pi}{n}+i\sin \frac{2\pi}{n} Fn(i,j)=wij,ωn=1ω=ein2π=cosn2π+isinn2π
F 4 = [ 1 1 1 1 1 i i 2 i 3 1 i 2 i 4 i 6 1 i 3 i 6 i 9 ] = 2 2 [ 1 1 1 1 1 i − 1 − i 1 − 1 1 − 1 1 − i 1 i ] F_4= \begin{bmatrix} 1 & 1 & 1 & 1\\ 1 & i & i^2 & i^3\\ 1 & i^2 & i ^4 & i^{6}\\ 1 & i^3 & i ^6 & i^9 \end{bmatrix}= \frac{\sqrt[]{2}}{2} \begin{bmatrix} 1 & 1 & 1 & 1\\ 1 & i & -1 & -i\\ 1 & -1 & 1 & -1\\ 1 & -i & 1 & i \end{bmatrix} F4= 11111ii2i31i2i4i61i3i6i9 =22 11111i−1−i1−1111−i−1i
矩阵各列正交。
ω n = e i × 2 π n \omega^{n}=e^{\frac{i \times2\pi }{ n}} ωn=eni×2π
w n ∗ w n = w 2 n w^{n}*w^{n}=w^{2n} wn∗wn=w2n
对于 n = 64 n=64 n=64,可以化为
[ F 64 ] = [ I D I − D ] [ F 32 0 0 F 32 ] [ 1 0 0 0 1 0 ⋯ ] [F_{64}]= \begin{bmatrix} I & D\\I & -D \end{bmatrix} \begin{bmatrix} F_{32} & 0 \\ 0 & F_{32} \end{bmatrix} \begin{bmatrix} 1 & 0 &0\\ 0 & 1 & 0\\ \cdots \end{bmatrix} [F64]=[IID−D][F3200F32] 10⋯0100
D D D是一个对角矩阵
D = [ 1 w w n − 1 ] D=\begin{bmatrix} 1 & & \\ &w & \\ & & w^{n-1} \end{bmatrix} D= 1wwn−1
对于 F 32 F_{32} F32可以继续做这样的分解,直到分解成 F 1 F_1 F1
即
F n = D M P F_{n}=DMP Fn=DMP
M M M为分解矩阵,分解成两个小规模的矩阵。
M = [ F n / 2 0 0 F n / 2 ] M=\begin{bmatrix} F_{n/2} & 0\\ 0 & F_{n/2} \end{bmatrix} M=[Fn/200Fn/2]
矩阵 P P P为奇偶位次置换矩阵。
t o d o todo todo
相关文章:
线性代数笔记25--复数矩阵、快速傅里叶变换
1. 复数矩阵 复向量 Z [ z 1 z 2 z 3 z 4 ⋯ ] Z\begin{bmatrix} z_1\\z_2\\z_3\\z_4\\ \cdots \end{bmatrix} Z z1z2z3z4⋯ 复向量的模长 ∣ z ∣ z ‾ ⊤ z [ z ‾ 1 z ‾ 2 z ‾ 3 ] [ z 1 z 2 z 3 ] \lvert z\rvert\overline z^{\top}z \begin{bmatrix…...
洛谷 P8783 [蓝桥杯 2022 省 B] 统计子矩阵
题目描述 给定一个 NM 的矩阵 A,请你统计有多少个子矩阵 (最小 1111, 最大 NM 满足子矩阵中所有数的和不超过给定的整数 K。 输入格式 第一行包含三个整数 N,M 和 K。 之后 N 行每行包含 M 个整数, 代表矩阵 A。 输出格式 一个整数代表答案。 输入输出样例 …...
Rust 实战练习 - 8. 内存,ASM,外挂 【重磅】
目标: C写一个Demo版本的游戏由浅入深,了解外挂原理Linux/Android下实现内存读取ptrace实现内存修改(依赖第三方库) 先准备一个C写的小游戏 #include <stdio.h> #include <string.h>struct Role {float pos_x; // …...
XUbuntu22.04之Typora快捷键Ctrl+5不生效问题(二百二十六)
简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…...
GRE_MGRE综合实验
目录 1、R5为ISP,只能进行IP地址配置,其所有地址均配为公有IP地址。 IP配置 配置公网全网通 2、(1)R1和R5间使用PPP的PAP认证,R5为主认证方。 PAP认证 (2)R2与R5之间使用ppp的CHAP认证&am…...
把组合损失中的权重设置为可学习参数
目前的需求是:有一个模型,准备使用组合损失,其中有2个或者多个损失函数。准备对其进行加权并线性叠加。但想让这些权重进行自我学习,更新迭代成最优加权组合。 目录 1、构建组合损失类 2、调用组合损失类 3、为其构建优化器 …...
用Bat启动jar程序
前情提要:在使用冰蝎、哥斯拉等一些列工具时(PS:一系列需要利用Java环境并打开的jar),我就在想能不能写一段代码点一下,就能打开程序而不用去输入命令 echo off echo 程序启动中... start javaw -noverif…...
网站维护页404源码
网站维护页404源码,布局简洁,上传即可使用。 网站维护页404源码...
jmeter链路压测
比如登录后返回token,业务打印上传的操作需要用到token 线程组中添加登录请求,并执行 1、添加登录并执行,查看结果 2、结果树中下拉选择正则表达式,将token参数和值复制粘贴到下方,将token值改为(.*?)࿰…...
香港服务器怎么看是CN2 GT线路还是CN2 GIA线路?
不知道有没有小伙伴们注意过,很多人在租用香港服务器的时候都习惯性选择 CN2 线路?仿佛香港服务器是否采用 CN2 线路成为个人企业选择香港服务器的一个标准。其实,香港服务器有CN2、优化直连(163)、BGP多线(包含了国际和国内线路),…...
CrossOver软件2024免费 最新版本详细介绍 CrossOver软件好用吗 Mac电脑玩Windows游戏
CrossOver是一款由CodeWeavers公司开发的软件,它可以在Mac和Linux等操作系统上运行Windows软件,而无需在计算机上安装Windows操作系统。这款软件的核心技术是Wine,它是一种在Linux和macOS等操作系统上运行Windows应用程序的开源软件。 Cross…...
harbor api v2.0
harbor api v2.0 v2.0 v2.0 “harbor api v2.0”与原来区别较大,此处harbor也做了https。另外,通过接口拿到的数据也是只能默认1页10个,所以脚本根据实际情况一页页的抓取数据 脚本主要用于统计repo、image,以及所有镜像的tag数&…...
Vue 表单数据双向绑定 v-mode
每一个Vue项目,每一个系统,肯定涉及到表单的双向数据绑定问题,这一部分是 vue 的重中之重,不是因为知识点复杂,而是因为只要参与 vue 项目的开发,那么就必不可少。 单项绑定 :数据变࿰…...
tab切换组件,可横向自适应滑动
示例图: 注:需要引入Jquery <!DOCTYPE html> <html><head><meta charset"utf-8"><title></title><style>.tabs-box {width: 100%;height: auto;}.tab-header-box {display: flex;overflow: hidden…...
设计模式---单例模式
目录 一、五种单例模式的实现方式 1.饿汉模式 2.饿汉枚举类型 3.懒汉式 4.双检锁懒汉式 5.内部类懒汉式 二、JDK 中单例的体现 一、五种单例模式的实现方式 1.饿汉模式 public class Singleton1 implements Serializable {private Singleton1() {if (INSTANCE ! null) {thro…...
HarmonyOS 应用开发之启动/停止本地PageAbility
启动本地PageAbility PageAbility相关的能力通过featureAbility提供,启动本地Ability通过featureAbility中的startAbility接口实现。 表1 featureAbility接口说明 接口名接口描述startAbility(parameter: StartAbilityParameter)启动Ability。startAbilityForRes…...
BaseDao封装增删改查
文章目录 什么是BaseDao操作代码增删改查询单个数据查询多个数据 总结 什么是BaseDao BaseDao是: 数据库里负责增加,删除,修改,查询 具体来说是一种接口代码,公共方法的接口类。 在dao层新建basedao,其他dao层接口继承basedao 相…...
Redis入门到实战-第十三弹
Redis入门到实战 Redis中JSON数据类型常见操作官网地址Redis概述JSON常见操作更新计划 Redis中JSON数据类型常见操作 完整命令参考官网 官网地址 声明: 由于操作系统, 版本更新等原因, 文章所列内容不一定100%复现, 还要以官方信息为准 https://redis.io/Redis概述 Redis是…...
深度学习InputStreamReader类
咦咦咦,各位小可爱,我是你们的好伙伴——bug菌,今天又来给大家普及Java SE相关知识点了,别躲起来啊,听我讲干货还不快点赞,赞多了我就有动力讲得更嗨啦!所以呀,养成先点赞后阅读的好…...
2023年后端面试总结
备注:这篇文章是我在2023年年初在自己的网站上写的,最近在迁移技术文章,我感觉这个也是和咱程序员相关,所以今天就决定把它迁移过来。 .......................................................................分割线..........…...
深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录
ASP.NET Core 是一个跨平台的开源框架,用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录,以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...
7.4.分块查找
一.分块查找的算法思想: 1.实例: 以上述图片的顺序表为例, 该顺序表的数据元素从整体来看是乱序的,但如果把这些数据元素分成一块一块的小区间, 第一个区间[0,1]索引上的数据元素都是小于等于10的, 第二…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成
厌倦手动写WordPress文章?AI自动生成,效率提升10倍! 支持多语言、自动配图、定时发布,让内容创作更轻松! AI内容生成 → 不想每天写文章?AI一键生成高质量内容!多语言支持 → 跨境电商必备&am…...
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数
高效线程安全的单例模式:Python 中的懒加载与自定义初始化参数 在软件开发中,单例模式(Singleton Pattern)是一种常见的设计模式,确保一个类仅有一个实例,并提供一个全局访问点。在多线程环境下,实现单例模式时需要注意线程安全问题,以防止多个线程同时创建实例,导致…...
Python Einops库:深度学习中的张量操作革命
Einops(爱因斯坦操作库)就像给张量操作戴上了一副"语义眼镜"——让你用人类能理解的方式告诉计算机如何操作多维数组。这个基于爱因斯坦求和约定的库,用类似自然语言的表达式替代了晦涩的API调用,彻底改变了深度学习工程…...
命令行关闭Windows防火墙
命令行关闭Windows防火墙 引言一、防火墙:被低估的"智能安检员"二、优先尝试!90%问题无需关闭防火墙方案1:程序白名单(解决软件误拦截)方案2:开放特定端口(解决网游/开发端口不通)三、命令行极速关闭方案方法一:PowerShell(推荐Win10/11)方法二:CMD命令…...
