<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Junyi&#39;s site</title>
    <link>https://blog.jyxu.site/</link>
    <description>Recent content on Junyi&#39;s site</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Sun, 12 Nov 2023 23:15:35 +0800</lastBuildDate>
    <atom:link href="https://blog.jyxu.site/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>用 Julia 画 koch snowflake</title>
      <link>https://blog.jyxu.site/posts/julia_koch_snowflake/</link>
      <pubDate>Sun, 12 Nov 2023 23:15:35 +0800</pubDate>
      <guid>https://blog.jyxu.site/posts/julia_koch_snowflake/</guid>
      <description>&lt;p&gt;仿照 &lt;a href=&#34;https://matplotlib.org/stable/gallery/lines_bars_and_markers/fill.html#sphx-glr-gallery-lines-bars-and-markers-fill-py&#34;&gt;matplotlib 文档&lt;/a&gt;&#xA;画了 &lt;a href=&#34;https://en.wikipedia.org/wiki/Koch_snowflake&#34;&gt;Koch snowflake&lt;/a&gt;：&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-julia&#34; data-lang=&#34;julia&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;using&lt;/span&gt; PyCall&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;@pyimport&lt;/span&gt; matplotlib&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;pyplot as plt&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&amp;#34;&amp;#34;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&#x9;[x2, x3, x1] - [x1, x2, x3]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&amp;#34;&amp;#34;&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;function&lt;/span&gt; diff1(x&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;Vector&lt;/span&gt;)&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;Vector&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;y &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; similar(x)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&lt;span style=&#34;color:#66d9ef&#34;&gt;for&lt;/span&gt; i &lt;span style=&#34;color:#66d9ef&#34;&gt;in&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;length(x)&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&#x9;y[i] &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; x[i&lt;span style=&#34;color:#f92672&#34;&gt;+&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;] &lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt; x[i]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&lt;span style=&#34;color:#66d9ef&#34;&gt;end&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;y[&lt;span style=&#34;color:#66d9ef&#34;&gt;end&lt;/span&gt;] &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; x[&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;]&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;x[&lt;span style=&#34;color:#66d9ef&#34;&gt;end&lt;/span&gt;]&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&lt;span style=&#34;color:#66d9ef&#34;&gt;return&lt;/span&gt; y&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;end&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;function&lt;/span&gt; koch_snowflake_complex(order&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;Int&lt;/span&gt;)&lt;span style=&#34;color:#f92672&#34;&gt;::&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;Vector&lt;/span&gt;{&lt;span style=&#34;color:#66d9ef&#34;&gt;ComplexF64&lt;/span&gt;}&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&lt;span style=&#34;color:#66d9ef&#34;&gt;if&lt;/span&gt; order &lt;span style=&#34;color:#f92672&#34;&gt;==&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&#x9;pos &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;@.&lt;/span&gt; &lt;span style=&#34;color:#ae81ff&#34;&gt;10&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;/&lt;/span&gt;sqrt(&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;) &lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt; exp(deg2rad([&lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;120&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;240&lt;/span&gt;]&lt;span style=&#34;color:#f92672&#34;&gt;+&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;90&lt;/span&gt;)&lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt;im)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&lt;span style=&#34;color:#66d9ef&#34;&gt;else&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&#x9;p &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; koch_snowflake_complex(order&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&#x9;dp &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; diff1(p)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&#x9;ZR &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; ℯ&lt;span style=&#34;color:#f92672&#34;&gt;^&lt;/span&gt;(&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;(π&lt;span style=&#34;color:#f92672&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;6&lt;/span&gt;)im) &lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt; sqrt(&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;)&lt;span style=&#34;color:#f92672&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&#x9;pos&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;similar(p, length(p)&lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;4&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&#x9;pos[&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;4&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;end&lt;/span&gt;] &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; p&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&#x9;pos[&lt;span style=&#34;color:#ae81ff&#34;&gt;2&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;4&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;end&lt;/span&gt;] &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;@.&lt;/span&gt; p &lt;span style=&#34;color:#f92672&#34;&gt;+&lt;/span&gt; dp&lt;span style=&#34;color:#f92672&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&#x9;pos[&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;4&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;end&lt;/span&gt;] &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;@.&lt;/span&gt; p &lt;span style=&#34;color:#f92672&#34;&gt;+&lt;/span&gt; dp &lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt; ZR&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&#x9;pos[&lt;span style=&#34;color:#ae81ff&#34;&gt;4&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;4&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;:&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;end&lt;/span&gt;] &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;@.&lt;/span&gt; p &lt;span style=&#34;color:#f92672&#34;&gt;+&lt;/span&gt; dp&lt;span style=&#34;color:#f92672&#34;&gt;/&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;2&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&lt;span style=&#34;color:#66d9ef&#34;&gt;end&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&lt;span style=&#34;color:#66d9ef&#34;&gt;return&lt;/span&gt; pos&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;end&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;function&lt;/span&gt; main()&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;pos&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;koch_snowflake_complex(&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;x &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; real&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;(pos)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;y &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; imag&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;(pos)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;fig, (ax1, ax2, ax3) &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; plt&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;subplots(&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;, figsize&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;(&lt;span style=&#34;color:#ae81ff&#34;&gt;9&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;),&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;subplot_kw&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;Dict&lt;/span&gt;(&lt;span style=&#34;color:#e6db74&#34;&gt;:aspect&lt;/span&gt;&lt;span style=&#34;color:#f92672&#34;&gt;=&amp;gt;&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;equal&amp;#34;&lt;/span&gt;))&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;ax1&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;fill(x, y)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;ax2&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;fill(x, y, facecolor&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;lightsalmon&amp;#34;&lt;/span&gt;, edgecolor&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;orangered&amp;#34;&lt;/span&gt;, linewidth&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;ax3&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;fill(x, y, facecolor&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;none&amp;#34;&lt;/span&gt;, edgecolor&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;purple&amp;#34;&lt;/span&gt;, linewidth&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;3&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;plt&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;savefig(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;$&lt;/span&gt;(bytes2hex(rand(&lt;span style=&#34;color:#66d9ef&#34;&gt;UInt8&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;4&lt;/span&gt;)))&lt;span style=&#34;color:#e6db74&#34;&gt;.png&amp;#34;&lt;/span&gt;, bbox_inches&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;tight&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#x9;plt&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;show()&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;end&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;main()&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src=&#34;https://blog.jyxu.site/images/koch_snowflake.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Proof of Matrix Trace Logarithmic Equation -- A Famous Equation in Group Theory</title>
      <link>https://blog.jyxu.site/posts/proof_of_matrix_trace_logarithmic_equation/</link>
      <pubDate>Mon, 16 Oct 2023 11:23:02 +0800</pubDate>
      <guid>https://blog.jyxu.site/posts/proof_of_matrix_trace_logarithmic_equation/</guid>
      <description>&lt;p&gt;&lt;strong&gt;定理：&lt;/strong&gt; 对于可逆矩阵 $M$，有：&#xA;$$&#xA;\operatorname{}&#xA;\operatorname{Tr}(\ln M) = \ln |M|.&#xA;$$&#xA;也就是，对于可逆矩阵 $M$ 来说, $M$ 行列式的对数，等于 $M$ 对数的迹。&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;证明：&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;首先，任意可逆矩阵 $M$ 可以相似对角化（为简单起见，我们先考虑可对角化的情况）：&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;$$&#xA;M = V\Lambda V^{-1}&#xA;$$&lt;/p&gt;&#xA;&lt;p&gt;其中 $\Lambda$ 是对角矩阵，其对角元素为 $M$ 的特征值 $\lambda_1, \lambda_2, &amp;hellip;, \lambda_n$&lt;/p&gt;&#xA;&lt;ol start=&#34;2&#34;&gt;&#xA;&lt;li&gt;利用[[矩阵对数的性质]]：&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;$$&#xA;\ln M = \ln(V\Lambda V^{-1}) = V\ln(\Lambda)V^{-1}&#xA;$$&lt;/p&gt;&#xA;&lt;ol start=&#34;3&#34;&gt;&#xA;&lt;li&gt;对角矩阵 $\Lambda$ 的对数是一个新的对角矩阵，其对角元素是原对角元素的对数：&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;span&gt;&#xA;$$\ln(\Lambda) = \begin{pmatrix} &#xA;\ln(\lambda_1) &amp;amp; 0 &amp;amp; \cdots &amp;amp; 0 \\&#xA;0 &amp;amp; \ln(\lambda_2) &amp;amp; \cdots &amp;amp; 0 \\&#xA;\vdots &amp;amp; \vdots &amp;amp; \ddots &amp;amp; \vdots \\&#xA;0 &amp;amp; 0 &amp;amp; \cdots &amp;amp; \ln(\lambda_n)&#xA;\end{pmatrix}$$&#xA;&lt;/span&gt;&#xA;&#xA;&lt;ol start=&#34;4&#34;&gt;&#xA;&lt;li&gt;利用[[迹的循环性质]]：&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;$$&#xA;\operatorname{Tr}(\ln M) = \operatorname{Tr}(V\ln(\Lambda)V^{-1}) = \operatorname{Tr}(\ln(\Lambda))&#xA;$$&lt;/p&gt;</description>
    </item>
    <item>
      <title>Neural network regularization</title>
      <link>https://blog.jyxu.site/posts/neural-network-regularization/</link>
      <pubDate>Sat, 14 Oct 2023 11:23:02 +0800</pubDate>
      <guid>https://blog.jyxu.site/posts/neural-network-regularization/</guid>
      <description>&lt;h3 id=&#34;core-techniques&#34;&gt;Core Techniques&lt;/h3&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;L1/L2 Regularization&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-python&#34; data-lang=&#34;python&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Loss &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; Original_Loss &lt;span style=&#34;color:#f92672&#34;&gt;+&lt;/span&gt; λ &lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt; Regularization_term&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;L1&lt;/strong&gt;: Sum of absolute weights&#xA;$$ L1 = \lambda \sum_{i} |w_i| $$&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;L2&lt;/strong&gt;: Sum of squared weights&#xA;$$ L2 = \lambda \sum_{i} w_i^2 $$&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Dropout&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Randomly &amp;ldquo;turns off&amp;rdquo; neurons during training&lt;/li&gt;&#xA;&lt;li&gt;Typical dropout rates: 0.2-0.5&lt;/li&gt;&#xA;&lt;li&gt;Acts as ensemble learning&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Early Stopping&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Monitors validation performance&lt;/li&gt;&#xA;&lt;li&gt;Stops when validation error starts increasing&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Data Augmentation&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Transforms training data&lt;/li&gt;&#xA;&lt;li&gt;Common in image tasks: rotation, scaling, flipping&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Batch Normalization&lt;/strong&gt;&#xA;$$ \hat{x}^{(k)} = \frac{x^{(k)} - \mu_B}{\sqrt{\sigma_B^2 + \epsilon}} $$&lt;/p&gt;</description>
    </item>
    <item>
      <title>From Relativistic Energy to Momentum</title>
      <link>https://blog.jyxu.site/posts/from_e_to_p/</link>
      <pubDate>Thu, 12 Oct 2023 23:20:02 +0800</pubDate>
      <guid>https://blog.jyxu.site/posts/from_e_to_p/</guid>
      <description>&lt;p&gt;Jackson &lt;a href=&#34;https://books.jyxu.site/Classical%20Electrodynamics%2C%203rd%20edition%20%28John%20David%20Jackson%29.pdf&#34;&gt;经典电动力学&lt;/a&gt;&#xA;Section 11.5 里面通过洛仑兹变换后取小角散射得到其表达式。&#xA;我发现把式子变变形，也能便捷地&#xA;从 $E = \gamma m c^2$ 得到 $\mathbf{p} = \gamma m \mathbf{v}$.&lt;/p&gt;&#xA;&lt;p&gt;$$\frac{\mathrm{d} \mathbf{p}}{\mathrm{d} t} \cdot d\mathbf{r} = dE$$&lt;/p&gt;&#xA;&lt;p&gt;$$\implies \mathbf{v} \cdot d \mathbf{p}  = d  \gamma m c^2$$&lt;/p&gt;&#xA;&lt;p&gt;$$\implies \mathbf{v} \cdot d \left( \mathbf{p} - \gamma m \mathbf{v} \right) = 0$$&lt;/p&gt;&#xA;&lt;p&gt;设 $\mathbf{p} = M(v) \mathbf{v}$ 且 $M(v)$ 单增&#xA;$$\mathbf{v} \cdot d \left[ (M(v)-\gamma m) \mathbf{v} \right] = 0$$&#xA;设 $f(v) = M(v)-\gamma m$&#xA;$$\mathbf{v} \cdot d \left[ f(v) \mathbf{v} \right] = 0$$&lt;/p&gt;</description>
    </item>
    <item>
      <title>热力学熵和信息熵</title>
      <link>https://blog.jyxu.site/posts/entropy/</link>
      <pubDate>Wed, 11 Oct 2023 22:20:02 +0800</pubDate>
      <guid>https://blog.jyxu.site/posts/entropy/</guid>
      <description>&lt;p&gt;假设系综大小为 $M \to \infty$，&#xA;由等概率原理，&#xA;有 $M P_i = n_i$ 个处于 $i$ 状态。&lt;/p&gt;&#xA;&lt;p&gt;我们知道经典热力学熵&lt;sup id=&#34;fnref:1&#34;&gt;&lt;a href=&#34;#fn:1&#34; class=&#34;footnote-ref&#34; role=&#34;doc-noteref&#34;&gt;1&lt;/a&gt;&lt;/sup&gt;&#xA;&lt;span&gt;&#xA;$$ \begin{align}&#xA;&#x9;S &amp;amp;= k \ln \Omega \\&#xA;&#x9; &amp;amp;= k \ln \frac{M!}{n_1 ! n_2 ! \dots n_N!}&#xA;\end{align}$$&#xA;&lt;/span&gt;&#xA;&#xA;根据 Stirling 近似 $\ln n! = n\ln n - n$&#xA;&lt;span&gt;&#xA;$$ \begin{align}&#xA;S &amp;amp;= - k \sum_i n_i \ln \frac{n_i}{M} \\&#xA;  &amp;amp;= - k M\sum_i \frac{n_i}{M} \ln P_i \\&#xA;  &amp;amp;= - k M\sum_i P_i \ln P_i&#xA;\end{align}$$&#xA;&lt;/span&gt;&#xA;&#xA;那么&#xA;$$s = \frac{S}{M} = -k\sum_i P_i \ln P_i = -k \int p(x) \ln p(x)  dx$$&#xA;热力学熵和信息熵讲的是同一件事情。&lt;/p&gt;</description>
    </item>
    <item>
      <title>Julia 利用 Matplotlib 画 surface 及 contour 投影</title>
      <link>https://blog.jyxu.site/posts/julia_matplotlib_surface_contour/</link>
      <pubDate>Wed, 27 Sep 2023 23:20:02 +0800</pubDate>
      <guid>https://blog.jyxu.site/posts/julia_matplotlib_surface_contour/</guid>
      <description>&lt;p&gt;搬运自 &lt;a href=&#34;https://t.me/julialangzh/26315&#34;&gt;https://t.me/julialangzh/26315&lt;/a&gt;&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-julia&#34; data-lang=&#34;julia&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;using&lt;/span&gt; PyCall&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#66d9ef&#34;&gt;using&lt;/span&gt; LaTeXStrings&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;@pyimport&lt;/span&gt; matplotlib&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;pyplot as plt&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#a6e22e&#34;&gt;@pyimport&lt;/span&gt; matplotlib&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;cm as cm&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;x &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; range(&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;2&lt;/span&gt;, length&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;10&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;y &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; range(&lt;span style=&#34;color:#f92672&#34;&gt;-&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;, &lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;, length&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;30&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;X&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;repeat(x, &lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;, length(y))&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Y&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;repeat(y&lt;span style=&#34;color:#f92672&#34;&gt;&amp;#39;&lt;/span&gt;, length(x))&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Z &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; &lt;span style=&#34;color:#a6e22e&#34;&gt;@.&lt;/span&gt; sin(π&lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt;X) &lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt; sin(π&lt;span style=&#34;color:#f92672&#34;&gt;*&lt;/span&gt;Y)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ax&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;plt&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;axes(projection&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;3d&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ax&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;plot_surface(X, Y, Z, cmap&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;autumn_r&amp;#34;&lt;/span&gt;, lw&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;0&lt;/span&gt;, rstride&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;, cstride&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;cset &lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt; ax&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;contour(X, Y, Z, offset&lt;span style=&#34;color:#f92672&#34;&gt;=-&lt;/span&gt;&lt;span style=&#34;color:#ae81ff&#34;&gt;1&lt;/span&gt;, cmap&lt;span style=&#34;color:#f92672&#34;&gt;=&lt;/span&gt;cm&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;coolwarm)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ax&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;set_xlabel(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;X&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ax&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;set_ylabel(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Y&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;ax&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;set_zlabel(&lt;span style=&#34;color:#e6db74&#34;&gt;&amp;#34;Z&amp;#34;&lt;/span&gt;)&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;plt&lt;span style=&#34;color:#f92672&#34;&gt;.&lt;/span&gt;show()&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;img src=&#34;https://blog.jyxu.site/images/julia_telegram.png&#34; alt=&#34;julia-telegram&#34;&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>竖直上抛问题，边值问题、变分问题与最小作用量</title>
      <link>https://blog.jyxu.site/posts/fem/</link>
      <pubDate>Wed, 13 Sep 2023 23:20:02 +0800</pubDate>
      <guid>https://blog.jyxu.site/posts/fem/</guid>
      <description>&lt;p&gt;重力加速度为 $g$, 小球质量 $m=1$,&#xA;以初速度为 $v_0 = g/2$ 竖直上抛,&#xA;$t$ 时刻动能为 $T(\dot{x}) = \dot{x}^2/2$,&#xA;势能为 $V(x) = gx$,&#xA;求&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;$$\int_0^1 dt \  2T -V$$&lt;/li&gt;&#xA;&lt;li&gt;$$\int_0^1 dt \  T -V$$&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;边值问题-p&#34;&gt;边值问题 (P)&lt;/h2&gt;&#xA;&lt;span&gt;&#xA;$$ \left\{\begin{aligned}&#xA;&amp;amp; - \ddot{x} = F \qquad 0 &amp;lt; t &amp;lt; 1 \\&#xA;&amp;amp; x(0) = x(1) = 0&#xA;\end{aligned}\right. $$&#xA;&lt;/span&gt;&#xA;&#xA;&lt;p&gt;$F(t)$ 是光滑函数, 求 $x$.&lt;/p&gt;&#xA;&lt;h2 id=&#34;变分问题-w&#34;&gt;变分问题 (w)&lt;/h2&gt;&#xA;&lt;p&gt;找 $x_{\text{真}} \in \mathcal{X} = \lbrace x | x \in [0,1], x(0) = x(1) = 0 \rbrace$, $\dot{x}$ 分片有界,&#xA;s.t. $$\int_0^1 dt \  \dot{x}_{\text{真}} \dot{x} = \int_0^1 dt \  F x$$&lt;/p&gt;</description>
    </item>
    <item>
      <title>Harmonic Oscillator</title>
      <link>https://blog.jyxu.site/posts/harmonic_oscillator/</link>
      <pubDate>Mon, 02 May 2022 22:20:02 +0800</pubDate>
      <guid>https://blog.jyxu.site/posts/harmonic_oscillator/</guid>
      <description>&lt;h2 id=&#34;一维谐振子的相图&#34;&gt;一维谐振子的相图&lt;/h2&gt;&#xA;&lt;p&gt;横坐标为&#xA;$$x=x_0 \cos \omega t \tag{1}$$&#xA;纵坐标为&#xA;$$p=-mx_0 \omega \sin \omega t \tag{2}$$&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://blog.jyxu.site/resources/%E6%A4%AD%E5%9C%86%E7%9A%84theta%E8%A7%92.png&#34; alt=&#34;谐振子的相图&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;action-angle-变量-itheta&#34;&gt;Action-angle 变量 $(I,\theta)$&lt;/h2&gt;&#xA;&lt;p&gt;可以通过拉伸坐标使使得相图变成一个圆，那么就可以用一个角度 $\theta = \omega t$ 和一个半径 $I$ 来表示圆上的任意一点，其中 $I$ 具有角动量的量纲。&lt;/p&gt;&#xA;&lt;p&gt;相图上圆的半径是不变的，当弹簧 $x =x_0$ 势能取最大，$E = m x_0^2 \omega^2 / 2$&#xA;可以证明&#xA;$$I = \frac {1} {2\pi} \oint p dx = E/\omega$$&#xA;是守恒量。&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://blog.jyxu.site/resources/%E4%BD%9C%E7%94%A8-%E8%A7%92%E5%8F%98%E9%87%8F.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;产生湮灭算符&#34;&gt;产生湮灭算符&lt;/h2&gt;&#xA;&lt;p&gt;利用欧拉公式，式 (1) 和 (2) 还可以写成&#xA;$$x=x_0 \cos \omega t = x_0 \left( \frac{e^{i \omega t} + e^{-i \omega t}}{2} \right)$$&#xA;和&#xA;$$p=-mx_0 \omega \sin \omega t = -mx_0 \omega \left( \frac{e^{i \omega t} - e^{-i \omega t}}{2i} \right)$$&lt;/p&gt;</description>
    </item>
    <item>
      <title>From Canonical Commutation Relation to Heisenberg&#39;s Uncertainty Principle</title>
      <link>https://blog.jyxu.site/posts/heisenbergs_uncertainty_principle/</link>
      <pubDate>Mon, 02 May 2022 11:23:02 +0800</pubDate>
      <guid>https://blog.jyxu.site/posts/heisenbergs_uncertainty_principle/</guid>
      <description>&lt;p&gt;Introducing a real coefficient $\xi$ and an operator $\hat{F}$, where&#xA;$$ -\infty &amp;lt; \xi &amp;lt; \infty $$&#xA;and&#xA;$$ \hat{F} = \xi \hat{A} + i \hat{B} \quad  \hat{F} = \xi \hat{A} - i \hat{B}, $$&#xA;so that&#xA;&lt;span&gt;&#xA;$$ \begin{aligned}&#xA;    \hat{F}^\dagger  \hat{F} &amp;amp;= \xi^2 \hat{A}^2 &amp;#43; \hat{B}^2 &amp;#43; i \xi (\hat{A} \hat{B} - \hat{B} \hat{A}) \\&#xA;                             &amp;amp;= \xi^2 \hat{A} &amp;#43; \hat{B}^2 - \xi \hat{C}.&#xA;  \end{aligned} $$&#xA;&lt;/span&gt;&#xA;&#xA;Let&#xA;$$ I(\xi) = \braket{ \hat{F}^\dagger \hat{F} }  = \int \psi^* \hat{F}^\dagger \hat{F} \psi d {\tau} = \xi^2 \bar{A}^2 + \bar{B}^2 - \xi \bar{C} \geq 0, $$&#xA;where&#xA;$$ \int \psi^* \hat{F}^\dagger \hat{F} \psi d {\tau} = \int \hat{F} \psi ( F \psi )^*  d {\tau}.  $$&#xA;$$ \implies \bar{A}^2 \bar{B}^2 \geq  \frac{\bar{C}^2}{4} $$&#xA;&lt;span&gt;&#xA;$$ \begin{align}&#xA;  \hat{A} \rightarrow \hat{A} - \bar{A} \\&#xA;  \hat{B} \rightarrow \hat{B} - \bar{B}&#xA;\end{align}$$&#xA;&lt;/span&gt;&#xA;&#xA;$$ \implies \Delta A \cdot \Delta B \geq \frac{|\bar{C}|}{2} $$&#xA;$$ \Delta x \Delta p_x \geq \frac{\hbar}{2} $$&lt;/p&gt;</description>
    </item>
    <item>
      <title>toroidal and poloidal coordinates</title>
      <link>https://blog.jyxu.site/posts/toroidal_and_poloidal_coordinates/</link>
      <pubDate>Sun, 01 May 2022 23:37:58 +0800</pubDate>
      <guid>https://blog.jyxu.site/posts/toroidal_and_poloidal_coordinates/</guid>
      <description>&lt;p&gt;$\require{physics}$&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://blog.jyxu.site/images/tokamak.png&#34; alt=&#34;tokamak&#34;&gt;&lt;/p&gt;&#xA;&lt;p&gt;$$\begin{equation}&#xA;\sin \zeta = -\frac{y}{R} \quad \cos \zeta = \frac{x}{R}&#xA;\end{equation}$$&lt;/p&gt;&#xA;&lt;span&gt;&#xA;$$\begin{aligned}&#xA;  \vu{\zeta} = -\sin \zeta \vu{x} - \cos \zeta \vu{y}, \\&#xA;  \vu{\theta} = - \sin \theta \vu{R} &amp;#43; \cos \theta \vu{z}\\&#xA;  \vu{R} = \cos \zeta \vu{x} - \sin \zeta \vu{y}.&#xA;\end{aligned}$$&#xA;&lt;/span&gt;&#xA;&#xA;&lt;p&gt;From the above equations, it can be concluded that&#xA;$$\begin{equation}&#xA;\vu{\theta} = - \sin \theta \cos \zeta \vu{x} + \sin \theta \sin \zeta \vu{y} + \cos \theta \vu{z}.&#xA;\end{equation}$$&lt;/p&gt;</description>
    </item>
    <item>
      <title>Lipschitz continuity</title>
      <link>https://blog.jyxu.site/posts/lipschitz_continuity/</link>
      <pubDate>Sun, 01 May 2022 11:23:03 +0800</pubDate>
      <guid>https://blog.jyxu.site/posts/lipschitz_continuity/</guid>
      <description>&lt;p&gt;Lipschitz continuity is a stronger form of continuity for a function. A function is Lipschitz continuous if there&amp;rsquo;s a bound on how fast it can change.&lt;/p&gt;&#xA;&lt;h2 id=&#34;mathematical-definition&#34;&gt;Mathematical Definition&lt;/h2&gt;&#xA;&lt;p&gt;A function $f: D \mapsto R$ is Lipschitz continuous if there exists a constant $L \geq 0$ (called the Lipschitz constant) such that for all $x_1, x_2$ in the domain $D$:&lt;/p&gt;&#xA;&lt;p&gt;$$&#xA;|f(x_1) - f(x_2)| \leq L|x_1 - x_2|&#xA;$$&lt;/p&gt;&#xA;&lt;h2 id=&#34;intuitive-understanding&#34;&gt;Intuitive Understanding&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;The function&amp;rsquo;s rate of change is bounded&lt;/li&gt;&#xA;&lt;li&gt;Geometrically, the absolute slope between any two points doesn&amp;rsquo;t exceed $L$&lt;/li&gt;&#xA;&lt;li&gt;The function&amp;rsquo;s graph cannot have any &amp;ldquo;vertical&amp;rdquo; portions&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;examples&#34;&gt;Examples&lt;/h2&gt;&#xA;&lt;h3 id=&#34;basic-functions&#34;&gt;Basic Functions&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;$f(x) = x$ is Lipschitz continuous with $L = 1$&lt;/li&gt;&#xA;&lt;li&gt;$f(x) = x^2$ is:&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Lipschitz continuous on any bounded interval&lt;/li&gt;&#xA;&lt;li&gt;Not Lipschitz continuous on $\mathbb{R}$&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;$f(x) = \sqrt{x}$ is not Lipschitz continuous on $[0,\infty)$ due to infinite derivative near 0&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;advanced-examples&#34;&gt;Advanced Examples&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;$f(x) = \sin(x)$ is Lipschitz continuous with $L = 1$&lt;/li&gt;&#xA;&lt;li&gt;$f(x) = e^x$ is:&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Lipschitz continuous on any interval $(-\infty, M]$&lt;/li&gt;&#xA;&lt;li&gt;Not Lipschitz continuous on $\mathbb{R}$&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;key-properties&#34;&gt;Key Properties&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;Every Lipschitz continuous function is uniformly continuous&lt;/li&gt;&#xA;&lt;li&gt;For differentiable functions:&#xA;&lt;ul&gt;&#xA;&lt;li&gt;$f$ is Lipschitz continuous $\iff$ $f&amp;rsquo;$ is bounded&lt;/li&gt;&#xA;&lt;li&gt;The smallest valid Lipschitz constant $L$ equals $\sup_{x \in D} |f&amp;rsquo;(x)|$&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;On a compact domain, any $\mathcal{C}^1$ function is Lipschitz continuous&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;h2 id=&#34;generalizations&#34;&gt;Generalizations&lt;/h2&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Hölder Continuity&lt;/strong&gt;: A weaker condition where:&#xA;$$|f(x_1) - f(x_2)| \leq L|x_1 - x_2|^\alpha$$, $\alpha \in (0,1]$.&lt;/p&gt;</description>
    </item>
    <item>
      <title>The Fascinating Connection Between Berry&#39;s Phase and Plasma Physics</title>
      <link>https://blog.jyxu.site/posts/berrys-phase-and-plasma-physics/</link>
      <pubDate>Sun, 01 May 2022 11:23:02 +0800</pubDate>
      <guid>https://blog.jyxu.site/posts/berrys-phase-and-plasma-physics/</guid>
      <description>&lt;p&gt;In the realm of quantum mechanics, Berry&amp;rsquo;s phase has emerged as a fundamental concept with far-reaching implications across various fields of physics. Discovered by Michael Berry in 1984, this geometric phase has shed new light on the behavior of quantum systems and has found applications in areas as diverse as condensed matter physics, quantum computation, and, perhaps surprisingly, plasma physics. In this blog post, we will explore the intriguing connection between Berry&amp;rsquo;s phase and plasma physics, highlighting how this quantum mechanical concept has provided new insights into the complex behavior of plasmas.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Contact</title>
      <link>https://blog.jyxu.site/contact/</link>
      <pubDate>Fri, 29 Apr 2022 23:37:58 +0800</pubDate>
      <guid>https://blog.jyxu.site/contact/</guid>
      <description>&lt;ul&gt;&#xA;&lt;li&gt;Email: junyixu0 (AT) gmail (DOT) com&lt;/li&gt;&#xA;&lt;li&gt;Telegram: &lt;a href=&#34;https://t.me/str0x0b&#34;&gt;https://t.me/str0x0b&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;Discord: junyixu&lt;/li&gt;&#xA;&lt;li&gt;Matrix: @jyxu:mozilla.org&lt;/li&gt;&#xA;&lt;li&gt;Github: &lt;a href=&#34;https://github.com/junyixu&#34;&gt;https://github.com/junyixu&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://blog.jyxu.site/pgp_key.asc&#34;&gt;My PGP/GPG key&lt;/a&gt; ID: &lt;code&gt;BCD81111A94933DB5B4DAF08D0AA2E095C31D766&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Friends</title>
      <link>https://blog.jyxu.site/friends/</link>
      <pubDate>Fri, 29 Apr 2022 23:37:58 +0800</pubDate>
      <guid>https://blog.jyxu.site/friends/</guid>
      <description>&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://bessgendre.github.io&#34;&gt;AYIN&lt;/a&gt; - 位我上者，灿烂星空&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://jiming.site&#34;&gt;Axeho&lt;/a&gt; - Non-Equilibrium Statistical Mechanics&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Btrfs 注意事项</title>
      <link>https://blog.jyxu.site/posts/btrfs_notes/</link>
      <pubDate>Sat, 02 May 2020 11:23:02 +0800</pubDate>
      <guid>https://blog.jyxu.site/posts/btrfs_notes/</guid>
      <description>&lt;h2 id=&#34;子卷布局&#34;&gt;子卷布局&lt;/h2&gt;&#xA;&lt;p&gt;我采用平坦布局，并通过 &lt;code&gt;/etc/fstab&lt;/code&gt; 把子卷挂载&lt;/p&gt;&#xA;&lt;p&gt;&lt;img src=&#34;https://blog.jyxu.site/images/df.png&#34; alt=&#34;df&#34;&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;mount-参数&#34;&gt;mount 参数&lt;/h2&gt;&#xA;&lt;p&gt;一开始就应使用 &lt;code&gt;space_cache=v2&lt;/code&gt;。&lt;/p&gt;&#xA;&lt;p&gt;不过，若你一开始用的是 &lt;code&gt;space_cache=v1&lt;/code&gt;，&#xA;现在想改成 &lt;code&gt;space_cache=v2&lt;/code&gt;，&#xA;直接改 fstab 的话可能会出现问题，&#xA;建议 &lt;code&gt;mount -oclear_cache,space_cache=v2&lt;/code&gt; 清理下 &lt;code&gt;space_cache&lt;/code&gt;。&lt;/p&gt;&#xA;&lt;h2 id=&#34;辅助工具&#34;&gt;辅助工具&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;我用的是 snapper。据说 timeshift 只支持 &lt;code&gt;@&lt;/code&gt; 和 &lt;code&gt;@home&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/wesbarnett/snap-pac&#34;&gt;snap-pac&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/baod-rate/snap-sync&#34;&gt;snap-sync&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;locate-的额外配置&#34;&gt;locate 的额外配置&lt;/h2&gt;&#xA;&lt;p&gt;若你用 mlocate 或 plocate，最好在&#xA;&lt;code&gt; /etc/updatedb.conf&lt;/code&gt;&#xA;添加&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;PRUNENAMES = &amp;#34;.git .hg .svn .snapshots&amp;#34;&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;以排除对 &lt;code&gt;.snapshots&lt;/code&gt; 索引&lt;/p&gt;&#xA;&lt;h2 id=&#34;回滚-home-步骤&#34;&gt;回滚 @home 步骤&lt;/h2&gt;&#xA;&lt;p&gt;在这里简单记一下恢复的步骤：&#xA;1、先创建当前状态的只读镜像eg.99，以备后用。&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;btrfs subvolume snapshot -r /mnt/@home /mnt/@home/.snapshots/99&#xA;mv /mnt/@home /mnt/@home.old&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;2、从历史镜像eg.15恢复 /home 。&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;btrfs subvolume snapshot /mnt/@home.old/15/snapshot /mnt/@home&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;3、移动子分卷。&lt;/p&gt;&#xA;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;mv /mnt/@home.old/.snapshots /mnt/@home/&#xA;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;4、移除旧分卷，更改 /etc/fstab 。&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
