本站指引
如果您来自搜索引擎,可以再次使用右上角搜索内容
订阅我¶
你可以通过RSS来订阅本站的内容
推荐页面¶
关于我的介绍,戳这里
我的锻炼记录,戳这里
博客访问记录,戳这里
更多页面请查看实验室
Hexo 配置 Typst 代码高亮
Hexo 处理的代码块会被包裹在 figure table tbody tr > td.code pre 中,每一行代码又被 span 包裹,如果需要加入对 Typst 的支持,需要将所有的代码重新提取出来,处理后之后再填入,有两种方法可以选择:
前端修改:在 html 页面中读取代码块元素,提取代码处理后再填入(1)
标签插件(推荐):在 hexo 生成的过程中使用标签插件 (2) 处理
前端修改¶
此方法可能需要刷新才能正常显示
此方法会将所有的 plaintext 识别为 typst,可以通过在第一行加一行说明语言来处理
引入js文件¶
12345<script crossorigin="anonymous" src="https://foolishfox.cn/js/hl.js"></script><script id="script-main" src="https://cdn.jsdelivr.net/npm/@myriaddreamin/highlighte ...
微信聊天记录分析:去年和你的猪聊了什么?
评论不填写邮箱,将收不到回复通知
多图预警
ipynb文件最好从上往下依次运行,不要回过头来重新搞,获取方式:
在 Google Colab 使用在线环境运行(推荐)
下载 ipynb文件 直接运行
下载 运行所需文件
准备¶
导出聊天记录¶
依照 WeChatMsg 的教程导出 csv 文件,只需要导出文本即可。
图1 导出聊天记录
安装所需包¶
推荐在虚拟环境中安装。
1pip install numpy seaborn pandas wordcloud tqdm paddlepaddle paddlenlp
引入包¶
pandas: 基础数据框架
matplotlib & seaborn: 绘图
jieba: 中文分词
wordcloud: 词云
paddlenlp: 情感分析
12345678910111213141516import reimport timeimport numpy as npimport pandas as pdimport jiebaimport jieba.posseg as psegfrom PIL import Imagefr ...
排版工具 Typst 教程与 Snippets
个人的自用模板代码可以查看 Typst-Snippets
Typst 是 2019 年才出现的使用 Rust 编写的基于标记的排版语言,定位在 Markdown、Word 等初级工具和 LaTeX\LaTeXLATEX 一类的高级工具之间,官方宣称其功能可以和 LaTeX\LaTeXLATEX 一样强大,但是和 Markdown 一样简单、易用,主要应用于数学、物理和工程方面(特别是包含大量公式、图表)的论文、文章、作业、书籍和报告的编写。
基础教程¶
MacOS 和 Arch Linux 用户可以使用包管理器进行安装:
12345# macOS or Linux using Homebrewbrew install typst# Arch Linuxpacman -S typst
具体支持的发行版本可以查看 参考资料 (5)。Ubuntu 目前还只能下载编译好的二进制文件,或者安装 Rust 后从源码编译进行安装。除此之外,还需要安装编辑器的插件实现代码提示、预览等功能,VS Code 上的主要插件有:
Typst LSP
Typst Preview
除此之外,还有 Typ ...
学习笔记 | 贝叶斯块算法
施工中
获取探测器的计数随时间或其他物理量的变化可以帮助了解发生的物理过程的各种性质。例如在 X 射线和 γ 射线天文学中十分关注光子计数随时间的变化,这一类变化被称为光变曲线,可以借此计算相应物理过程的空间尺度等性质。
基础知识¶
核辐射测量的统计性质¶
探测 X/γ 射线需要使用核辐射探测器,每探测到一个事例,探测器将会记录相应事例的物理信息,如时间、能量、径迹等。核辐射的测量充满了随机性,但是可以用统计分布来描述其中的随机性。单个放射性粒子的衰变过程是一个伯努利事件,其衰变常数为 λ\lambdaλ,则在时间 0∼t0\sim t0∼t 内发生衰变的可能性为:
\begin{align}
p = 1 - e^{-\lambda t}
\end{align}
对于由 n0n_0n0 个放射性粒子组成的体系,彼此之间发生衰变是独立的,则体系的衰变过程是一个 n0n_0n0 重伯努利过程,即 ttt 时刻发生了衰变的粒子数目 nnn 满足二项分布:
\begin{equation}\begin{split}
P(n|n_0) &= C_{n_0}^np^n(1-p) ...
使用 wine 安装 SRIM
前言¶
SRIM 是一个 Windows 平台上用于计算带电粒子能损的软件包,典型的应用包括计算入射离子在靶材中的射程和 dE/dxdE/dxdE/dx 能损曲线等。由于这是一个单字节程序,因此在中文系统中会存在显示问题,可以通过更改系统的区域和语言为美国/英语重启之后解决[2],但是会很麻烦,而且可能导致其他软件出现问题(例如部分软件可能读取到错误的区域),如下图所示。
错误显示的 SRIM
为了解决这个问题,我们可以选择在 WSL 上安装 wine,通过 wine 来调用 SRIM。请注意,此处需要 WSL 更新到最新版本以支持 WSLG。
本机环境
WSL: 1.2.5.0
WSLg: 1.0.51
Ubuntu: 20.04.6
wine: 8.0.2
wine¶
wine 目前最新稳定版本更新至 8.0.2,但是 ubuntu 自带的软件源中仍为 5.0 版本。可以根据需要自行选择安装版本。
wine 5.0¶
更新与安装 wine。
1sudo apt update && sudo apt install wine -y
检查 wine32 是否安装 ...
CERN ROOT 的 Jupyter 环境
前言¶
ROOT 是由 CERN 开发的用于实验大数据处理的框架,主要应用于核物理和高能物理领域。ROOT 主要由 C++ 编写,但较新版本中也提供了 Python 的借口,通过引入pyroot实现。
一般而言,通常在命令行输入root后,通过TBrowser浏览文件;或者使用 C++ 编写数据处理的函数,在 ROOT 中进行调用。而使用 Jupyter 来编写 ROOT 程序在学习和开发阶段较为便利。由于预编译版本的 ROOT 已经绑定了特定 Python 版本,有可能与本机的 Python 版本不匹配,所以通过源代码编译安装的方式能够避免绝大部分的兼容性问题。
安装¶
本机环境
Ubuntu 20.04.6
Python 3.10.11
目前 ROOT 的最新版本为 6.28,但为了兼容本机上的 Garfield Plus Plus,因此选择 6.26 版本。在 ROOT Releases 页面下载对应版本的安装包。
依赖¶
在 ROOT Install Dependencies 查看对应系统版本要求的依赖,对于 Ubuntu 使用一行命令解决必备依赖:
12sudo apt-g ...
博客成长日志 | 自建 Umami 统计
在一年多之前,我写了一篇博客(博客成长日志 | 准实时访问统计)介绍如何使用百度统计的API实现准实时的访问统计与展示。然而今年百度统计宣布个人版只允许保存一年的数据,而且很多功能会被关闭(例如OS统计等),再加上其API使用也不方便,因此我开始谋求其他的站点统计系统。
与百度统计同类型的竞品还有谷歌统计、51La、CNZZ等,但是这些网站与百度统计也或多或少存在类似类似的问题,同时作为个人小站,也不需要收集过于精细的用户信息(如年龄、详细地区等),所以我开始寻找自建的统计工具。
目前常用的一些开源统计工具可以查看:5 款免费开源的网站流量分析统计工具,在这其中Umami和Plausible是我认为不错的选择,再结合枋柚梓的自建个人网站数据统计分析系统,最终决定采用Umami。
Umami也存在问题:
只记录了 country,无法精确到省份
地图存在问题,如果使用要避免直接展示地图
介绍¶
Umami is an open source, privacy-focused alternative to Google Analytics. Umami provides you w ...
Windows下Geant4的安装与示例
Geant4(GEometry ANd Tracking,几何和跟踪)是由CERN(欧洲核子研究组织)基于C++面向对象技术开发的蒙特卡罗应用软件包,用于模拟粒子与物质的相互作用,在高能物理、加速器、核物理、辐射防护等多个领域都有着广泛的应用。
安装¶
环境要求¶
源代码
MSVC 19
CMaKe >= 3.16
Qt5(optional,可选)
MSVC
只要求MSVC版本为19.X.X.X,不要求Visual Studio版本为VS 2019,通过在VS中打开isual Studio Tools (工具) → Developer Command Prompt for VS201X (Visual Studio 命令提示)可以查看MSVC版本:
12345>cl用于 x86 的 Microsoft (R) C/C++ 优化编译器 19.31.31104 版版权所有(C) Microsoft Corporation。保留所有权利。用法: cl [ 选项... ] 文件名... [ /link 链接选项... ]
Qt
必须是Qt5,目前暂不支持Qt6,推荐使用Qt ...
服务器安装Jupyter Lab(Python与R环境)
前言¶
这学期学的《概率论与数理统计》课有作业需要用到R,加上双十一从腾讯云搞了一台2H4G8M的机器,性能大大提升,因此打算打造一个云服务来运行Python,同时兼顾R。
在安装的过程中碰到了超级多的问题,所以下面介绍一下安装的流程,记录一些很久才解决的问题。
系统信息
OS: Ubuntu 20.04
Python: 3.8.10
方案¶
目前常用的方式是Anaconda+R(使用apt安装),而Anaconda会安装很多不必要的包,而在服务器(无图形界面)使用apt安装的R中的画图功能需要安装X11的相关环境,还不一定能搞定,所以最终采用的方案如下:
12345678./├─pycal Python虚拟环境├─rsource R安装包的源代码├─rcal 自定义安装的R├─project 项目文件夹│ ├─R R项目│ └─Python Python项目└─requirements.txt Python需要的包
安装¶
Pyt ...