摘要:
## Matlab 编程模拟二维溃坝过程 [原文链接](https://blog.csdn.net/weixin_43921223/article/details/107485254),放在CSDN上了 ![image](https://img-blog.csdnimg.cn/20200721121 阅读全文
摘要:
# 数值计算:三角形积分 书接上回[《高斯-勒朗德积分公式》](https://www.cnblogs.com/chetwin/p/15515157.html) > **需求:**在给定空间三角形$\Delta ABC$中,$A(x_1,y_1,z_1),B(x_2,y_2,z_2),C(x_3,y 阅读全文
摘要:
# C++: 基于四叉树数据结构的自适应网格 二叉树是一种典型的非线性存储数据结构,查找效率可以达到$O(log_2N)$,同样,这类树状结构存在许多种变体,详细参考[邓俊辉老师的《数据结构C++》课程](https://dsa.cs.tsinghua.edu.cn/~deng/ds/dsacpp/ 阅读全文
摘要:
## 引言 考虑存在以下二阶微分方程 $$ \begin{align} f_2 \cdot \ddot{X(t)}+f_1 \cdot \dot{X(t)} +f_0 \cdot {X(t)} =F(t) \end{align} $$ 如何使用四阶龙格-库塔法求解该微分方程? ## 一阶微分方程的解 阅读全文
摘要:
之前在项目中经常使用STAR-CCM+做数值模拟,中间也陆陆续续折腾过许久,踩过一些坑。未来考虑转行,以后可能也会不再用到这CFD软件,所以正好趁这个机会在这做一个教程。记录下自己STAR-CCM+学习流程,以及个人的使用经验,希望能够对入坑的同学们有所帮助。 阅读全文
摘要:
// A simple quickref for Eigen. Add anything that's missing. // Main author: Keir Mierle #include <Eigen/Dense> Matrix<double, 3, 3> A; // Fixed rows 阅读全文
摘要:
飞蛾子乱飞 问题(4.5)描述: 正儿八经的复杂做法 极坐标下进行建模 飞蛾1的运动轨迹为: $$ \rho=\rho(\theta) $$ 飞蛾2的运动轨迹为: $$ \rho=\rho(\theta+\frac{2}{3}\pi) $$ 飞蛾3的运动轨迹为: $$ \rho=\rho(\thet 阅读全文
摘要:
为了避免每次计算都要重写一遍,做个备份 function Hs = Cal_Hs(Eta) %CAL_HS 计算有义波高 N=length(Eta); Pset=UpCrossZeroPoints(Eta); N_P=length(Pset); H=[]; for k=1:1:N_P-1 eta_t 阅读全文
摘要:
CATIA:导入EXCEL数据点绘图 **需求:**需要导入数据点至CATIA绘制曲线 **解决方法:**借助Excel宏命令完成 1、找到EXCEL模板文件 一般在软件安装目录下,例如 C:\Program Files (x86)\Dassault Systemes\B20\intel_a\cod 阅读全文
摘要:
BEM_ALL用户手册PDF BEM_ALL用户手册 V1.3 陈天文 1206342642@qq.com 开发环境 Windows +Qtc+ MinGW Copyright © 2022 SJTU-NAOCE. All Rights Reserved. 说明 本手册是对BEM_ALL.exe以及 阅读全文
摘要:
Lua调用C++生成的DLL库 本文参考了某大佬的博客,写得十分详细,推荐!!! 需求: 在之前的求解器中添加了Lua库,使得程序可以在Lua脚本中实现自定义函数功能,考虑到未来可能需要与第三方程序库进行耦合计算,现在想到可以借助Lua脚本,在脚本中调用第三方动态库,以实现其功能的扩展。接下来将要简 阅读全文
摘要:
基于宏定义的几个C++记时工具,实现类似于MATLAB中tic().toc()的功能 #代码 #include <ctime> #define def_tic(name) clock_t t_##name #define rec_tic(name) t_##name = clock() #defin 阅读全文
摘要:
华为机试 记录两个与栈相关的算法题,折腾了一下午 需要注意dfs前后对称的操作 利用栈结构去处理存在明显先后顺序的问题,比如四则运算等 HJ77 火车进站 栈+dfs回溯 #include<bits/stdc++.h> using namespace std; int N; vector<vecto 阅读全文
摘要:
最近了解matlab中存在arrayfun这种类型的函数,帮助手册中有说明该函数的基本用法,现在对该函数进行效率测试 clc; A=rand(2000,2000); func=@(x) exp(x)*x+cos(x)*sin(x)^2; func2=@(x) exp(x).*x+cos(x).*si 阅读全文
摘要:
程序主界面 视频演示 阅读全文
摘要:
记录一下刷题时,找了很久的一个bug,函数中对输入指针进行操作TreeNode* &node #include<bits/stdc++.h> using namespace std; struct TreeNode { int val; struct TreeNode *left; struct T 阅读全文
摘要:
记录下Matlab中,由fig句柄生成PNG图片,再由多张图片生成MP4视频的工具函数 用法 genPNG(fig,['pic/',num2str(i/10,'t=%06.2f\n'),'.png']) genMP4('pic/','*.png','test',25); 生成PNG function 阅读全文
摘要:
2024/9/20更新 计算使用的是三方库 原来脚本找不到,所以又简单写了个测试用例仓库链接 理论部分 (待补充) 效果展示 阅读全文
摘要:
记录一下matlab中时历曲线分析的相关函数 FFT function out = myFFT(time,data) % 功能:FFT % 输入:time:时间 % data:数据 % 输出:out.Fre:频率 % out.Ampti:幅值 % out.Phase:相位 N=length(data 阅读全文
摘要:
记录一下,利用正则表达式判断字符串是否为数值(匹配是否为整数,浮点数或者科学计数法数值) 参考博客 #include <QString> #include <QDebug> #include <iostream> #include <QRegExp> static bool isNumeric(QS 阅读全文
摘要:
Stupid && 祖传Fortran代码救赎之路(编译Dll) gfortran编译动态库 在Windows平台下,Intel Fortran安装过于庞大且费事(现在集成到OneAPI上了,安装下需要60G),之前在VS2019上折腾了好久,最后Debug调试不显示过程变量,吐了。。。 后来决定直 阅读全文
摘要:
HydroD:辅助函数 在HydroD中,使用JS脚本可以快速进行模拟参数设置,但是经过尝试,HydroD中的JS脚本语言并不支持现在JavaScript中的一些语法。所以考虑采用Matlab字符串拼接能力,生成特定所需的JS脚本命令。 生成FrequencySet HydroD中具有生成均匀间隔F 阅读全文
摘要:
之前在折腾OpenFOAM的过程中的一点笔记,在这记录备份一下,比较杂乱 OpenFOAM学习笔记 0、ubuntu的有用命令 1、重启Ubuntu网卡命令 service network restart 2、Ubuntu安装中文汉化包 sudo apt install language-pack- 阅读全文
摘要:
高斯-勒朗德积分公式 高斯-勒朗德积分原理参考**《数值分析》第五版P188** **需求:**给定空间平面$S$四个点的坐标$Q_1(x,y,z),Q_2(x,y,z),Q_3(x,y,z),Q_4(x,y,z)$,已知函数$f(x,y,z)$,求利用数值方法求解积分:$\iint_Sf(x,y, 阅读全文
摘要:
Fortran学习笔记目录 书接上回:Fortran学习笔记:02 流控制语句 数组(Array) 定义数组 一维数组 program main implicit none integer :: i integer :: a(10) do i=1,10,1 a(i)=i*i; end do do i 阅读全文
摘要:
Fortran学习笔记目录 书接上回:Fortran学习笔记:01 基本格式与变量声明 流控制语句 IF语句 IF (逻辑表达式) THEN ... ELSE ... END IF SELECT-CASE语句 类似于C类语言中的switch-case语句 select case(变量) case(数 阅读全文
摘要:
上一节记录了线性方程组的静态迭代方法 本节主要介绍非静态迭代方法中的最速下降法与共轭梯度法。 非静态迭代法的基本原理 基于变分原理,考虑以下函数 \[ \begin{align} \Phi(\vec x)=\frac{1}{2}\vec{x}\cdot\boldsymbol A\vec{x}-\ve 阅读全文
摘要:
对于线性方程组的迭代求解方法可以分为两类,静态迭代方法与非静态迭代方法,两者区别在于,前者构造简单,迭代步长与方向恒定,但是收敛条件限制较大,收敛速度较慢。而非静态方法构造格式更复杂,收敛速度更快。本文主要记录静态迭代方法 静态迭代法 考虑以下线性方程组 \[ \boldsymbol Ax=\bol 阅读全文
摘要:
书接上回势流理论笔记:02 直接法与间接法 Hess-Smith方法 采用面向对象编程的思路,$Matlab$程序脚本,实现以下功能: 输入面元(四边形面元顶点坐标) 输出系数矩阵$[H][M]\(以及\)[V_x],[V_y]$ Hess-Smith积分方法思路 待积分的目标函数: \[ \beg 阅读全文
摘要:
书接上回 《势流理论笔记:01 势流理论基础》 直接法与间接法 ##直接法 顾名思义直接求解方程组。。。。 \[ \begin{equation} \begin{aligned} c(P)\cdot \phi(P)&=-\frac{1}{4\pi}\iint _{S}\left[\phi(Q)\fr 阅读全文
摘要:
前言: 势流理论复习笔记,没想到自己又重新学了一遍势流理论。。。 所以记个笔记 笔记内容基本摘抄自朱仁传老师的《船舶在波浪上的运动理论》,写得好哇!!! 基础理论 均匀、不可压缩理想流体的流场中,连续性方程与欧拉方程可以描述为: \[ \begin{align} \begin{cases} \nab 阅读全文
摘要:
Stokes五阶波 最近发现一个很有用的Stokes波计算Python库,raschii官方说明,可以计算任意阶数,不同水深下的Stokes波,简单做了下测试,测试结果与脚本如下 Python 脚本 import raschii import matplotlib.pyplot as plt imp 阅读全文
摘要:
Fortran学习笔记目录 01 基本格式与变量声明 格式 固定格式(Fixed Format):Fortran77 程序需要满足一种特定的格式要求,具体形式参考教材 自由格式(Free Format):Fortran90之后程序书写形式更为自由 数据类型 Fortran 95包含的数据类型 数据类 阅读全文
摘要:
Python:PNG图像生成MP4 需求 需要将多张*.PNG图像,生成mp4格式的视频文件。 实现 利用Python中image库生成*.gif格式图像,但是图片未经压缩,文件体量较大。 moviepy库将*.gif格式图像转换为*.mp4格式视频文件,文件可以压缩90%。 easygui库制作一 阅读全文
摘要:
PSO 最近需要用上一点最优化相关的理论,特地去查了些PSO算法相关资料,在此记录下学习笔记,附上程序代码。基础知识参考知乎大佬文章,写得很棒! 传送门 背景 起源:1995年,受到鸟群觅食行为的规律性启发,James Kennedy和Russell Eberhart建立了一个简化算法模型,经过多年 阅读全文
摘要:
Legendre多项式的概念以及正交特性在此不多作描述,可以参考数学物理方程相关教材,本文主要讨论在数值计算中对于Legendre多项式以及其导数的计算方法。 Legendre多项式的计算 递推公式 \[ \begin{align} (n+1)P_{n+1}(x)=(2n+1)x \cdot P_{ 阅读全文
摘要:
课程《C++语言程序设计进阶》清华大学 郑莉老师) 引入 考虑一个求绝对值函数myabs,对于int,double,float等数据类型需要重载多次,编写多个函数体。函数体逻辑代码完全一致,仅仅是数据类型不同。 在这种情况下,可以使用函数模板 #include <iostream> using na 阅读全文
摘要:
课程《C++语言程序设计进阶》清华大学 郑莉老师) 基本概念 多态性 具体的讲,在面向对象程序设计中,指同样的方法被不同对象执行时会有不同的执行效果。 多态的实现 绑定机制 绑定是将一个标识符名和一个存储地址联系在一起的过程 静态多态性:编译时的多态通过静态绑定实现,例如 函数的重载 绑定工作在编译 阅读全文
摘要:
课程《C++语言程序设计进阶》清华大学 郑莉老师) 基本概念 继承与派生的区别: **继承:**保持已有类的特性而构造新类的过程称为继承。 派生:在已有类的基础上新增自己的特性(函数方法、数据成员)而产生新类的过程称为派生 被继承的已有类称为基类,派生出的新类称为派生类,直接参与派生出某类的基类称为 阅读全文
摘要:
前言:因为某些原因,需要使用Fortran编写程序,记录下Fortran语法学习过程中的部分笔记。在此开坑记录,立下Flag,“希望年末能够更新完” Fortran 学习笔记 陈橙橙 第一版于2021.07.18 on Typora CodeBlocks + GNU Fortran编译器 参考教程: 阅读全文
摘要:
STAR-CCM+是西门子公司旗下产出的一款CFD软件,因其强大的多面体网格划分功能、简易的操作流程被广泛应用于工程计算以及科研工作中。 学习资源 个人在使用STAR-CCM+过程中,主要参考资料来源于以下四条途径 1、STAR-CCM+软件用户手册(包括:软件自带的帮助文档(英文),另外还有中文翻 阅读全文