Matlab
KangDDD_
这个作者很懒,什么都没留下…
展开
-
Matlab求解方程
使用函数fzero,找到函数和0的交点,也就是函数值变号的点可以先画个图看看变号的区域。比如说确定出来是[1,10],也就是我们要找的方程的解是在1-10之内。接下来,假设要求解使得方程fun(x)=3的解,假设方程是x^2+x^3+x^4首先定义fun2 = @(x) x^2+x^3+x^4-3,region=[1,10]随后输入fzero(fun2,region)即可求解region内的解...原创 2022-03-15 01:40:41 · 1021 阅读 · 0 评论 -
如何解决Invalid quadratic form: product is complex
在cvx中,假设我们有一个复杂的正定矩阵A,但是明明就该是实数的二次型x^H*A*x,CVX非要说他是complex的,该怎么办?一种原因是因为Matlab的精度问题,导致明明是正定的hermitian矩阵A被变成了非hermitian矩阵。一种简单的处理办法是对A进行修改:A=1/2*(A+A')强迫A变成hermitian矩阵,这时候再输入二次型xAx就不会报错了,并且这种修改带来的误差较小...原创 2021-09-07 23:28:58 · 2485 阅读 · 0 评论 -
小白ubuntu安装Matlab
1.首先在Matlab官网验证学校邮箱,获得授权下载权限,然后下载Matlab的Linux版本2.解压,extract here3.进入解压后的文件夹,右键:open terminal4.启动安装程序,输入 ./install5.一路安装,其中需要验证邮箱的license资格,还需要选择安装位置,可能会提示无法新建文件夹,或者无法写入。新建文件夹命令(在opt文件夹下新建叫作Matlab的文件夹):sudo mkidr /usr/opt/Matlabhttps://zhidao.ba原创 2021-05-08 18:47:58 · 735 阅读 · 0 评论 -
Matlab产生正交矩阵
产生一个K*K的正交矩阵A,即满足A^H * A = IK=3;B=rand(K,K)+i*rand(K,K);A=orth(B);Matlab检验:A'*A查看误差是否合理E = norm(eye(K)-A'*A,'fro')原创 2020-12-30 23:15:01 · 6977 阅读 · 0 评论 -
matlab遗传算法工具箱源代码学习
首先使用 open ga命令打开遗传算法源代码,依次顺序阅读defaultopt结构体给出了默认设置的代码m文件名称,可以查看默认的选择函数selectionstochunif(随机均匀选择),默认的交叉函数crossoverscattered(散点随机)等等文件的最后给出了调用的主体函数gaunc,进入这个函数后可以看到一个和种群数目有关的for循环for pop = 1:length(totalPop),在循环中找到主要的函数:stepGA,进入这个函数到这里就比较清楚了,可以.原创 2020-10-11 18:36:10 · 2123 阅读 · 1 评论 -
遗传算法解整数规划IntCon
x = ga(fun,nvars,A,b,[],[],lb,ub,nonlcon,IntCon)IntCon就是代表整数的参量,描述的是哪几个自变量是0-1整数变量。比如navrs设置有4个变量,设置IntCon为[2 3],代表第2和第3个变量是整数。再比如设置IntCon=2:2:nvars,代表偶数项的变量是整数。值得注意的是一旦设置了非空的IntCon,则Aeqandbeqmust be an empty entry ([]), andnonlconmust re...原创 2020-10-08 18:36:11 · 8500 阅读 · 0 评论 -
MATLAB实现变限积分函数的积分/ 多重积分/ 如何解决求积分显示AB浮点标量报错
重点是要用arrayfun扩展求变限积分的积分:fun_inner = @(r) r.^2;fun_integral = @(x) integral(fun_inner, 0,x);fun_overall = @(u) fun_integral(u).*u;result = integral(fun_overall ,0,1)会报错A 和 B 必须为浮点标量...原创 2020-03-24 19:09:11 · 7039 阅读 · 3 评论 -
Matlab实现从字母列表中取出某一随机字母组合
从26个字母中随机挑出三个字母,取出这一组合array=nchoosek(1:26,3);num=randi(26);result=array(num,:);resultASCII=result+64;resultCom=char(resultASCII)原创 2020-03-24 18:45:12 · 1712 阅读 · 0 评论 -
matlab求分段函数的积分
首先定义分段函数y=2x when 0<=x<=2y=3x when 2<x<=4y=0 else代码为如下,注意用点乘运算,并且使用逻辑函数&而非&&,否则会报错function y=f(x) y=(x.*2).*(x>=0 & x<=2)+(x.*3).*(x>2& x<=4)+...原创 2020-03-08 23:29:45 · 6289 阅读 · 0 评论