<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Phase Field on A Moment's Rest</title><link>https://a-moment096.github.io/zh/categories/phase-field/</link><description>Recent content in Phase Field on A Moment's Rest</description><generator>Hugo -- gohugo.io</generator><language>zh</language><atom:link href="https://a-moment096.github.io/zh/categories/phase-field/index.xml" rel="self" type="application/rss+xml"/><item><title>相场模拟，但是用很多语言 IV</title><link>https://a-moment096.github.io/zh/posts/pf_note/impl_spinodal/impl_spinodal_4/</link><pubDate>Mon, 22 Jun 2026 00:00:00 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_note/impl_spinodal/impl_spinodal_4/</guid><description>&lt;img src="https://a-moment096.github.io/images/Alice-2.png" alt="Featured image of post 相场模拟，但是用很多语言 IV" /&gt;&lt;p&gt;&lt;em&gt;谈到编程，稍早一些的时候大家几乎都会提到 C 语言。本期我们就来试试之前番外中使用过的 C 语言吧！用它来跑调幅分解看看~&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;为保持系列的统一，头图我们依旧选择了上期出现的，由 &lt;a class="link" href="https://x.com/Neve_AI" target="_blank" rel="noopener"
 &gt;Neve_AI&lt;/a&gt; 绘制的 AI 爱丽丝。选曲则是最近（……）&lt;a class="link" href="https://space.bilibili.com/400813602/" target="_blank" rel="noopener"
 &gt;Ayase&lt;/a&gt; 上传到 B 站的 &lt;a class="link" href="https://www.bilibili.com/list/ml1197098078" target="_blank" rel="noopener"
 &gt;シネマ(CINEMA)&lt;/a&gt;，由初音未来献唱。很有 Ayase 味道的一首歌，也算是一代神曲了，希望您能喜欢~&lt;/em&gt;&lt;/p&gt;</description></item><item><title>相场模拟，但是用很多语言——番外</title><link>https://a-moment096.github.io/zh/posts/pf_note/impl_spinodal/impl_spinodal_fourier/</link><pubDate>Sat, 30 May 2026 00:00:00 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_note/impl_spinodal/impl_spinodal_fourier/</guid><description>&lt;img src="https://a-moment096.github.io/images/Alice-2.png" alt="Featured image of post 相场模拟，但是用很多语言——番外" /&gt;&lt;p&gt;&lt;em&gt;前几篇博文中，我们都使用了有限差分法来离散网格并计算 Cahn-Hilliard 方程的结果。这样的写法确实简单有效，但是问题是就没有别的更好的方法了吗？有的，兄弟！有的！那就是今天要向各位介绍的 &lt;strong&gt;傅里叶谱法&lt;/strong&gt;。在这个方法下，我们不需要再可怜兮兮地做网格差分了，而是从另一个神秘空间：&lt;strong&gt;谱空间&lt;/strong&gt; 去求解。本篇就以番外的形式，聊聊这个神奇的方法，关于它的数学原理，使用事项，以及实现时需要注意的若干细节。&lt;/em&gt;&lt;/p&gt;</description></item><item><title>相场模拟，但是用很多语言 III</title><link>https://a-moment096.github.io/zh/posts/pf_note/impl_spinodal/impl_spinodal_3/</link><pubDate>Fri, 10 Apr 2026 00:00:00 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_note/impl_spinodal/impl_spinodal_3/</guid><description>&lt;img src="https://a-moment096.github.io/images/Alice-2.png" alt="Featured image of post 相场模拟，但是用很多语言 III" /&gt;&lt;p&gt;&lt;em&gt;我们已经用了 C++ 和 Python 来进行相场模拟，除了这种典型的“后端”语言之外，前端能不能跑相场模拟呢？答案是肯定的！我们这次就试试 鼎鼎大名的 JavaScript 和 TypeScript 吧~&lt;/em&gt;&lt;/p&gt;</description></item><item><title>相场模拟，但是用很多语言 II</title><link>https://a-moment096.github.io/zh/posts/pf_note/impl_spinodal/impl_spinodal_2/</link><pubDate>Wed, 01 Apr 2026 00:00:00 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_note/impl_spinodal/impl_spinodal_2/</guid><description>&lt;img src="https://a-moment096.github.io/images/Alice-2.png" alt="Featured image of post 相场模拟，但是用很多语言 II" /&gt;&lt;p&gt;&lt;em&gt;上一节我们尝试了使用 C++ 来跑相场模拟。除了 C++ 之外，科学计算的另一大热门则是 Python 这门非常火爆的语言。Python 能带给这个模拟什么有趣的特点呢？它的实现可以怎么做呢？一起来看看吧~&lt;/em&gt;&lt;/p&gt;</description></item><item><title>相场模拟，但是用很多语言 I</title><link>https://a-moment096.github.io/zh/posts/pf_note/impl_spinodal/impl_spinodal_1/</link><pubDate>Tue, 24 Mar 2026 00:00:00 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_note/impl_spinodal/impl_spinodal_1/</guid><description>&lt;img src="https://a-moment096.github.io/images/Alice-2.png" alt="Featured image of post 相场模拟，但是用很多语言 I" /&gt;&lt;p&gt;&lt;em&gt;目前做相场的大家似乎都在用 C++ 或者 Python 来跑相场，可是明明程序语言这么多……对吧？Why not？本系列就来整个小活儿，用各种各样的语言来实现某个相场模拟~ 不过千里之行始于足下，我们就从最常用的 C++ 开始吧！~&lt;/em&gt;&lt;/p&gt;</description></item><item><title>文献阅读 - Wang-Jin-Khachaturyan2002</title><link>https://a-moment096.github.io/zh/posts/pf_papers/wang-jin-khachaturyan2002/</link><pubDate>Sat, 15 Nov 2025 23:25:19 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_papers/wang-jin-khachaturyan2002/</guid><description>&lt;img src="https://a-moment096.github.io/images/Nev_Alice-2.jpg" alt="Featured image of post 文献阅读 - Wang-Jin-Khachaturyan2002" /&gt;&lt;p&gt;&lt;em&gt;这篇文章算是他们三个人的工作的总结，发在了 J. Appl. Phys. 上，我其实很早就看过这篇，但是当时看得匆忙，一知半解，这次仔细看看&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;图图还是 &lt;a class="link" href="https://x.com/Neve_AI" target="_blank" rel="noopener"
 &gt;&lt;strong&gt;Neve_AI&lt;/strong&gt;&lt;/a&gt; 绘制的 AI 图来的，歪头银发小妹妹真的好可爱呀~~&lt;/em&gt;&lt;/p&gt;</description></item><item><title>文献阅读 - Jin-Wang-Khachaturyan2001</title><link>https://a-moment096.github.io/zh/posts/pf_papers/jin-wang-khachaturyan2001/</link><pubDate>Thu, 23 Oct 2025 23:25:19 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_papers/jin-wang-khachaturyan2001/</guid><description>&lt;img src="https://a-moment096.github.io/images/Nev_Alice.jpg" alt="Featured image of post 文献阅读 - Jin-Wang-Khachaturyan2001" /&gt;&lt;p&gt;&lt;em&gt;Jin，Wang 和 Khachaturyan 等人在 01 年的时候于 Appl. Phys. Lett. 发表了这篇文章（快报），应该是自此开创了相场的微弹性力学理论。今天就读读它，（尝试）以此为起点学习这个理论吧。&lt;/em&gt;&lt;/p&gt;</description></item><item><title>文献阅读 - Nestler1999</title><link>https://a-moment096.github.io/zh/posts/pf_papers/nestler1999/</link><pubDate>Wed, 22 Oct 2025 18:25:19 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_papers/nestler1999/</guid><description>&lt;img src="https://a-moment096.github.io/images/Nev_Alice.jpg" alt="Featured image of post 文献阅读 - Nestler1999" /&gt;&lt;p&gt;&lt;em&gt;Nestler 在他 1999 年的这篇文章里进一步介绍了他在之前的文献里的模型情况，后面大家用的比较多的结果应该是界面能的部分，这里读（翻译）一下这篇文章，做个笔记。&lt;/em&gt;&lt;/p&gt;</description></item><item><title>多相场模型与巨势方程</title><link>https://a-moment096.github.io/zh/posts/pf_note/mpf_gp/</link><pubDate>Sun, 05 Jan 2025 00:00:00 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_note/mpf_gp/</guid><description>&lt;img src="https://a-moment096.github.io/images/ShoujouRei_MikitoP.png" alt="Featured image of post 多相场模型与巨势方程" /&gt;&lt;p&gt;&lt;em&gt;记录一下目前使用到的两个相场模型，包括它们的推导，假设和缺陷&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;头图出自 &lt;a class="link" href="https://twitter.com/katorei_" target="_blank" rel="noopener"
 &gt;かとうれい&lt;/a&gt; 太太，为 &lt;a class="link" href="https://space.bilibili.com/108833238" target="_blank" rel="noopener"
 &gt;みきとP&lt;/a&gt; 所作的 &lt;a class="link" href="https://www.bilibili.com/list/ml1197098078?spm_id_from=333.1007.0.0&amp;amp;oid=27304533&amp;amp;bvid=BV1Rs411N7Aq" target="_blank" rel="noopener"
 &gt;少女レイ&lt;/a&gt; 的曲绘&lt;/em&gt;&lt;/p&gt;

&lt;link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/aplayer/dist/APlayer.min.css"&gt;
&lt;style type="text/css"&gt;
[data-scheme="dark"] .aplayer {
 background: var(--card-background);
 border: 1px solid var(--card-separator-color);
}

[data-scheme="dark"] .aplayer.aplayer-withlist .aplayer-info {
 border-bottom-color: var(--card-separator-color);
}

[data-scheme="dark"] .aplayer.aplayer-fixed .aplayer-list {
 border-color: var(--card-separator-color);
}

[data-scheme="dark"] .aplayer .aplayer-body {
 background-color: var(--card-background);
}

[data-scheme="dark"] .aplayer .aplayer-info {
 border-top-color: var(--card-background);
}

[data-scheme="dark"] .aplayer .aplayer-info .aplayer-music .aplayer-title {
 color: var(--card-text-color-main);
}

[data-scheme="dark"] .aplayer .aplayer-info .aplayer-music .aplayer-author {
 color: var(--card-text-color-secondary);
}

[data-scheme="dark"] .aplayer .aplayer-info .aplayer-controller .aplayer-time {
 color: var(--card-text-color-tertiary);
}

[data-scheme="dark"] .aplayer .aplayer-info .aplayer-controller .aplayer-time .aplayer-icon path {
 fill: var(--card-text-color-tertiary);
}

[data-scheme="dark"] .aplayer .aplayer-list {
 background-color: var(--card-background);
}

[data-scheme="dark"] .aplayer .aplayer-list::-webkit-scrollbar-thumb {
 background-color: var(--card-separator-color);
}

[data-scheme="dark"] .aplayer .aplayer-list::-webkit-scrollbar-thumb:hover {
 background-color: var(--accent-color);
}

[data-scheme="dark"] .aplayer .aplayer-list li {
 color: var(--card-text-color-main);
 border-top-color: var(--card-separator-color);
}

[data-scheme="dark"] .aplayer .aplayer-list li:hover {
 background: var(--card-background-selected);
}

[data-scheme="dark"] .aplayer .aplayer-list li.aplayer-list-light {
 background: var(--card-background-selected);
}

[data-scheme="dark"] .aplayer .aplayer-list li .aplayer-list-index {
 color: var(--card-text-color-secondary);
}

[data-scheme="dark"] .aplayer .aplayer-list li .aplayer-list-author {
 color: var(--card-text-color-secondary);
}

[data-scheme="dark"] .aplayer .aplayer-lrc {
 text-shadow: -1px -1px 0 var(--body-background);
}

[data-scheme="dark"] .aplayer .aplayer-lrc:before {
 background: linear-gradient(to bottom, var(--card-background) 0%, rgba(0,0,0,0) 100%);
}

[data-scheme="dark"] .aplayer .aplayer-lrc:after {
 background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, var(--card-background) 100%);
}

[data-scheme="dark"] .aplayer .aplayer-lrc p {
 color: var(--card-text-color-main);
}

[data-scheme="dark"] .aplayer .aplayer-miniswitcher {
 background: var(--card-background-selected);
}

[data-scheme="dark"] .aplayer .aplayer-miniswitcher .aplayer-icon path {
 fill: var(--card-text-color-tertiary);
}

 
[data-scheme="light"] .aplayer {
 background: var(--card-background);
 border: 1px solid var(--card-separator-color);
}

[data-scheme="light"] .aplayer .aplayer-info .aplayer-music .aplayer-title {
 color: var(--card-text-color-main);
}

[data-scheme="light"] .aplayer .aplayer-info .aplayer-music .aplayer-author {
 color: var(--card-text-color-secondary);
}

[data-scheme="light"] .aplayer .aplayer-list li:hover {
 background: var(--card-background-selected);
}
&lt;/style&gt;
&lt;script src="https://cdn.jsdelivr.net/npm/aplayer/dist/APlayer.min.js"&gt;&lt;/script&gt;


&lt;script src="https://a-moment096.github.io/js/Meting.min.js"&gt;&lt;/script&gt;&lt;meting-js auto="https://music.163.com/#/song?id=1334077117" theme="#2980b9" loop="none"&gt;&lt;/meting-js&gt;
&lt;h2 id="简介"&gt;简介
&lt;/h2&gt;&lt;p&gt;目前在做的不连续析出的模拟，里面用到了这两个演化方程。之前一直没有仔细思考过这两个演化方程到底是什么来头，为什么这个体系适合使用这两个方程，导致现在想大概修改一下它们也无从下手。这里就作为笔记记录下这两个方程的推导方法，优缺点，以及我个人的一些看法吧。&lt;/p&gt;</description></item><item><title>Phase Field: 相场模拟学习笔记 V</title><link>https://a-moment096.github.io/zh/posts/pf_tutorial/pf_tutorial_5/</link><pubDate>Wed, 25 Dec 2024 00:00:00 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_tutorial/pf_tutorial_5/</guid><description>&lt;img src="https://a-moment096.github.io/images/Skadi.png" alt="Featured image of post Phase Field: 相场模拟学习笔记 V" /&gt;&lt;p&gt;&lt;em&gt;其实这节就是换成 Allen-Cahn 方程，然后多个变量而已，主要是俺不想实现 Voronoi 结构（逃&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="简介"&gt;简介
&lt;/h2&gt;&lt;p&gt;上一部分我们以调幅分解为基础讨论了浓度场在 Cahn-Hilliard 方程下的演化过程。对相场方法而言，另一个无法绕开的演化方程则是针对非保守场变量的 Allen-Cahn 方程。这一部分我们将对晶粒长大过程进行分析，了解 Allen-Cahn 方程并使用它进行晶粒长大过程的模拟。&lt;/p&gt;</description></item><item><title>Phase Field: 相场模拟学习笔记 IV</title><link>https://a-moment096.github.io/zh/posts/pf_tutorial/pf_tutorial_4/</link><pubDate>Tue, 24 Dec 2024 00:00:00 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_tutorial/pf_tutorial_4/</guid><description>&lt;img src="https://a-moment096.github.io/images/Skadi.png" alt="Featured image of post Phase Field: 相场模拟学习笔记 IV" /&gt;&lt;p&gt;&lt;em&gt;终于，真的要做相场模拟了。先从最软的柿子，调幅分解开始吧&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="简介"&gt;简介
&lt;/h2&gt;&lt;p&gt;所以，经过前面三个部分的学习，利用 C++ 进行相场模拟的所有前置几乎全部获得了：公式推导，编程基础，基础算法等，几乎全都拿到手了。这部分开始，我们就正式开始用 C++ 实现相场模拟。我们先从一个很经典且简单的例子开始：A-B 合金的调幅分解。&lt;/p&gt;</description></item><item><title>Phase Field: 相场模拟学习笔记 III</title><link>https://a-moment096.github.io/zh/posts/pf_tutorial/pf_tutorial_3/</link><pubDate>Mon, 23 Dec 2024 00:00:00 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_tutorial/pf_tutorial_3/</guid><description>&lt;img src="https://a-moment096.github.io/images/Skadi.png" alt="Featured image of post Phase Field: 相场模拟学习笔记 III" /&gt;&lt;p&gt;&lt;em&gt;接上一节内容，这节会简单介绍 C++ 的一些语法知识，然后用 C++ 实现一维传热方程的模拟。&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="c一门高效的适宜科学计算的程序语言"&gt;C++：一门高效的，适宜科学计算的程序语言
&lt;/h2&gt;&lt;p&gt;C++ 是一门经典的编程语言，于 1979 年由 Bjarne Stroustrup 设计，最初目的是为了成为更好的 C 语言，而后随着自身发展，成为了一门和 C 语言有许多相似之处，而又截然不同的一门语言。C++ 支持多种编程范式，包括但不限于面向过程，面向对象，函数式，模板元编程等等。其丰富的生态，高效的算法库以及&lt;em&gt;零成本抽象&lt;/em&gt;的理念让 C++ 极为适合进行各类科学运算。此外，C++ 的语法较为亲民，其多种编程范式也便于不同背景的开发者上手，故我们在这里引入 C++ 作为后续计算使用的程序语言。&lt;/p&gt;</description></item><item><title>Phase Field: 相场模拟学习笔记 II</title><link>https://a-moment096.github.io/zh/posts/pf_tutorial/pf_tutorial_2/</link><pubDate>Fri, 22 Nov 2024 00:00:00 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_tutorial/pf_tutorial_2/</guid><description>&lt;img src="https://a-moment096.github.io/images/Skadi.png" alt="Featured image of post Phase Field: 相场模拟学习笔记 II" /&gt;&lt;p&gt;&lt;em&gt;接上一节内容，这节会简单介绍 Python 的一些语法知识，以及尝试使用 Python 实现上节所列出来的部分算法。&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="python-初探索"&gt;Python 初探索
&lt;/h2&gt;&lt;h3 id="简介"&gt;简介
&lt;/h3&gt;&lt;p&gt;Python 是一种蟒蛇，而在编程语境下，Python 则是一门十分受欢迎的编程语言。Python 具有语法友好（接近英语），功能强大（感谢开源与社区），社区活跃等优秀的特点，让 Python 成为入门编程的一个好选择。&lt;/p&gt;</description></item><item><title>Phase Field: 相场模拟学习笔记 I</title><link>https://a-moment096.github.io/zh/posts/pf_tutorial/pf_tutorial_1/</link><pubDate>Fri, 01 Nov 2024 00:00:00 +0800</pubDate><guid>https://a-moment096.github.io/zh/posts/pf_tutorial/pf_tutorial_1/</guid><description>&lt;img src="https://a-moment096.github.io/images/Skadi.png" alt="Featured image of post Phase Field: 相场模拟学习笔记 I" /&gt;&lt;p&gt;&lt;em&gt;这学期开了相场模拟培训，故尝试将相场培训笔记性质的内容记录下来，期望观感应该是目录式的笔记，外带可有可无的说明文字。那么就开始吧&lt;/em&gt;&lt;/p&gt;
&lt;h2 id="phase-field-method-是什么"&gt;Phase Field Method 是什么？
&lt;/h2&gt;&lt;p&gt;Phase Field Method，直译为相场法，是一种材料模拟方法，其通过宽界面（平滑界面）的特点，克服了另一个模拟方法：Stefan 法的窄界面无法计算的缺点，实现了对材料中的相的演化的模拟。&lt;/p&gt;</description></item></channel></rss>