20190403——matlab/octave的使用

v = 1:0.1:2
生成1到2 以0.1的频率增加
在这里插入图片描述


v =1:6 生成1到6个数字 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190403132804943.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzQ0Nzcx,size_16,color_FFFFFF,t_70)
ones(2,3) 生成2行3列的矩阵,数字都为1 ![在这里插入图片描述](https://img-blog.csdnimg.cn/2019040313303975.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzQ0Nzcx,size_16,color_FFFFFF,t_70)

v =rand(1,3)
介于0~1之间的小数
在这里插入图片描述


eye生成单位矩阵
在这里插入图片描述


在机器学习中,如果你有训练集的数据,如何变成矩阵,传输给octave,移动这些数据。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190403142151291.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzM2MzQ0Nzcx,size_16,color_FFFFFF,t_70) 声明一个变量a为 3*2的矩阵。
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190403142217520.png) size(变量) 返回变量的行与列的数量

size(A,1)返回行数
size(A,2) 返回列数
length(A) 返回最大的维度 本列子中 A是一个3*2的矩阵,所以最大维度是3


在系统文件中加载和查找数据
在我们打开maltab或者octave的时候,我们已经处于一个默认路径中
pwd
在这里插入图片描述
在这里插入图片描述
去我们想去的地方 cd ‘路径’

用load函数去加载你想要处理的文件

who函数显示,所有在当前工作区的变量
whos 会更详细的显示

clear 变量 可以删除变量

当我们处理完数据 想要把数据存储在硬盘上

save hello.mat v;
保存一个名为hello.mat 的文件


在这里插入图片描述
无关运算,只是单纯的把B与A结合形成一个新的矩阵C

在这里插入图片描述
A与B 之间如果有个一个分号,相当于把B放在A的下面形成一个新的矩阵。


矩阵的乘法就是很简单的。A*C
像线性代数

如果想要单纯的,对应的位置相乘,那么就是 A. *B

A .^2 就是A对应的位置上的数的平方,生成新的矩阵
在这里插入图片描述
1 ./ V 求所有对应数的倒数

在这里插入图片描述

A’ 求A的转置矩阵
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
每一列的总和


在这里插入图片描述

hold on 函数可以在旧的图像上,添加新的图像

### 拓扑电荷计算方法 在MATLABOctave中实现拓扑电荷(topological charge)的计算通常涉及分析矢量场中的奇点及其周围的环绕特性。这一过程可以通过以下方式完成: #### 计算原理 拓扑电荷通常是通过积分绕数来定义的,其核心在于评估某个区域内的相位变化情况。对于二维空间中的矢量场 \( \vec{V}(x, y) = (u(x,y), v(x,y)) \),可以利用格林定理将其转化为线积分形式[^1]。 具体而言,在给定闭合路径上的相位差可通过如下公式表示: \[ Q = \frac{1}{2\pi} \oint_C d\theta, \] 其中 \( C \) 是围绕奇点的一条封闭曲线,\( \theta \) 表示矢量相对于某固定方向的角度。 此表达式可进一步离散化以便于数值处理。假设我们已知一系列采样点处的方向角,则总角度变化可以直接累加得到近似结果。 #### 实现代码 下面提供了一个简单的MATLAB/Octave脚本用于演示如何基于上述理论框架执行基本操作: ```matlab function top_charge = calculate_topological_charge(u, v, x, y) % u,v are components of vector field; x,y define grid points dx = diff(x(1:2)); dy = diff(y(:,1)); theta = atan2(v,u); % Compute angle at each point % Calculate differences along edges and sum up contributions from all cells. delta_x = mod(theta(:,[end 1:end-1]) - theta, 2*pi); delta_y = mod(theta([end 1:end-1],:) - theta, 2*pi); area_factor = pi / (dx * dy); top_charge = mean(mean((delta_x + delta_y))) .* area_factor; end ``` 该函数接受四个输入参数——两个代表向量分量的数据矩阵 `u` 和 `v` ,以及对应的坐标网格位置数组 `x` 及 `y` 。它首先计算每一点对应的角度值,接着估算相邻单元间的变化幅度并最终汇总得出平均拓扑密度作为输出变量 `top_charge`. 请注意这只是一个简化版本的例子,实际应用可能还需要考虑更多细节比如边界条件、奇异性的精确定位等问题[^2].
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值