语言, 其他语言

Matlab常用语句

Matlab是商业软件,目前不常使用,已改用Python。Matlab参考资料:

这里记录自己常用的Matlab语句,写一些注释,做个备忘。

% This code is supported by the website: https://www.guanjihuan.com
% The newest version of this code is on the web page: https://www.guanjihuan.com/archives/766

%在matlab里加上百分号“%”是注释。
%快捷键:选中按ctrl+R为注释,选中按ctrl+T为取消注释,
clc;  %clc有窗口清空的效果,一般都用上
clear all;  %clear all可以清空所有变量,一般都用上
clf;  %clf为清空输出的图片内容,在画图的时候最好添加上

aa=1   %没加分号“;”,默认打印输出
bb=2;  %加了分号“;”,即不打印输出
cc1=zeros(2,3)  %零矩阵用zeros()
cc2=eye(3,3)  %单位矩阵

%矩阵乘积
matrix1=[3,3;3,3]  %里面分号代表矩阵换一行。下标是从1开始记。
matrix2=[2,0;0,2]
matrix_product_1=matrix1*matrix2  % *是正常的矩阵乘积
matrix_product_2=matrix1.*matrix2  % .*是矩阵每个元素对应相乘

%循环
for i0=1:0.5:2  %循环内容为for到end。a:b:c代表最小值为a,最大值为c,步长为b
    for_result=i0+1i  %i在matlab中代表虚数,所以起变量名最好不要用i。要输出内容,后面不加分号即可
end

%判断
if aa~=1   %在matlab中,~=代表不等于,==代表等于
    dd=100
else
    dd=300
end

matrix=[2,3;5,7]
%求本征矢和本征值
[V,D]=eig(matrix)  %在matlab中,V的列向量是本征矢,注意是列。D的对角上是对应本征值。
%求逆
inv1=inv(matrix)  %求逆
inv2=matrix^-1    %求逆也可以这样写
%画图
plot([0:20],[10:-1:-10],'-o')  %更多画图技巧可参考官方文档或网上资料

额外补充:

  • matlab中的一撇表示厄密共轭。
  • matlab中的dot(A, B)已经包含了对A的厄密共轭, 即:dot(A, B)=A'*B。
3,406 次浏览

【说明:本站主要是个人的一些笔记和代码分享,内容可能会不定期修改。为了使全网显示的始终是最新版本,这里的文章未经同意请勿转载。引用请注明出处:https://www.guanjihuan.com

2 thoughts on “Matlab常用语句”

  1. 请问matlab矩阵对角化的特征值一定自动按大小排序吗,我想和原来哈密顿里的位置对上可以吗

    1. 特征值(本征值)是整个体系的能量,没有和位置对应的。波函数的分量可以和位置对应,模的平方是概率分布。

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

Captcha Code