当前位置: 首页 > news >正文

图和网络笔记

1. A X = 0 AX=0 AX=0

一个图可以由节点和边组成,假设我们有一个节点notes :n=4,边edges:m=5的有向图,表示如下
在这里插入图片描述

  • 通过以上电路图可以得到关联矩阵(incident matrix),我们定义边,开始端用-1表示,结束端用1表示,用行表示边,用列表示节点。可得如下
    比如edge1是由从节点1出发,到节点2 ,用行向量表示可得
    [ − 1 1 0 0 ] ⇒ e d g e 1 (1) \begin{bmatrix}-1&1&0&0\end{bmatrix}\Rightarrow edge1\tag{1} [1100]edge1(1)
  • 所以矩阵A根据上图可得如下:
    A = [ − 1 1 0 0 0 − 1 1 0 − 1 0 1 0 − 1 0 0 1 0 0 − 1 1 ] (2) A=\begin{bmatrix}-1& 1& 0& 0\\\\ 0 &-1& 1& 0\\\\ -1& 0& 1& 0\\\\ -1& 0& 0& 1\\\\ 0 & 0&-1& 1\end{bmatrix}\tag{2} A= 10110110000110100011 (2)
    • 我们可以看到由边1,2,3组成一个子图,那么看看由1,2,3组成的矩阵表示如下:
      [ − 1 1 0 0 0 − 1 1 0 − 1 0 1 0 ] ⇒ r o w 1 + r o w 2 = r o w 3 (3) \begin{bmatrix}-1& 1& 0& 0\\\\ 0 &-1& 1& 0\\\\ -1& 0& 1& 0 \end{bmatrix}\Rightarrow row_1+row_2=row_3\tag{3} 101110011000 row1+row2=row3(3)
      在这里插入图片描述

      也就是说,如果在矩阵中3行能达到等式关系,可以等效与在图上形成一个子图。

      • 那么矩阵A的零空间代表什么呢?我们将AX=0 用列的形式表示如下:
        A X = [ − 1 1 0 0 0 − 1 1 0 − 1 0 1 0 − 1 0 0 1 0 0 − 1 1 ] [ x 1 x 2 x 3 x 4 ] = [ x 2 − x 1 x 3 − x 2 x 3 − x 1 x 4 − x 3 ] (4) AX=\begin{bmatrix}-1& 1& 0& 0\\\\ 0 &-1& 1& 0\\\\ -1& 0& 1& 0\\\\ -1& 0& 0& 1\\\\ 0 & 0&-1& 1\end{bmatrix}\begin{bmatrix}x_1\\\\x_2\\\\x_3\\\\x_4\end{bmatrix}=\begin{bmatrix}x_2-x_1\\\\x_3-x_2\\\\x_3-x_1\\\\x_4-x_3\end{bmatrix}\tag{4} AX= 10110110000110100011 x1x2x3x4 = x2x1x3x2x3x1x4x3 (4)
        A X = [ − 1 0 − 1 − 1 0 ] x 1 + [ 1 − 1 0 0 0 ] x 2 + [ 0 1 1 0 − 1 ] x 3 + [ 0 0 0 1 1 ] x 4 (5) AX=\begin{bmatrix}-1\\\\0\\\\-1\\\\-1\\\\0\end{bmatrix}x_1+\begin{bmatrix}1\\\\-1\\\\0\\\\0\\\\0\end{bmatrix}x_2+\begin{bmatrix}0\\\\1\\\\1\\\\0\\\\-1\end{bmatrix}x_3+\begin{bmatrix}0\\\\0\\\\0\\\\1\\\\1\end{bmatrix}x_4\tag{5} AX= 10110 x1+ 11000 x2+ 01101 x3+ 00011 x4(5)
  • AX=0的零空间X表示的是列向量的线性组合。X的物理意义表示的每个节点的电势值[potential at the node ],那么 x 2 − x 1 x_2-x_1 x2x1表示的是edge1的电势差,那什么时候可以保证电势差为0呢,那只有每个结点的电势相同即可,所以可以得到解如下,所以 dim N ( A ) = 1 , R a n k ( A ) = 4 − 1 = 3 N(A)=1,Rank(A)=4-1=3 N(A)=1Rank(A)=41=3
    X = c [ 1 1 1 1 ] (6) X=c\begin{bmatrix}1\\\\1\\\\1\\\\1\end{bmatrix}\tag{6} X=c 1111 (6)

2. A T Y = 0 A^TY=0 ATY=0

  • 矩阵表示形式如下, dim N ( A T ) = m − r ( A T ) = 5 − 3 = 2 N(A^T)=m-r(A^T)=5-3=2 N(AT)=mr(AT)=53=2,物理上表示 y 1 … y 5 y_1\dots y_5 y1y5为每个边edge上的电流大小:
    A T Y = [ − 1 0 − 1 − 1 0 1 − 1 0 0 0 0 1 1 0 − 1 0 0 0 1 1 ] [ y 1 y 2 y 3 y 4 y 5 ] = [ − y 1 − y 3 − y 4 y 1 − y 2 y 2 + y 3 − y 5 y 4 + y 5 ] = [ 0 0 0 0 ] (7) A^TY=\begin{bmatrix}-1& 0& -1& -1&0\\\\ 1& -1& 0& 0&0\\\\ 0& 1& 1& 0&-1\\\\ 0& 0& 0& 1&1 \end{bmatrix}\begin{bmatrix}y_1\\\\y_2\\\\y_3\\\\y_4\\\\y_5\end{bmatrix}=\begin{bmatrix}-y_1-y_3-y_4\\\\y_1-y_2\\\\y_2+y_3-y_5\\\\y_4+y_5\end{bmatrix}=\begin{bmatrix}0\\\\0\\\\0\\\\0\end{bmatrix}\tag{7} ATY= 11000110101010010011 y1y2y3y4y5 = y1y3y4y1y2y2+y3y5y4+y5 = 0000 (7)
  • 函数物理意义:
    − y 1 − y 3 − y 4 = 0 ⇒ y 1 + y 3 = − y 4 (8) -y_1-y_3-y_4=0\Rightarrow y_1+y_3=-y_4\tag{8} y1y3y4=0y1+y3=y4(8)
    表示的对于节点1来说,流入的电流为 − y 4 -y_4 y4,流出的电流为 y 1 + y 3 y_1+y_3 y1+y3,所以可以得到基尔霍夫电流定律,流入节点电流和等于流出节点的电流和
    在这里插入图片描述
  • N( A T A^T AT)=m-r=5-3=2,我们看由1,2,3组成的节点环1,如果想成为闭环,可以得到如下:
    y 1 + y 2 − y 3 = 0 (9) y_1+y_2-y_3=0\tag{9} y1+y2y3=0(9)
  • A T Y = 0 A^TY=0 ATY=0的特解中当 y 1 = 1 , y 2 = 1 , y 3 = − 1 , y 4 = 0 , y 5 = 0 y_1=1,y_2=1,y_3=-1,y_4=0,y_5=0 y1=1,y2=1,y3=1,y4=0,y5=0,表示 L o o p 123 Loop_{123} Loop123
  • A T Y = 0 A^TY=0 ATY=0的特解中当 y 1 = 0 , y 2 = 0 , y 3 = 1 , y 4 = − 1 , y 5 = 1 y_1=0,y_2=0,y_3=1,y_4=-1,y_5=1 y1=0,y2=0,y3=1,y4=1,y5=1,表示 L o o p 345 Loop_{345} Loop345
  • A T Y = 0 A^TY=0 ATY=0的特解中当 y 1 = 1 , y 2 = 1 , y 3 = 0 , y 4 = − 1 , y 5 = 1 y_1=1,y_2=1,y_3=0,y_4=-1,y_5=1 y1=1,y2=1,y3=0,y4=1,y5=1,表示 L o o p 1234 Loop_{1234} Loop1234
  • 线性无关组表示不形成环时的边组合。这样可以看出来矩阵和图的对应关系。很直观。
  • 矩阵的相关就是表示图形中的环,矩阵的不相关就是表示不成环,形成树。
    在这里插入图片描述在这里插入图片描述
  • 矩阵的秩和图之间的关系
  1. D i m { N ( A T ) } Dim \{N(A^T)\} Dim{N(AT)}=#loops;
  2. m=#edges;
  3. r=n-1,节点的数量-1
    D i m { N ( A T ) } = m − r (10) Dim \{N(A^T)\}= m-r\tag{10} Dim{N(AT)}=mr(10)
    综上所述,可以得到如下

# n o d e s − # e d g e s + # L o o p s = 1 (11) \#{nodes}-\#{edges}+\#{Loops}=1\tag{11} #nodes#edges+#Loops=1(11)

3. A X = 0 AX=0 AX=0 A T Y = 0 A^TY=0 ATY=0的关系

  • A X = 0 AX=0 AX=0 的方程中,我们定义每个边两端的电势差E
    E = A X (12) E=AX\tag{12} E=AX(12)

  • A T Y = 0 A^TY=0 ATY=0的方程中,我们定义每个边中的电流为y,通过欧姆定理,定义电势差E,和常数C,电流Y之间的关系如下:
    Y = C E (13) Y=CE\tag{13} Y=CE(13)

  • 电流方程如下:
    A T Y = 0 (14) A^TY=0\tag{14} ATY=0(14)

  • 将方程12,13 代入到方程14中可得如下:
    A T C A X = 0 (15) A^TCAX=0\tag{15} ATCAX=0(15)

  • 我们定义外部电流从原来的0变为f,整理公式15可得平衡方程,并且 A T C A A^TCA ATCA对称:

A T C A X = f (16) A^TCAX=f\tag{16} ATCAX=f(16)

相关文章:

图和网络笔记

文章目录 1. A X 0 AX0 AX02. A T Y 0 A^TY0 ATY03. A X 0 AX0 AX0和 A T Y 0 A^TY0 ATY0的关系 1. A X 0 AX0 AX0 一个图可以由节点和边组成,假设我们有一个节点notes :n4,边edges:m5的有向图,表示如下 通过以上电路…...

请求外部系统报错

报错信息: nested exception is com.google.common.util.concurrent.ExecutionError: java.lang.NoSuchMethodError: com.google.common.net.HostAndPort.getHostText()Ljava/lang/String; 在网上看了好几篇文章,和我的都不符合。 后面自己发现是我的系…...

电路板维修【四】

【开关电源输出电压偏低不稳,用示波器立马锁定故障范围】:https://www.bilibili.com/video/BV1pf421D73K?vd_source3cc3c07b09206097d0d8b0aefdf07958 可以用示波器查看MOS的输出波形来查看其是否损坏: 电源芯片的供电电压来回跳变&#xf…...

(程序设计语言)传值、传引用

1、传值(传递值): 在传值的情况下,函数接收到的是参数的一个副本,而不是参数本身。这意味着函数内部对参数的修改不会影响到原始值。传值通常用于基本数据类型(如整数、浮点数、布尔值等)的传递…...

一次基类类型对象无法被传递问题的分析

看下面一段代码&#xff1a; // proj2.cpp #include <iostream> using namespace std; class CharShape { public:CharShape(char ch) : _ch(ch) {};virtual void Show() 0; protected:char _ch; // 组成图形的字符 }; class Triangle : public CharShape { public:Tr…...

windows设置Redis服务后台自启动

问题 在日常开发过程中&#xff0c;redis是我们常用的缓存工具&#xff0c;但是由于redis对于Linux系统进行开发的&#xff0c;在Linux系统里可以通过修改redis.conf从而从而实现后台启动。 daemonize no 改成 daemonize yes 但是在window上如何也进行后台运行呢&#xff0c…...

掌握Linux常用命令,扫平面试需求障碍

cd 切换目录。 > cd ../ #切换到父级目录 > cd /tmp # 切换到/tmp目录 > cd ~ # 切换到当前用户的家目录 ls命令 查看文件与目录的命令&#xff0c;list 的缩写。 > ls -l #列出长数据串&#xff0c;包含文件的属性与权限数据等 > ls -a #列出隐藏…...

c语言之文件打开模式

在c语言中&#xff0c;文件打开模式如下 r读模式: 允许对文件读取信息。若文件不存在&#xff0c;则会报错 w写模式&#xff1a; 允许向文件写入信息&#xff0c;若文件不存在&#xff0c;则创建一个文件 #include<stdio.h>int main() {FILE *fp;int i;char ay;fpfo…...

与禹老师学前端vue3学习汇总

24.5.15&#xff1a; 创建Vue3工程 1.确定自己电脑有没有nodejs环境&#xff0c;在cmd中输入node&#xff0c;如果出现Node.js的版本号说明已经有这个环境了&#xff0c;否则搜索Node.js安装 2.先在D盘创建一个文件夹Vue3_Study&#xff0c;然后在这个空文件夹中右键选择终端…...

Linux网络编程——HTTP协议的理解与运用

目录 前言 一、认识URL 二、认识HTTP样例 三、HTTP的报头内容 1.url 2. Content-Type 3.Method 方法 1.GET方法 2.POST方法 4、状态码 5.cookie和session 前言 我们知道&#xff0c;协议就是一种约定&#xff0c;客户端与服务端统一的用这种约定进行传输数据。我们…...

RestTemplate接口请求发送json、form数据格式以及处理接口错误状态码400 null

在使用RestTemplate发送HTTP请求时&#xff0c;你可以通过不同的方式发送JSON或表单数据&#xff08;application/x-www-form-urlencoded&#xff09;。同时&#xff0c;处理接口错误状态码&#xff08;如400&#xff09;和返回null的情况也是很重要的。以下是一些示例代码&…...

《Python编程从入门到实践》day29

# 昨日知识点回顾 修改折线图文字和线条粗细 矫正图形 使用内置格式 # 今日知识点学习 15.2.4 使用scatter()绘制散点图并设置样式 import matplotlib.pyplot as plt import matplotlib matplotlib.use(TkAgg)plt.style.use(seaborn-v0_8) # 使用内置格式 fig, ax plt.subpl…...

UIKit之图片浏览器

功能需求 实现一个图片浏览器&#xff0c;点击左右按钮可以切换背景图&#xff0c;且更新背景图对应的索引页和图片描述内容。 分析&#xff1a; 实现一个UIView的子类即可&#xff0c;该子类包含多个按钮。 实现步骤&#xff1a; 使用OC语言&#xff0c;故创建cocoa Touch类…...

如何查看SNMP设备的OID

什么是OID和MIB OID OID 代表对象标识符。 OID 唯一地标识 MIB 层次结构中的托管对象。 这可以被描述为一棵树&#xff0c;其级别由不同的组织分配。MIB MIB&#xff08;管理信息基&#xff09;提供数字化OID到可读文本的映射。 使用MIB Browser扫描OID 我的设备是一台UPS SN…...

什么?你设计接口什么都不考虑?

如果让你设计一个接口&#xff0c;你会考虑哪些问题&#xff1f; 1.接口参数校验 接口的入参和返回值都需要进行校验。 入参是否不能为空&#xff0c;入参的长度限制是多少&#xff0c;入参的格式限制&#xff0c;如邮箱格式限制 返回值是否为空&#xff0c;如果为空的时候是…...

2024年3月 青少年等级考试机器人理论真题二级

202403 青少年等级考试机器人理论真题二级 第 1 题 一个机器小车&#xff0c;用左右两个电机分别控制左右车轮&#xff0c;左侧电机转速是100rpm&#xff0c;右侧电机转速是50rpm&#xff0c;则此机器小车&#xff1f;&#xff08; &#xff09; A&#xff1a;原地右转 B&am…...

C语言学习【printf函数和scanf函数】

C语言学习【printf函数和scanf函数】 printf()函数和scanf()函数可以让用户与程序交流&#xff0c;是输入/输出函数 printf()函数 请求printf()函数打印数据的指令要与待打印数据的类型相匹配。例如&#xff0c;打印整数时使用%d&#xff0c;打印字符时使用%c。这些符号被称…...

shell正则表达式

sort命令 以行为单位对文件内容进行排序&#xff0c;也可以根据不同的数据类型来排序 比较原则是从首字符向后&#xff0c;依次按ASCII码值进行比较&#xff0c;最后将他们按升序输出。 sort 对行内容进行升序排序 XXX | sort 选项 sort 选项 文件 常用选项&#x…...

react组件渲染性能优化之函数组件-useCallback使用

useCallback主要就是对函数进行缓存,useCallBack这个Hooks主要是解决React.memo不能缓存事件的问题 useCallBack(fn, dependencies) &#xff1a;fn想要缓存的函数&#xff0c;dependencies有关是否更新 fn 的所有响应式值的一个列表 比如&#xff1a;UseCallBackOptimize组件…...

【C++】:string类的基本使用

目录 引言一&#xff0c;string类对象的常见构造二&#xff0c;string类对象的容量操作三&#xff0c;string类对象的访问及遍历操作四&#xff0c;string类对象的修改操作五&#xff0c;string类非成员函数六&#xff0c;整形与字符串的转换 引言 string 就是我们常说的"…...

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...

UE5 学习系列(三)创建和移动物体

这篇博客是该系列的第三篇&#xff0c;是在之前两篇博客的基础上展开&#xff0c;主要介绍如何在操作界面中创建和拖动物体&#xff0c;这篇博客跟随的视频链接如下&#xff1a; B 站视频&#xff1a;s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...

YSYX学习记录(八)

C语言&#xff0c;练习0&#xff1a; 先创建一个文件夹&#xff0c;我用的是物理机&#xff1a; 安装build-essential 练习1&#xff1a; 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件&#xff0c;随机修改或删除一部分&#xff0c;之后…...

基于数字孪生的水厂可视化平台建设:架构与实践

分享大纲&#xff1a; 1、数字孪生水厂可视化平台建设背景 2、数字孪生水厂可视化平台建设架构 3、数字孪生水厂可视化平台建设成效 近几年&#xff0c;数字孪生水厂的建设开展的如火如荼。作为提升水厂管理效率、优化资源的调度手段&#xff0c;基于数字孪生的水厂可视化平台的…...

C++ 基础特性深度解析

目录 引言 一、命名空间&#xff08;namespace&#xff09; C 中的命名空间​ 与 C 语言的对比​ 二、缺省参数​ C 中的缺省参数​ 与 C 语言的对比​ 三、引用&#xff08;reference&#xff09;​ C 中的引用​ 与 C 语言的对比​ 四、inline&#xff08;内联函数…...

C# 类和继承(抽象类)

抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...

自然语言处理——循环神经网络

自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元&#xff08;GRU&#xff09;长短期记忆神经网络&#xff08;LSTM&#xff09…...

【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分

一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计&#xff0c;提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合&#xff1a;各模块职责清晰&#xff0c;便于独立开发…...

【7色560页】职场可视化逻辑图高级数据分析PPT模版

7种色调职场工作汇报PPT&#xff0c;橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版&#xff1a;职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...

【无标题】路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论

路径问题的革命性重构&#xff1a;基于二维拓扑收缩色动力学模型的零点隧穿理论 一、传统路径模型的根本缺陷 在经典正方形路径问题中&#xff08;图1&#xff09;&#xff1a; mermaid graph LR A((A)) --- B((B)) B --- C((C)) C --- D((D)) D --- A A -.- C[无直接路径] B -…...