自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 算法题总结——二分查找(整数二分)

之后,对于区间只有两个数的阶段,若是向上取整,那么在取[l,mid]的情形,会出现使区间一直是两个数[l,l+1]的死循环。之后,对于区间只有两个数的阶段,若是向下取整,那么在取[mid,r]的情形,会出现使区间一直是两个数[r-1,r]的死循环。整数二分可分为,查找左片区间的最后一个,查找右片区间的第一个,它们的模板是不同的。若mid不符合该条件,那么答案在不包含mid的区间[mid+1,r]若mid不符合该条件,那么答案在不包含mid的区间[l,mid-1],而问题要求查找的,

2025-07-20 23:37:50 211

原创 算法题总结——一维前缀和与一维差分

而如果采取前缀和方案,预处理的复杂度O(n),每次查询的复杂度O(1),m次查询复杂度O(m),总复杂度O(n+m),大大优化。这里可以注意到,当r==n时,diff[r+1]实际上是越界的。公式:diff[i]=a[i]-a[i-1] (可以注意到是前缀和s[i]=s[i-1]+a[i]的逆运算)前缀和适用于维护单点修改,区间查询,差分适用于维护单点查询,区间修改。如果不存结果,那么每次查询复杂度O(n),m次查询复杂度O(nm)。公式:s[i]=s[i-1]+a[i]

2025-07-19 06:40:00 176

原创 算法题总结——质数筛

若此时不停止,则后续被标记的数都可以表示为(k*q)*primes[j],则p*primes[j]是多余的,因为一定有(k*primes[j])*q这个形式来重复标记这个合数。且对于每个数,用它从小往大依次乘已得到的质数去标记合数,其中若出现这个数的质因数,则停止标记行为。原因是如果再用这个数去标记,那么就会导致有合数不是被“最小质因数*其他质因数的乘积”这样的形式标记的,这是多余的。埃及筛的时间复杂度是O(nloglogn),线性筛的时间复杂度是O(n),线性筛是埃及筛思路的优化。

2025-07-15 20:22:10 338

原创 JAVA 蓝桥杯 I/O手段(普通IO与buffered IO)

主要是使用BufferedReader类和BufferedWriter类。只有readLine()和read()方法,分别读为字符串和字符(read()返回的是Int,表示字符的acsii码)。因其只支持字符及字符串形式,若要读入其他形式数据,要读为字符串再转化,如使用parseInt()。在蓝桥杯中,JAVA主要有两种输入输出手段:普通IO与buffered IO。后者主要用于输入输出量比较大的情况,可以减少很多时间。主要是使用Scanner类和System.out。

2025-03-20 09:07:57 184

原创 Simulink模型作为MATLAB中的函数

其中,参数要以特定格式传递,具体地说,simin/simout有timeseries,结构体,矩阵三种形式,这里不详细讨论这个视角。我们知道,在simulink里面使用MATLAB-function,让MATLAB函数作为simulink系统里面的一个模型,是很常见的做法。base工作区对simulink模型是可见的,但如果你是在一个函数里面调用simulink模型,那么simulink模型不能从这个函数的局部工作区读取参数。函数传递参数到simulink的模型工作空间,通过sim。MATLAB视角下,

2024-07-27 17:12:59 1177

原创 Simulink 仿真出现奇异解,可能提示着系统不稳定

这一加上去,仿真过零的问题是解决,但是出现了新的问题,我啥都没干,这个系统的输出也是发散的,就算给个阶跃,给个恒定,它都发散,之后很长一段时间不论我怎么调整系统,怎么找问题,都没能解决输出发散震荡的问题。其实那些官方模块,比如PID,加个saturation是因为要让发散的情况,也就是有问题的情况,可以呈现出来,当出现奇异解,就说明系统是有问题的,并不是加个saturation掩耳盗铃就能把问题解决。甚至把我的被控模型加到师兄的控制器上,把我的控制器加到师兄的被控模型上,都没有这个发散的情况。

2024-07-08 00:11:25 2212

原创 Simulink 如何实现 被控系统初值不为零的控制仿真

然而当系统比较复杂,这个积分器又会受到其他模块影响的时候,我发现,虽然设了一个积分器初值为70,但是它又会急速下坠然后才跟随到初值,这是为什么?有时候,我们会遇到被控量的初值不为零。如果不作处理,比起我们要复现的图片,我们的仿真在最前面有一段从0到真实初值的跟随。如果是一个很简单的积分器,那我们可以直接设其初值为70,这样子输出就是从70开始的。

2024-07-06 16:23:37 1060

原创 Simulink 如何实现变参传函?

但是这个模块是比较新的,有时候过零会报错,因为那里面没有saturation模块,可以将VTF展开自行加入。(在simulink里面,传函和微分方程本质上表达的是一个东西,做到的是一个效果)2.使用Varying Transfer Function模块(VTF)3.用m-function和s-function实现。1.用拉普拉斯逆变换得出微分方程,然后自己搭建。

2024-07-06 01:40:18 511

原创 Simulink 如何查看模型参数

2,点击 xxx Workspace,即可查看该模型的workspace。1,点击 建模-模型资源管理器。

2024-07-03 23:54:05 3061

原创 Simulink 使用signal builder进行控制信号模拟

我刚开始不熟练走弯路还用,s-function,matlab-function写,手写那个分段函数,但这样非常耗时且不方便。然后发现是可以直接用signal builder模块去快速得到自定义信号源的。进行控制过程的仿真,其实就是用参数时变函数去体现的,需要自己写控制信号,

2024-07-02 17:26:09 1616

原创 Simulink的参数初始化

刚刚使用simulink做仿真的时候,总是要在workshop里面手打一遍参数,后来学会了存一个脚本,运行模型的时候也点开在workshop里面运行省一下功夫。但是这样还是太麻烦了,我上网查了一些方法自用。2.1 其中 对这种系统创建出来的模块,也可以用这个方法初始化。1,InitFcn回调函数。2,子系统参数单独初始化。

2024-07-02 00:15:27 1810

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除