首页
统计
关于
Search
1
Win10安装mingw64配置最新版gcc与gfortran环境
607 阅读
2
李芒果空岛-1.20.1-发展记录-05
584 阅读
3
108第一届中国象棋比赛
541 阅读
4
Savitzky-Golay滤波器原理-01
535 阅读
5
史瓦西黑洞最内稳定圆轨道计算
500 阅读
默认分类
技术经验
工作学习
娱乐爱好
闲言碎语
登录
Search
标签搜索
天文
Minecraft
李芒果空岛
空间物理学
macOS
数值计算
非线性最小二乘
typecho
Python
GSL
gcc
迭代法
Fortran
Halo
朗谬尔波
Langmiur
环法自行车赛
短波通信
PTCG
Win10
Washy
累计撰写
76
篇文章
累计收到
1
条评论
首页
栏目
默认分类
技术经验
工作学习
娱乐爱好
闲言碎语
页面
统计
关于
搜索到
76
篇与
的结果
2024-05-27
2024-05-27 X2.8级太阳耀斑
北京时间2024年5月27日14:53,太阳爆发了一个X2.8级X射线耀斑,于15:24结束,如下展示的是NASA 304A波段的太阳观测视频。 参考 王者归来 原活动区AR3664再次爆发X2.8级耀斑
2024年05月27日
212 阅读
0 评论
2 点赞
2024-05-22
Win10使用msys2安装gsl库
0 前言 最近需要在电脑上跑别人的C程序,发现其中用到了gsl库,记录下如何配置相关环境及安装该库。 1 安装MSYS2 前往MSYS2官网下载msys2-x86_64-20240507.exe软件 按照引导进行安装 安装完成后,在弹出的命令行窗口输入pacman -Syu更新包数据库和基础包 如果不小心关闭了窗口,可双击安装目录下的msys2.exe打开窗口 继续输入pacman -Su更新其余基本软件包 2 配置环境 进入MSYS2安装目录C:\msys64,双击msys2.exe打开命令行窗口 输入pacman -S --needed base-devel mingw-w64-x86_64-toolchain安装mingw-w64 gcc工具 输入pacman -S mingw-w64-x86_64-gcc-fortran安装gfortran工具 将C:\msys64\mingw64\bin添加至系统环境变量 进入【此电脑】,空白处右键,选择【属性】,点击左侧【高级系统设置】,点击右下角【环境变量】 双击系统变量中的【Path】,点击【新建】,写入C:\msys64\mingw64\bin,然后确定即可 3 安装GSL 前往GSL官网下载GSL-latest最新版本,可从下面任意链接进入FTP网站 最近的GNU镜像 GNU FTP主站点 将压缩包解压至任意路径(路径中最好不包含中文) 进入MSYS2安装目录,双击mingw64.exe打开命令行窗口 在命令行中进入上述GSL的解压路径 输入./configure && make && make install,等待安装完毕,此过程较长 安装完成后,可在MSYS2文件夹下的mingw64/bin文件夹中看到libgsl-27.dll(本文安装的GSL为2.7版本) 参考 Windows10安装VScode + mingw64 + GSL 用 VS Code + MSYS 搞定 Windows 上的 Fortran 开发 超详细教程:windows安装MSYS2(mingw && gcc)——更新于2021.11
2024年05月22日
343 阅读
0 评论
1 点赞
2024-05-21
Win10配置Python环境及安装apexpy包
0 前言 之前一直使用Mac办公,今天因为工作需求需要在Windows上运行之前写的代码,在安装apexpy包时,遇到了不少问题,经过一番折腾,发现是gfortran和Python版本问题导致的,在此记录下。 1 安装Python 目前(2024-05)最新的Python版本为3.12.3,由于apexpy包还没有完全支持最新版本,所以需要使用相对落后的版本,经测试发现3.10.11版本可正常使用 前往Python官网下载3.10.11版本: 64位:Windows installer (64-bit) 32位:Windows installer (32 -bit) 下载完成后,双击安装包,勾选安装界面的两个复选框,点击安装(建议安装在默认路径) 使用win+R快捷键,输入cmd,点击【确定】进入终端 输入python --version,打印Python 3.10.11则安装成功。如果版本号不对,可能是之前安装过python,可选择卸载其他版本或创建新的运行环境(网上自行搜索教程,建议使用必应搜索,非常不推荐使用百度) 输入pip list查看当前已安装的包 2 安装apexpy包 apexpy包需要有gcc和gfortran的运行环境,可参考Win10安装mingw64配置最新版gcc与gfortran环境博客 使用win+R快捷键,输入cmd,点击【确定】进入终端 输入pip install apexpy,等待安装结束即可 该包安装完成后,会顺带安装numpy包 现在的程序还需要使用netCDF4、scipy、matplotlib 同样在终端中使用pip install <package>进行安装,将<package>改为对应包的名称即可 3 安装编辑器 此处推荐使用Visual Studio Code,可前往官网进行下载安装 安装完成后,点击左侧【扩展】图标 搜索Chinese (Simplified) (简体中文) ,安装第一个搜索结果 搜索python,安装第一个搜索结果 搜索Jupyter,安装第一个搜索结果 一般来说安装上面三个扩展就能够正常运行代码了,如有其他需求也可自行搜索安装 4 后记 涉及到fortran的东西,总是存在一堆奇怪的问题,害我折腾了这么久。
2024年05月21日
339 阅读
0 评论
0 点赞
2024-05-21
Win10安装mingw64配置最新版gcc与gfortran环境
0 前言 最近因为多件事情的需求,需要在Windows电脑上配置Fortran环境,由于网上大多数的博客介绍的方法安装的Fortran版本较低,使用过程中会出现各种问题,最终找到了解决办法,在此处记录下。 1 安装MinGW-w64 在线安装版本无法获取最新版本,只能到8.x,最新版本需要从GitHub上获取,链接如下: https://github.com/niXman/mingw-builds-binaries/releases 当前(2024-05)最新版本为13.2,如下图所示。其中i686为32位,x86_64为64位,对于win10电脑,下载图中红框压缩包 将下载好的x86_64-13.2.0-release-win32-seh-ucrt-rt_v11-rev1.7z压缩包解压至C盘根目录,此时路径为C:\mingw64 将C:\mingw64\bin添加至系统环境变量 进入【此电脑】,空白处右键,选择【属性】,点击左侧【高级系统设置】,点击右下角【环境变量】 双击系统变量中的【Path】,点击【新建】,写入C:\mingw64\bin,然后确定即可 使用win+R快捷键,输入cmd,点击【确定】进入终端 在终端中输入gcc --version,正常打印版本号则安装成功 在终端中输入gfortran --version,正常打印版本号则安装成功 如果以上操作都没问题,但版本号不对,可进行如下排查 在终端输入where gfortran,查看打印出来的路径是否存在其他的路径 若存在,可选择删除其他版本的gcc/gfortran,或者将环境变量中其他版本的路径删除,或者将环境变量中新安装的版本路径移动至最上方 注意:gcc与gfortran的版本号必须一致 参考: MinGW-W64 下载、安装与配置(支持最新版的GCC,目前 GCC 13.2.0) 2 后记 这件事也是反复折腾很多次了,每次都会遇到不同的问题。不过这次算是彻底搞明白了,以后直接参考这次结果就行。
2024年05月21日
607 阅读
0 评论
1 点赞
2024-05-06
Savitzky-Golay滤波器原理-01
0 前言 最近在看文章时,发现有人使用Savitzky-Golay滤波器对数据进行预处理,提取背景值,尝试之后发现效果显著。因此,简单研究下Savitzky-Golay滤波器的原理。 1 Savitzky-Golay滤波器原理 1.1 简介 Savitzky-Golay滤波器(通常简称为S-G滤波器)最初由Savitzky和Golay于1964年提出,发表于Analytical Chemistry 杂志。之后被广泛地运用于数据流平滑除噪,是一种在时域内基于局域多项式最小二乘法拟合的滤波方法。这种滤波器最大的特点在于在滤除噪声的同时可以确保信号的形状、宽度不变$^{[1]}$。 Savitzy-Golay 卷积平滑算法是移动平滑算法的改进。用 Savitzky-Golay 方法进行平滑滤波,可以提高光谱的平滑性,并降低噪音的干扰。Savitzy-Golay 平滑滤波的效果,随着选取窗宽不同而不同,可以满足不同场合的需求$^{[1]}$。 1.2 推导 思想:使用一定长度窗口的数据对窗口中心的数据进行平滑处理。 设窗口的宽度为$2m + 1$,窗口内的数据值为$y_i$, $i = -m,-m+1,\dots,-1,0,1,\dots,m-1,m$,使用$n$阶多项式对其进行拟合,有 $$ f_i = f(i) = \sum_{k=0}^{n} b_k i^k $$ 那么拟合数据与原始数据的残差平方和为 $$ R = \sum_{i=-m}^{m} (f_i - y_i)^2 = \sum_{i=-m}^{m} \left( \sum_{k=0}^{n} b_k i^k - y_i \right)^2 $$ 使用最小二乘的思想,为了使拟合效果最好,需要使残差的平方和最小,则需要使得所有拟合系数的一阶偏导为零。对于第$l$个系数$b_l$有 $$ \frac{\partial R}{\partial b_l} = 2 \sum_{i=-m}^{m} \left( \sum_{k=0}^{n} b_k i^k - y_i \right)i^l = 0 $$ 整理后可得 $$ \sum_{i=-m}^{m} y_i i^l = \sum_{k=0}^{n} b_k \sum_{i=-m}^{m} i^{k+l} $$ 对于$l \in [0,n]$可以得到$n+1$个方程,联立后可以解得所有系数$b_l$。写成矩阵形式,有 $$ \begin{bmatrix} (-m)^0 & \dots & 0^0 & \dots & m^0 \\ \vdots & & \vdots & & \vdots \\ (-m)^l & \dots & 0^l & \dots & m^l \\ \vdots & & \vdots & & \vdots \\ (-m)^n & \dots & 0^n & \dots & m^n \\ \end{bmatrix} \begin{bmatrix} (-m)^0 & \dots & (-m)^k & \dots & (-m)^n \\ \vdots & & \vdots & & \vdots \\ 0^0 & \dots & 0^k & \dots & m^n \\ \vdots & & \vdots & & \vdots \\ m^0 & \dots & m^k & \dots & m^n \\ \end{bmatrix} \begin{bmatrix} b_0 \\ \vdots \\ b_k \\ \vdots \\ b_n \\ \end{bmatrix} = \begin{bmatrix} (-m)^0 & \dots & 0^0 & \dots & m^0 \\ \vdots & & \vdots & & \vdots \\ (-m)^l & \dots & 0^l & \dots & m^l \\ \vdots & & \vdots & & \vdots \\ (-m)^n & \dots & 0^n & \dots & m^n \\ \end{bmatrix} \begin{bmatrix} y_{-m} \\ \vdots \\ y_0 \\ \vdots \\ y_m \\ \end{bmatrix} $$ 得到所有系数后,将其代回拟合方程,并计算中心点处的拟合值 $$ f_0 = f(0) = b_0 $$ 此时,我们就得到了Savitzky-Golay滤波器平滑后的中心点的数值大小。 1.3 一阶形式 当使用一阶多项式进行拟合时,代入上一节矩阵形式,很容易可以得到 $$ \begin{bmatrix} 1 & \dots & 1 & \dots & 1 \\ -m & \dots & 0 & \dots & m \\ \end{bmatrix} \begin{bmatrix} 1 & -m \\ \vdots & \vdots \\ 1 & 0 \\ \vdots & \vdots \\ 1 & m \\ \end{bmatrix} \begin{bmatrix} b_0 \\ b_1 \\ \end{bmatrix} = \begin{bmatrix} 1 & \dots & 1 & \dots & 1 \\ -m & \dots & 0 & \dots & m \\ \end{bmatrix} \begin{bmatrix} y_{-m} \\ \vdots \\ y_0 \\ \vdots \\ y_m \\ \end{bmatrix} $$ 整理后可得 $$ \left\{ \begin{split} &b_0 = \sum_{i=-m}^m y_i / \sum_{i=-m}^{m} 1 \\ &b_1 = \sum_{i=-m}^m y_i i / \sum_{i=-m}^{m} i^2 \\ \end{split} \right. $$ 从而可以得到中心点处的拟合值为 $$ f_0 = b_0 = \sum_{i=-m}^m y_i / (2m+1) $$ 此即为滑窗平均的表达式。 参考: 【UWB】Savitzky Golay filter SG滤波器原理讲解 Savitzky-Golay滤波器原理阐述
2024年05月06日
535 阅读
0 评论
1 点赞
2024-03-14
Pai Day
0 前言 在物理学中,我们经常会定义一些物理常数,如光速$c$、万有引力常数$G$、普朗克常数$h$等。物理常数的大小往往与量纲紧密相关,科学家们为了统一数值,也才有了国际单位制的诞生。相对物理常数来说,有意义的数学常数要少得多,比较知名的有圆周率$\pi$、自然指数$e$等。虽然数学常数少得多,但它们都不会受到单位“1”的定义而改变大小(只考虑十进制),比如不管一个圆有多大,它的周长永远都是直径的$\pi$倍。今天作为国际数学日($\pi$ day),自然要好好聊一聊圆周率的故事。 1 符号 $\pi$是第十六个的希腊字母小写,亦是希腊语περιφρεια(表示周边、地域、圆周等意思)的首字母。 1706年,英国数学家威廉·琼斯(William Jones,1675—1749)最先使用$\pi$来表示圆周率。 1736年,瑞士数学家莱昂哈德·欧拉(Leonhard Euler,1707—1783)也开始用$\pi$表示圆周率。 从此,$\pi$便成了圆周率的代名词。 2 计算 古希腊数学家阿基米德从单位圆出发,先用内接正六边形求出圆周率的下界为3,再用外接正六边形并借助勾股定理求出圆周率的上界小于4。接着,他对内接正六边形和外接正六边形的边数分别加倍,将它们分别变成内接正12边形和外接正12边形,再借助勾股定理改进圆周率的下界和上界。他逐步对内接正多边形和外接正多边形的边数加倍,直到内接正96边形和外接正96边形为止。最后,他求出圆周率的下界和上界分别为223/71和22/7,并取它们的平均值3.141851为圆周率的近似值。 公元263年,中国数学家刘徽用“割圆术”计算圆周率,他先从圆内接正六边形,逐次分割一直算到圆内接正192边形,给出3.141024的圆周率近似值。他将3.14和晋武库中汉王莽时代制造的铜制体积度量衡标准嘉量斛的直径和容积检验,发现3.14这个数值还是偏小。于是继续割圆到1536边形,求出3072边形的面积,得到令自己满意的圆周率3927/1250=3.1416。 公元480年左右,南北朝时期的数学家祖冲之进一步得出精确到小数点后7位的结果,给出不足近似值3.1415926和过剩近似值3.1415927。 阿拉伯数学家卡西在15世纪初求得圆周率17位精确小数值,打破祖冲之保持近千年的纪录。 德国数学家鲁道夫·范·科伊伦(Ludolph van Ceulen)于1596年将π值算到20位小数值,后投入毕生精力,于1610年算到小数后35位数,该数值被用他的名字称为鲁道夫数。 现代科技领域使用的圆周率值,有十几位已经足够了。如果以39位精度的圆周率值,来计算可观测宇宙(observable universe)的大小,误差还不到一个原子的体积。 3 化圆为方 公元前5世纪,古希腊哲学家阿那克萨哥拉因为发现太阳是个大火球,而不是阿波罗神,犯有“亵渎神灵罪”而被判处死刑。在监狱等待执行期间,圆圆的月亮透过正方形的铁窗照进牢房,让他对方铁窗和圆月亮产生了兴趣。他不断变换观察的位置,一会儿看见圆比正方形大,一会儿看见正方形比圆大,便提出了一个尺规作图问题“求作一个正方形,使它的面积等于已知的圆面积”。起初他认为这个问题很容易解决,但直至他的好朋友经过多方营救,将其获释出狱,也一无所获。出狱后,他将该问题公布出来,数学家对这个问题很感兴趣,都想解决,可是一个也没有成功。 直至1882年,林德曼(Ferdinand von Lindemann)证明了π是超越数,即π不可能是任何整系数多项式的根。圆周率的超越性彻底否定了“化圆为方”问题的可能性,因所有尺规作图只能得出代数数。 4 拉马努金圆周率公式 印度数学家拉马努金在20世纪初发现可以将圆周率的计算转化为一个无穷级数的求和,通过逐项计算这些级数项的值,可以逐渐逼近圆周率的真实值,该公式的原理基于复分析和模形式的理论。他给出的圆周率公式为 $$ \frac{1}{\pi} = \frac{2\sqrt{2}}{99^2} \sum_{k=0}^{+\infty} \frac{(4k)!}{k!^4} \frac{26390k+1103}{396^{4k}} $$ 这个公式的收敛速度非常快,只要第一步计算就可以达到祖冲之所达到的精度,而且每增加一项就可以获得8位有效数字。如果采用此公式来计算的话,只需要计算几天时间,就可以得到鲁道夫花费一生时间才得出的结果。正因为该公式惊人的收敛速度,所以现代计算机均采用拉马努金公式及其改进公式来计算$\pi$值。 5 后记 出差回来的途中,在高铁上仔细思考了下自己的现状以及未来的发展计划,总是有些许不如意。现实与理想之间的差距,还需要对自己的性格进行慢慢的打磨。只是希望,渐渐融入生活中的我,依然可以体会到科学研究所带来的乐趣。
2024年03月14日
228 阅读
0 评论
0 点赞
2024-02-17
正月初七月球观测
在家测试了下eq5+80APO+天文盒子的组合,刚好最近很适合观测月亮,拍了几组照片,使用ASI自带的行星图片处理功能简单处理了下。 20:16 20:42 使用AS4!和PS重新处理了昨晚拍摄的月球。 20:16 20:42 注: 每月初七、初八的月相称为上弦月,因为此时可以看到一半的月亮,如同一把弓,又因“弓弦”位于上方,所以称为上弦月。
2024年02月17日
234 阅读
0 评论
0 点赞
2024-01-12
空间物理数据材料整理
0 前言 简单汇总下空间物理学领域部分数据、材料相关的FTP、网站等。 1 数据汇总 序号 简介 链接 备注 1 地磁与太阳活动指数 NOAA-FTP | GFZ-FTP | WDC 爬虫 2 ACE卫星数据 NOAA-FTP 3 GIM Map GIPP-FTP 4 GOLD数据,地球同步轨道远紫外成像仪 GOLD 5 ESA Swarm卫星数据 Swarm 6 NASA太阳观测图像 NASA 7 SEPC太阳H$\alpha$图像 SEPC 8 测高仪数据 GIRO 2 材料汇总 序号 简介 网址 备注 1 国际电联通信相关文档 ITU-R 参考材料 地磁活动指数与太阳活动指数 GFZ数据下载的一种方式分享
2024年01月12日
255 阅读
0 评论
0 点赞
2024-01-02
PTCG-5.0-白马卡组分享
0 前言 刚入坑PTCG时,开包开出了很多水系宝可梦,随手组了一套水box卡组,但强度很低。去店里打牌的时候,店员推荐可以试一试白马蕾冠王卡组。经过这段时间的磨合,对这套卡组的熟练度稍有提升,分享一下经验。 1 卡组介绍 简介:这是一套纯粹的水轴白马 为了应对连击熊,带了一张梦幻 为了降低成本,没有带咚咚鼠GX、叉字蝠V等工具人 美蓉往往会占据支援者的使用次数,因此加入了两张宝可梦捕捉器代替老大的指令,关键时刻有奇效 修改:目前为5.0版本,几天后将开启5.5版本 必要:5.5版本去掉一张博士的研究,两张无人发电厂,然后加入三张通顶雪道 参考:5.5版本泪眼蜥换为连击泪眼蜥,千面可换一张为连击千面 思路:无脑抢先手,玛俐和竞技场最好一个回合同时拍出 多多练习水轴过牌,时刻控制好手牌数量 把握好填能节奏,避免出现能量不足开不出大招,或者因为用了美蓉而没法使用老大的情况 2 后记 打牌和收集都给我带来了不少快乐,后续也将继续探索新的卡组。需要吐槽的是,3公里以内的道馆居然差不多都倒闭了,每次只能打车去8公里以外的牌店玩。
2024年01月02日
360 阅读
0 评论
0 点赞
2023-12-25
宝可梦集换式卡牌游戏(PTCG)集卡入门介绍
0 前言 最近接触到了宝可梦集换式卡牌游戏(Pokemon Trading Card Game,PTCG),尝试了两把发现上手很容易,竞技性和娱乐性也挺不错。卡牌游戏的竞技和收集我都很喜欢,开始入坑。 1 卡标、编号与稀有度 PTCG由稀有度决定卡牌的获取难度,不同的大版本具有不同的卡标, 不同的卡牌获取方式具有不同组的编号,具体如下: 稀有度:C、U、R(RR、RRR)、S、PR、A、CHR、SR、SSR、HR、UR C、U、R(RR、RRR)包含了本系列所有效果的卡牌,牌佬使用这些稀有度的卡牌最具有性价比 卡标:简体中文版目前已有A、B、C、D、E五个标准的卡牌 2023/11/06 A标和B标退环境,当前可用卡标为C、D、E 编号:同一版本的扩充包、预组、推广卡、礼盒等具有不同的编号组 扩充包一般具有本版本推出的所有卡牌,其他包有时会加一些额外的卡牌 以5.0版本“激”扩充包的第一张卡牌为例,该卡的编号为CS3bC 001/122 CS3bC 表示5.0版本的“激”扩充包 001 表示该卡牌在本系列的编号位置,如果该数字超过了后面的数字,则表示C、U、R(RR、RRR)以外的稀有卡牌 122 表示本系列卡牌的总数量 因此,出于竞技、收集以及性价比,只收集扩充包的C、U、R(RR、RRR)卡牌最为划算。 2 相关小程序或软件 集换社:卡牌收购或卖出市场,也有卡组分享。微信小程序直接搜索即可,也有独立的App 通顶雪道:具有丰富的卡组分享以及查找卡牌判例。微信小程序直接搜索即可。 对战派对:对战配对、扔硬币等功能。微信小程序直接搜索即可。
2023年12月25日
107 阅读
0 评论
1 点赞
1
2
3
...
8