自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

withstand的博客

智人脑神经随机活动的产物。

  • 博客(171)
  • 资源 (3)
  • 收藏
  • 关注

原创 044_Standalone App in Matlab中发布独立应用

跟别说,我们MATLAB仙人还提供了默认参数的选项,顿时把这个冒烟测试的例子提升到它不应该有的高度。这个应用的功能超级牛叉,应用可以接受0个或者1个字符串参数,输出你好世界,来自xxx。下面给出一个简单的命令行应用打包的例子,为了展示过程,我们先整一个最简单的TUI应用,然后打包成独立App。文件里面包含了一些关于这个应用的信息,比如如何安装MATLAB Runtime,如何运行这个应用等等。来安装这个应用,但是这个过程太繁琐了,我们可以把这个应用打包成一个安装包,然后一键安装。只要给够钱,牛马们都能干。

2025-01-04 17:19:51 1032

原创 pyinstaller冻结打包多进程程序的bug:无限创建进程直至系统崩溃

这两篇文章都没有提到下面的这个重要问题:采用Pyinstaller冻结打包多进程程序时,必须非常小心。这个技术线在Windows上会有一个非常严重的Bug。直接运行打包后的程序会造成无限创建进程,直到系统崩溃。

2025-01-04 17:14:45 1248

原创 007-构建工具大进步:Amper Amper Amper!

Amper赛高。Amper可以独立运行,也可以作为Gradle插件运行。Amper的配置文件简单,易读。Amper有一个问题就是Repositories的配置,在yaml文件中设置的时候,库还是排在系统默认的三个库的后面……你懂的,我还去提了一个issue……

2024-12-31 19:21:20 1062

原创 006-Jetpack Compose for Android之传感器数据

只有经过了上面两步,才能什么同步Gradle 工程之类的,然后build一下,确认所有的依赖都下载完了。大概我们可以在上方设置一个标签,显示实时得到的最新数据,下方主体部分一个图标,动态更新,显示姿态的变化。打开Androi的Studio,新建一个项目,选择Jetpack Compose模板。这里实现一个动作,双击图表,会弹出一个对话框,让用户输入文件名,然后导出数据。,这个是Compose中的一个组件,用来显示Android原生的View。的组件,这个组件是我们自己写的,用来显示传感器数据。

2024-12-31 19:18:36 939

原创 043_Tcpip Instruments in Matlab中连接和调试采用TCP/IP协议的仪器

设置多路路由,可以同时访问不同网段的仪器。Tcpclient对象是用来连接和调试采用TCP/IP协议的仪器的。回声服务器可以用于测试我们实现的客户端功能。我们也可以构造tcpserver对象,用于接收客户端的请求,留到下回。

2024-12-15 09:58:51 1405 1

原创 042_Unscented Kalman Filter in Matlab无迹卡尔曼滤波

无迹卡尔曼滤波(Unscented Kalman Filter, UKF)是一种基于卡尔曼滤波的非线性状态估计方法,它通过一种称为无迹变换(Unscented Transformation)的方法,将非线性系统的状态估计问题转化为线性系统的状态估计问题,然后使用卡尔曼滤波器进行状态估计。这是一种在线方法,也就是说,它会连续地对系统状态进行估计,而不是像批处理方法那样,一次性处理所有的数据。假设我们对 van der Pol Oscillator 的状态进行观测,但是观测值是带有噪声的。系统的框图如上所示。

2024-12-15 09:55:11 939

原创 041_Compare_Matrix_Squre_Sum_in_MATLAB中矩阵平方和的比较

矩阵平方和的定义是对矩阵中的每一个元素进行平方,然后求和。对于一个矩阵AAAsum∑i1m∑j1nAij2sumi1∑m​j1∑n​Aij2这个平方和计算,在某些机器学习的算法中、或者特殊的优化问题中都会涉及到。进行算法开发,一定要按照基线算法、算法优化的思路来考虑。对算法的效率进行比较,最好选择不同的规模来分析问题。加速比是一个很好的指标,能够直观的看出算法的性能提升。

2024-12-06 00:14:00 957

原创 040_Wave_PDE_In_Matlab求解时变波动方程

当一个偏微分方程,可以写成上述散度形式(Divergence Form),即可以采用有限元方法很方便的求解,这里有一个条件就是方程的系数矩阵必须不包含函数的偏微分(可以包括函数、坐标、时间等变量)。接着,就给出被积函数的整体形式作为函数的第一个参数,并把因变量,只有一个可以省略。代码中唯一个好玩一点点的就是最后的gif生成,当目录下已经有文件的时候,就增加一个编号,这样保证gif文件是新的,当。的形式调用时,就会把图形增加到后面,如果是一个已有的gif,就会发生不希望的情况。

2024-12-06 00:07:48 986

原创 039_SettingsGroup_in_Matlab图形界面的设置选项

首先,我们可以看看Matlab的语言选择,这个选项在Matlab-General下面的最后一个面板,Desktop Language,可以选择Chinese和Engish。在上面的1、2、3、4、5这几个区域的右上角,都有一个小小的三角形,点击这个三角形,可以展开一个菜单,里面有一些设置选项。如果关掉这个80列的选项,就会利用命令行窗口的所有列来显示,如果还是不够显示,就是进行上面这样的标记列范围的换行显示。中,也可以打开一个设置窗口,里面有很多设置选项,可以设置Matlab的界面和GUI的各种行为。

2024-11-23 09:48:40 1360

原创 038_High_Level_Skip_in_Matlab中的高端跳过循环

两种循环方式,for和whilebreakreturncontinue控制循环提前结束和跳过for循环中使用break更加自然while循环中使用break的条件可以合并到while表达式中设计UI的过程中,一定要考虑清楚每个元素的职责,不要让一个元素负责多个职责。

2024-11-23 09:44:34 831

原创 老古董Lisp实用主义入门教程(13): 恶作剧先生的黑客帝国特效

恶作剧先生只有在进行恶作剧的时候才会动脑筋,他可真是个傻瓜啊……

2024-11-18 16:15:34 948

原创 037_Local_Meshing_Control_in_MATLAB中控制局部网格划分

工具箱提供了有限的节点增加方法,通过增加节点来控制局部网格划分。最好还是在分析之初,或者在迭代过程中回到几何创建的过程中,来额外产生边和面,从而控制局部网格划分。

2024-11-18 16:08:19 1094

原创 036_Geometry_Function_In_Matlab中定义偏微分方程求解2D几何区域的函数方法

这个几何形状是PDE求解的区域。也就是说偏微分方程这个区域中取值(初始值和状态值、系数),在区域的边界上设定边界条件。m∂2u∂t2d∂u∂t−∇⋅c∇uaufm∂t2∂2u​d∂t∂u​−∇⋅c∇uauf或者,方程组m∂2u∂t2d∂u∂t−∇⋅c⊗∇uaufm∂t2∂2u​d∂t∂u​−∇⋅c⊗∇uauf。

2024-11-14 14:52:15 993

原创 035_Progress_Dialog_in_Matlab中的进度条对话框

这个可以取消的进度条,在实际使用中应该足够保守,仅仅用于那些长时间计算、并且在计算中不允许用户进行其它交互的场合。不然,过于激进地使用模式对话框还是很容易影响用户体验的。

2024-11-14 08:59:00 845

原创 005-Kotlin界面开发之程序猿初试Composable

输入信息显示信息这两个核心的界面开发内容,下一次我们再来讨论。

2024-11-04 20:04:36 1079

原创 004-Kotlin界面开发快速入水之TicTacToe

这个程序是一个简单的井字棋游戏,我们通过Jetpack Compose来实现了界面,通过Kotlin来实现了逻辑。至于程序的实现细节,源代码的解读,就放在下次。

2024-11-04 19:15:55 1105

原创 034_Structural_Transient_In_Matlab结构动力学问题求解

函数进行可视化,这个函数可以把求解的结果映射到网络结构上,对点、线、面进行着色。当时求解这个问题,在最外面的竖直切面加载了一个静态的固定的力。注意,我们这里设置边界条件的函数,由小写字母开头,而设置好的边界条件的变量,首字母是大写的。这里,因为是一个动态问题,我们实际更想要更好地理解在动态载荷下,结构是如何发生变形和位移的。,这个函数提供了更多的可视化功能,可以对结构的变形、位移、应力、应变等进行可视化。加载的设置方法,类似于边界条件的设置。当这里使用一个函数是, 对函数的输入和输出有固定的要求。

2024-11-02 15:34:12 1219

原创 033_Structure_Static_In_Matlab求解结构静力学问题两套方法

求解静力学问题,求解过程和结果都没有什么让人惊喜的地方。下面,在讨论一个周期加载的问题,这个问题是一个动力学问题。我们就直接用统一建模框架来做。

2024-11-02 12:45:46 1048

原创 003-Kotlin界面开发之声明式编程范式

在深入进行Jetpack Compose的学习之前,我们先通过一个简单的DSL实现,了解了Jetpack Compose的核心思想:通过声明式的DSL来描述界面。这样的方式非常灵活,而且非常容易理解,也非常容易调试。通过这样的方式,我们可以更加专注于界面的结构,而不需要关心界面的构造过程。这个实现的过程中,两个语法糖要自己在大脑里反复转换,最后一个参数是匿名函数,则可以移到括号外面;接受者匿名函数相当是临时定义一个扩展函数。有一点点绕,但是多改改代码,也能够理解。

2024-11-01 15:28:38 967

原创 002-Kotlin界面开发之Kotlin旋风之旅

其他需要掌握的知识,如协程、Kotlin标准库、Kotlin特性等,都是Kotlin的高级特性,对于Compose Desktop的开发这个学习阶段并不是必须的。

2024-10-31 18:14:59 1378 2

原创 001-Kotlin界面开发之Jetpack Compose Desktop学习路径

Compose Desktop是一个非常强大的桌面应用程序框架,它提供了一种现代、简洁、易于使用的方式来构建桌面应用程序。学习Compose Desktop需要掌握Kotlin的基本语法、Jetpack Compose的基础知识、状态管理、布局和修饰符、用户输入的处理、列表、高级主题、测试和应用部署等内容。通过上面的学习过程,就有可能获得对Compose Desktop较深入的理解,并能够构建自己的桌面应用程序。那么,就让我们开始这段……感情……哦不……旅程吧……

2024-10-31 17:12:01 1626

原创 032_Tiledlayout_in_Matlab中的分块图布局

这个方式比之前的subplot函数更加灵活,可以更加方便的绘制多个子图。但是,这个功能在R2019b之后才有,所以需要注意版本的问题。

2024-10-29 11:11:39 1683

原创 031_Arguments_in_Matlab中的函数参数

arguments块中,可以定义输入参数、输出参数、重复输入参数、重复输出参数。可以使用内置的验证函数,也可以自定义验证函数。可以使用结构体的方式来定义命名参数。可以用于抛出错误,error也可以用于抛出错误。

2024-10-29 09:31:20 983

原创 030_Subplot_In_Matlab中多图绘制之subplot函数

当然,从下面的例子可以看到,当有两个子图发生重叠时,就把先绘制的那个子图删除替换成新的子图。这里,先把第一行的两个子图绘制完成后,再绘制第二列的一个子图,这样就把第一行的第二个子图删除了。这里有同样的问题,把上面脚本中子图坐标系的位置稍微调整一下就会发现,当有两个图重叠时,后绘制的图会把先绘制的图覆盖掉。这里比较烦人的就是要手动调整标注(箭头、方框)的位置,而且这个坐标是针对整个图的,不是针对子图的,也就是左小角坐标是。简单的说,子图的编号采取了行先的方式,下面给出一个循环的例子,可以看到,图号按照。

2024-10-28 17:55:17 2412 2

原创 029_Common_Plots_Matlab常见二维绘图

来查看详细的帮助,帮助中通常还有海量的例子来学习如何调用,并且在高版本的Matlab里面,还能打开相应的LiveScript,修改参数查看绘图结果。实际上,我们调用上述绘图函数的时候,可以把第一个参数设置为一个坐标系对象,如果省略这个参数,Matlab会自动调用。用新的工具,可以更加方便的控制坐标系的位置和大小,以及坐标系之间的间距。的参数,可以设置子图的大小,这个参数是一个二维数组,第一个元素是行数,第二个元素是列数。可以通过对句柄的操作,来修改图形的属性,例如颜色,线型,线宽等等。

2024-10-28 17:51:39 996

原创 028_Comma_Separated_List_in_Matlab中的逗号分割列表

这玩意一般都不知道是什么,Comma-separated list,CSL, 虽然,用Matlab的时候天天会用到。这到底是个什么玩意?或者,更进一步,这到底是不是个玩意?每次调用一个参数大于一个的函数时,我们就是用了一个CSL,a.k.a.,逗号分割列表。ans =0 00 0每次我们显式定义一个数组/矩阵/元胞数组时,我们就写了一个或者多个逗号分割列表。ans =1 2 3 34 5 6 7>> {1,2,3}ans =1×3 cell 数组。

2024-10-26 17:38:40 1242

原创 027_UIImage_in_Matlab图形界面开发中的图片

图形在Matlab中是一个矩阵UIImage是Matlab图形界面开发中常用的控件通过imread和imwrite可以读取和保存图形图像也可以存储为mat文件,乃至文本文件,前者通过save和load可以保存和加载图形,后者通过和readmatrix可以保存和加载。

2024-10-26 10:15:32 625

原创 026_Callbacks_in_MATLAB中APP界面回调函数编程实现

回调函数是Matlab GUI和App设计中的一个核心的内容,通过用户注册回调函数,在界面操作时App代码会自动调用相应代码,实现各种功能。回调函数的注册方式有两种:函数句柄和匿名函数。回调函数具体实现方式有三种:全局函数、局部函数和嵌套函数。

2024-10-21 21:09:10 1755

原创 025_Position_Layout_in_Matlab界面布局之设定位置

Position属性对于图形对象来说是一个通用的属性,包括左下角坐标、宽度和高度通过设置Position属性,可以实现uifigure界面的布局通过uistack函数,可以设置组件的Z维度,来实现组件的层次可以直接捕获整个uifigure对象,然后在回调函数中访问uifigure对象的UserData属性,来实现功能。这在有些情况下能够获得一些收益。

2024-10-21 00:10:23 1033

原创 024_Symbolic_Math_in_Matlab符号数学工具箱的使用思路

一定要分离符号计算和数值计算,以免符号计算的低效影响数值计算的效率。fplot函数可以直接绘制符号表达式的图像。符号函数是符号表达式的一种,可以直接调用,定义的方式为。符号表达式可以通过函数转化为函数句柄或者函数文件,这样就可以在数值计算中使用。

2024-10-19 23:52:13 1356

原创 023_Layout_and_Containers_in_Matlab界面布局与容器

uifigure是根容器,其他容器都是它的子容器,通过设置句柄不可见,可以防止gcfgcaclose等函数对App的影响。是唯一的布局容器,通过设置行高、列宽、内边距、间距,可以很容易实现VBox和HBox。uipanel是一个面板容器,可以包含其他控件,可以设置标题、背景颜色等。uitabgroup和uitab是标签页容器,可以包含多个uitab,每个uitab可以包含其他控件。

2024-10-19 14:45:00 1543

原创 022_matrix_dancing_in_Matlab中求解一个超简单的矩阵问题

矩阵定义的两个基本元素是:类型和大小。通过zerosoneseyerand等函数可以定义不同性质的矩阵。矩阵的构造、操作和访问是Matlab的基本操作,也是每次计算的核心流程。通过zerosoneseyerand等函数可以定义不同性质的矩阵。通过等运算符可以对矩阵进行操作。也可以通过.*./.^等运算符对矩阵进行逐元素操作。通过end两个符号来访问矩阵的部分元素就;逻辑索引也非常强大,对部分满足条件的元素进行赋值。通过arguments关键字可以指定输入参数的类型,通过。

2024-10-18 10:42:10 884

原创 021_Thermal_Transient_in_Matlab统一偏微分框架之热传导问题

利用统一框架,求解动态热传导方程的过程与求解静力学方程类似,同样是建立模型、设定参数、求解、可视化结果。不是特别一样的在于,热传导方程的相似参数就只有一个,通过相似性分析,可以简化设定参数的过程,最后结果反应出来的只是时间尺度上的差异。通常而言,α是一个很小的量,因此传热的过程相对来说是比较慢的,通过无量纲化,计算步长比实际时间要小很多。

2024-10-18 10:38:54 841

原创 020_FEM_Meshing_in_Matlab工具箱PDE之网格划分

PDE工具箱提供的网格生成函数最大的优点是非常透明,网格数据结构非常清晰,可以通过model.Mesh来查看网格的各种属性。通过全局控制参数,可以对整个网格进行调整,通过局部控制参数,可以对网格的局部进行调整。通过函数,可以查看网格的质量,找到质量不好的元素,然后通过局部控制参数进行调整。PDE的网格工具功能相对单一,但是对于一般的几何体和相对偏理论的问题,已经足够使用。

2024-10-16 15:56:24 1486 3

原创 019_Baseline_optimization_in_Matlab中考虑优化的基线方法

优化是一个很高大上的词语,但是在实际工作中,优化通常是一个很无趣而平凡的事情。优化算法的基线通常会选择网格搜索和随机搜索。水论文总是要搞点优化,千万别太在意,也别太伤感情,每件事情都有代价,优化一样。

2024-10-14 09:55:36 1066

原创 018_FEA_Structure_Static_in_Matlab三维结构静力学分析

总的来说,这个新的Matlab的PDE工具箱的写法更加面向对象,更加符合现代的编程风格,但是对于老的写法,还是兼容的。求解静力学问题的过程比较清晰,对于处理非常简单相对偏理论的问题,是很容易拿到结果的,并且,各个数据结构相对透明,比如Mesh,节点、单元等信息都可以直接访问。如果要变更边界条件、载荷,来研究灵敏度,也是非常方便的,只需要修改model结构体的属性,然后重新求解就可以了。相应的,如果要做一些优化,也是非常方便的。

2024-10-12 17:28:29 1031

原创 老古董Lisp实用主义入门教程(12):白日梦先生的白日梦

白日梦先生想要编一个排名第一的Lisp库!

2024-09-28 23:06:45 1031

原创 【AI创作组】Matlab中进行符号计算

在MATLAB中,符号定义是进行符号计算的基础。sym和syms命令用于创建符号变量,而subs命令用于符号表达式中的变量替换。MATLAB的符号计算工具箱为用户提供了一套完整的符号数学解决方案。从定义符号变量到复杂的微积分运算,从方程求解到级数求和,Symbolic Math Toolbox都能提供强大的支持。

2024-09-24 23:50:30 1343

原创 【AI创作组】工程方向的硕士研究生学习Matlab的路径

MATLAB自20世纪70年代诞生以来,已经经历了多次重要的版本更新和功能扩展。

2024-09-23 19:22:09 1187

原创 【AI创作组】Common Lisp词法闭包

词法闭包和动态作用域各有优势和劣势,选择哪一种取决于具体的应用场景和编程风格。词法闭包更适合需要封装和模块化的场景,而动态作用域则适合需要高度灵活性和动态绑定的场景。在实际编程中,理解和正确使用这两种机制都是非常重要的。

2024-09-22 21:43:50 901

24点游戏程序(自动产生答案)

用Lisp实现的随机产生24点游戏,并给出解法,直接运行就行,限于windows系统。其他操作系统,请参考 https://blog.youkuaiyun.com/withstand/article/details/141176800 有程序的整个原始代码。

2024-08-16

Lisp实现的统计代码行数的命令行工具

完整的源代码和生成过程:https://blog.youkuaiyun.com/withstand/article/details/140528782 ;; Lisp 产生一个可执行文件 (load "lc.lisp") (sb-ext:save-lisp-and-die #p"lc.exe" :toplevel #'main :executable t) 使用方法: lc *.cpp 当前目录(不包含子目录)的所有cpp文件 lc **/*.cpp 当前目录(包含子目录)的所有cpp文件 将列出所有文件行数和总共的行数。

2024-07-18

Lisp的语言服务LSP,VSCode的插件Alive所需要的lisp软件包,可以用quicklisp安装

https://github.com/nobody-famous/alive-lsp 采用git archive生成,时间2024-07-18 17:30

2024-07-18

Windows数独游戏:Java FX实现

蛇蛇大作战解压直接运行版。几何数独游戏,微博[@屠龙的胭脂](https://weibo.com/1852299857?refer_flag=1001030103_)所介绍[几何数独游戏视频介绍](https://video.weibo.com/show?fid=1034:4737961351381034)同款。源码在:[蛇蛇数独游戏源代码@gitcode.net](https://gitcode.net/withstand/snakesudoku.git)。

2022-07-12

JavaFX 图标浏览与搜索软件

[源代码](https://gitcode.net/withstand/javafx-ikon) [介绍文章](https://blog.youkuaiyun.com/withstand/article/details/124097602)要开发专业的桌面应用程序,提高软件使用的直观性、图形界面的美观, 都离不开图标的使用 。IkonliPack 1.0.0是一个浏览Ikonli图标集合所有图标, 并提供图标在JavaFX环境下使用的方法的软件。 图标是开发桌面应用程序中非常必要的部分, JavaFX按钮、选择框、复选框等控件提供了graphic子节点来显示图标, 快捷工具栏、状态栏也都有图标的使用, 其它注入显示信息时节点的前面也会使用不同的图标来标明节点的类型。

2022-04-11

空空如也

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

TA关注的人

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