<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[rain_ton的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/rain_ton</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; rain_ton]]></copyright><item><title><![CDATA[间断有限元法求解重新初始化方程的详细推导]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/151156686</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/151156686</guid><author>rain_ton</author><pubDate>Wed, 03 Sep 2025 20:34:25 +0800</pubDate><description><![CDATA[本文详细推导了采用间断有限元法（DG）求解重新初始化方程的数值格式。首先给出正则化处理后的非线性方程形式，然后通过分部积分推导弱形式，分别处理对流项（采用Lax-Friedrichs数值通量）和扩散项（采用对称内惩罚数值通量）。在空间离散方面，选择间断多项式空间进行基函数展开，最终得到半离散系统矩阵方程。文末给出了伪代码实现框架，包括法向量计算、非线性残差构造和牛顿迭代求解过程。]]></description><category></category></item><item><title><![CDATA[UCNS3D 手动安装详细教程]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/151025669</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/151025669</guid><author>rain_ton</author><pubDate>Sat, 30 Aug 2025 20:35:07 +0800</pubDate><description><![CDATA[本教程详细介绍了UCNS3D CFD求解器的手动安装流程。支持Linux、MacOS和Windows(WSL2)系统，需4GB以上内存和多核处理器。安装步骤包括：1)安装gfortran、MPI和BLAS等依赖；2)配置METIS库；3)设置环境变量；4)选择适合的Makefile模板；5)执行编译生成可执行文件。教程提供了GNU和Intel编译器的配置示例，包含常见问题解决方法，如MPI库缺失、BLAS链接错误等。最后建议创建启动脚本方便运行，并推荐使用优化编译选项提升性能。安装完成后可通过测试用例验证，]]></description><category></category></item><item><title><![CDATA[入射激波初始设置]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/149140342</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/149140342</guid><author>rain_ton</author><pubDate>Sat, 05 Jul 2025 19:09:04 +0800</pubDate><description><![CDATA[本文详细介绍了在一维柱对称坐标系中设置入射激波（柱面激波）初始条件的步骤。首先给定激波马赫数和未扰动区域参数，利用Rankine-Hugoniot关系计算激波后状态（密度、压强、速度）。然后设置初始流场，区分激波前后区域，并考虑柱对称流的特殊边界条件。文中还提供了网格设计建议、数值格式选择、边界条件处理等注意事项，最后给出了验证方法和伪代码实现。该过程适用于实验室参考系下激波向对称中心传播的情况，需特别注意中心轴处的对称边界条件和激波附近的网格加密处理。]]></description><category></category></item><item><title><![CDATA[简单模型间断有限元详解，以对流方程为例]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/148357147</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/148357147</guid><author>rain_ton</author><pubDate>Sun, 01 Jun 2025 00:11:58 +0800</pubDate><description><![CDATA[本文推导了一维线性对流方程的间断有限元（DG）离散化过程。核心步骤包括：1）将计算域划分为不连续的单元；2）在每个单元内定义独立的多项式空间；3）通过分部积分引入数值通量处理单元间的信息传递，重点采用迎风通量；4）建立单元弱形式并离散为局部矩阵方程。DG方法通过数值通量而非强制连续性实现单元耦合，保留了局部守恒性，适用于对流主导问题。推导过程展示了如何组装质量矩阵、刚度矩阵和通量矩阵，为后续时间离散提供空间离散基础。]]></description><category></category></item><item><title><![CDATA[hdu 3068（manacher模板）]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/70171620</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/70171620</guid><author>rain_ton</author><pubDate>Fri, 14 Apr 2017 13:58:02 +0800</pubDate><description><![CDATA[https://vjudge.net/problem/19933/origin中文题意，裸的manacher模板上代码#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<algorithm>
using namespace std;
const int maxn=110010;
char Mp]]></description><category></category></item><item><title><![CDATA[hdu1874(dijkstra解法优先队列优化)]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/70171101</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/70171101</guid><author>rain_ton</author><pubDate>Fri, 14 Apr 2017 12:49:05 +0800</pubDate><description><![CDATA[https://vjudge.net/problem/17632/origin上代码#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<functional>
#include<queue>
using namespace std;
const int maxn=1e3+5;
const]]></description><category></category></item><item><title><![CDATA[hdu 1874(floyd解法)]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/70160626</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/70160626</guid><author>rain_ton</author><pubDate>Thu, 13 Apr 2017 18:10:59 +0800</pubDate><description><![CDATA[https://vjudge.net/problem/17632/origin 
floyd 
解法#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
#include<algorithm>
using namespace std;
int N,M;
const int maxn=1e3+5;
const in]]></description><category></category></item><item><title><![CDATA[hdu1584]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/69817602</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/69817602</guid><author>rain_ton</author><pubDate>Sun, 09 Apr 2017 15:20:53 +0800</pubDate><description><![CDATA[https://vjudge.net/problem/30554/origin 
中文题意，不解释#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
int a[11],vis[11],ans;
void dfs(int time,int sum){
    if(sum>ans)return;]]></description><category></category></item><item><title><![CDATA[poj2488]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/69817578</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/69817578</guid><author>rain_ton</author><pubDate>Sun, 09 Apr 2017 15:17:31 +0800</pubDate><description><![CDATA[https://vjudge.net/problem/15199/origin 
超经典深搜题，需要注意的是搜索的顺序 
上代码：#include<iostream>
#include<cstdio>
#include<cstring>
#include<string>
int n1,n2;
int vis[30][30],flag,num,xx[30],yy[30];
int dir[8][2]=]]></description><category></category></item><item><title><![CDATA[hdu—1098]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/68488931</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/68488931</guid><author>rain_ton</author><pubDate>Thu, 30 Mar 2017 16:02:20 +0800</pubDate><description><![CDATA[https://vjudge.net/problem/26763/origin 
这道题目很有意思，需要用到数学归纳法的思想。 
1、首先我们假设当x=1时，f(x)可以被65整除，即（18+k*a）%65==0； 
2、由数学归纳法的思想我们假设当x=x0时f(x)可以被65整除，即（5*x0^13+13*x0^5+k*a*x0）%65==0；那么当x=x0+1时，我们观察这个式子5*（x0+1）]]></description><category></category></item><item><title><![CDATA[hdu1070]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/68488533</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/68488533</guid><author>rain_ton</author><pubDate>Thu, 30 Mar 2017 15:37:48 +0800</pubDate><description><![CDATA[https://vjudge.net/problem/19393/origin 
题意就是要求输出花钱最少的，如果价格相同，就输出容量最大的， 
这里要注意的是，花的钱要按每天的算，而且超过5天就不能算了。#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
str]]></description><category></category></item><item><title><![CDATA[hdu 1061（快速幂取模）]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/68488415</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/68488415</guid><author>rain_ton</author><pubDate>Thu, 30 Mar 2017 15:30:31 +0800</pubDate><description><![CDATA[https://vjudge.net/problem/15708/origin 
题意就是输出所得数字的个位数，也就是对10取模，快速幂的模板题#include<iostream>
#include<cstdio>
using namespace std;
typedef long long ll;
ll fast_pow(ll x,ll y,int m){
    if(y==0)return 1]]></description><category></category></item><item><title><![CDATA[水题  hdu1048（凯撒密码）]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/68488305</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/68488305</guid><author>rain_ton</author><pubDate>Thu, 30 Mar 2017 15:23:41 +0800</pubDate><description><![CDATA[https://vjudge.net/problem/19337/origin 
水题，不过我们可以在这里总结一下凯撒密码的移位公式（原谅我的胡编乱造（@~@）） 
s=（s-‘A’+26+x）%26+’A’,这里以大写字母为例，其中s是所需要变换的字符，x是移动的位数。#include<cstdio>
#include<cstring>
#include<ctype.h>
const int N=]]></description><category></category></item><item><title><![CDATA[文章标题]]></title><link>https://blog.youkuaiyun.com/rain_ton/article/details/67640206</link><guid>https://blog.youkuaiyun.com/rain_ton/article/details/67640206</guid><author>rain_ton</author><pubDate>Tue, 28 Mar 2017 18:34:16 +0800</pubDate><description><![CDATA[https://vjudge.net/problem/15516/origin 
题目大意很好理解，但如果按照直接模拟的方法来做的话会超内存，可以观察这个式子f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7，我们由同余定理可以知道f（n-1）与f（n-2）都只能取0，1，2，3，4，5，6这七个数中的其中一个，所以由乘法原理可以知道f(n)总共的种类不超过7*7=]]></description><category></category></item></channel></rss>