- 博客(44)
- 资源 (4)
- 问答 (1)
- 收藏
- 关注

原创 同一矢量和张量在不同坐标系下的转换
坐标系定义球坐标系(R,θ,ϕ)(R,\theta,\phi)(R,θ,ϕ),直角坐标系(x,y,z)(x,y,z)(x,y,z)x=Rsinθcosϕ, y=Rsinθcosϕ, z=Rcosθx=R\sin\theta\cos\phi,\;y=R\sin\theta\cos\phi,\;z=R\cos\thetax=Rsinθcosϕ,y=Rsinθcosϕ,z=Rcosθ球坐标系和直角坐标系单位矢量转换(R^,θ^,ϕ^\hat{R},\hat{\theta},\hat{\phi
2020-07-25 21:12:09
4907

原创 C++读取文本文件时跳过注释和空行
引言有时候我们需要自定义文件内容格式,然后从文本文件中读取数据或控制信息,在程序里面进行相应的处理。例如用文本文件存储空间点的坐标,设定文件的每一行有三个数,分别表示x y z,比如0 0 01 2 32 3 3表示(0, 0, 0), (1, 2, 3), (2, 3, 3)三个点。由于文件里面的数据组织格式是自己定义的,别人不一定能看得懂,甚至过段时间之后自己都忘了。为了增...
2018-08-26 16:00:18
16876
7

原创 vtk文件格式
最近学了一下vtk文件的格式, 做一个小结。1. 第一部分,数据版本声明(不重要)2. 第二部分,标题 (不重要)3. 第三部分,文件格式声明4.第四部分,几何拓扑结构(重要)5. 第五部分,物理量(重要)6. 牛刀小试1. 第一部分,数据版本声明(不重要)这是强制的一句话,说明文件版本 # vtk DataFile Version 3.02...
2018-05-02 09:29:20
32503
25
原创 Markdown文件反向排列1级标题
文件反向排列问题描述实现方式问题描述我有一些markdown笔记是按日期排列的,以日期为标题。因为我以前用的是typora,在typora中打开文件时显示的是页面顶端,所以我写markdown的时候,会把新的日期放在最前面,# 2022-01-17...# 2022-01-16...# 2022-01-15...最近我用marktext,发现marktext中打开文件时会自动跳到页面最低下,所以我需要将上述的文件按照一级标题倒序输出:# 2022-01-15...# 2022-01
2022-04-14 17:28:53
462
原创 ${VAR:+:${VAR}}是什么意思
释义${VAR:+[word]}如果VAR没有定义或者是空的,那么该式返回空值。如果VAR变量已经定义了,而且不是空的,则该表达式返回[word]这个字符串。例子 1echo ${a:+ world}输出a没有定义,所以什么都没输出例子2a=/usr/local/binecho $aa=/usr/local/texlive/2021/bin/x86_64-linux${a:+:$a}echo $a...
2021-12-27 16:09:18
118
原创 Numpy数组赋值的时候发生了什么?python参数传递方式
python函数传递参数的方式属于引用传递,不过这种引用传递和C/C++不太一样,因为如果直接在函数中对参数进行赋值的话,不会改变外部传入的变量。这是由于直接赋值相当于令该引用绑定了新的变量,而不是直接对原来的变量进行赋值。import numpy as npdef test_fun(x): x=x+1 #直接赋值,x绑定了新的对象,也就是说执行完这条命令后的x指向了新的内存空间 def test_fun2(x): x[:]=x+1 #直接在x指向的内存空间中修改x的内容
2021-11-22 09:29:32
870
原创 字符艺术字
$ sudo apt-get install figlet$ sudo apt-get install toilet$ figlet ZYY _______ ____ __|__ /\ \ / /\ \ / / / / \ V / \ V / / /_ | | | | /____| |_| |_|
2021-11-10 14:45:18
868
原创 在conda的环境中运行python代码,却指向该环境外的$HOME/.local/lib/.../site-packages
问题描述我在一个环境中安装的是numpy1.16.2,但是运行代码的时候显示的是1.17版本,就很奇怪。按理说,能找到包就没啥问题,但是我需要用到的另外一个包不兼容numpy 1.17。原因分析In [1]: import numpy as npIn [2]: print(np.__version__)1.17.4In [3]: print(np.__path__)['/home/yyzhong/.local/lib/python3.7/site-packages/numpy']从最后
2021-06-14 10:56:31
2016
3
原创 conda命令行常用操作
conda介绍conda是一个python的包管理器,用来管理、安装、更新python的包和相关的依赖。另外,conda可以为特定任务创建独立的环境,每个环境中可以只安装需要用到的包和依赖,还可以将环境导出成yml文件,然后别人可以通过你导出的yml文件可以创建一样的环境。查看版本conda -V#或conda info更新到当前版本conda update conda查看某个命令帮助文档conda [command] --help例如conda create --he
2021-06-12 21:24:06
4479
2
原创 增量备份
参考资料在不同系统下如何进行增量备份robocopy 官方文档robocopy 网友的博客文件备份经常备份数据是一个好习惯,可以应对数据丢失、误删、系统崩溃等突发情况。但是备份数据的时候,我们经常记不清楚哪些文件是新增的或者修改的,只好每次都全部复制粘贴到硬盘里。如果要备份的文件数量很多、文件很大的话,那每次都浪费很长时间。而且复制之前,还要把上一次备份的文件删了,文件太大的情况下,连删除都得花很多时间。增量备份第一次备份的时候,完全复制数据。以后每次备份的时候,备份工具会自动比较现在的文
2021-04-25 11:47:44
654
原创 用shell脚本删除文本文件头几行注释,并交换前两列内容
用shell脚本删除文本文件头几行注释,并交换前两列内容一个完整例子一个完整例子首先假如有一个要处理的文件X,其中内容如下#y x 数据1 9 0.101 10 0.201 11 0.302 9 0.402 10 0.502 11 0.703 9 0.803 10 0.903 11 1.00文件中第一行是注释。其余各行中,第一列是y坐标,第二列是x坐
2021-03-22 13:59:07
1155
原创 C++学习资源
C++ referenceC++ Core Guidelines知乎经验,关于学习方法和开源项目的推荐https://www.zhihu.com/question/29112393/answer/511136742一些C++开源库 https://en.cppreference.com/w/cpp/links/libs暂时记录这些
2021-01-10 21:01:26
250
原创 latex中的各种数学字体宏包
Times 风格的字体宏包newtxtext,newtxmath宏包\usepackage{newtxtext,newtxmath}或mathptmx宏包\usepackage{mathptmx}%psnfss 字体宏集之一,Times 风格,较为陈旧,不推荐使用Palatino 风格的字体宏包newpxtext,newpxmath宏包\usepackage{newpxtext,newpxmath}mathpazo宏包\usepackage{mathpazo}%psnfss.
2020-10-11 14:06:23
13851
2
原创 Windows下使用mingw的g++编译的程序怎么在别人电脑运行
需要静态链接标准库,在链接过程中使用 -staticmakefile的头部可这么写CXX :=g++CXXFLAGS := -std=c++11 -O3 -fopenmp -Wfatal-errorsLINKFLAGS :=#If the operating system is windowsifeq ($(OS),Windows_NT)LINKFLAGS += -staticendif...
2020-08-15 10:21:41
937
原创 在windows中使用gcc编译器和make工具
1 下载msys2官网下载:https://www.msys2.org/从清华大学开源软件镜像站下载:https://mirrors.tuna.tsinghua.edu.cn/msys2/distrib/下载后安装2 msys2换源由于国外的源比较慢,所以要更换成国内源,比如清华大学镜像站。首先在安装目录下找到\etc\pacman.d\文件夹,然后修改以下几个文件:(1)修改\etc\pacman.d\mirrorlist.mingw32在最上面添加下面内容Server = https:/
2020-08-05 12:06:45
1312
原创 使用python matplotlib画二维图,设置坐标轴刻度和colorbar刻度ticks
通过一个实例学习怎么使用python画二维图并且调整坐标轴的刻度ticks
2020-07-15 22:07:03
20821
原创 python matplotlib自定义色标
import numpy as npimport matplotlib.pyplot as pltimport matplotlib.colors as mcolorsxi = np.linspace(-5, 5, 500)yi = np.linspace(-5, 5, 500)X,Y=np.meshgrid(xi,yi)Z=(X**2+X*Y-Y**2)#自定义色标clrmap=mcolors.LinearSegmentedColormap.from_list("mycmap", [
2020-07-15 11:27:13
7264
转载 电位移矢量法向向量连续性证明
https://blog.youkuaiyun.com/qq_41106072/article/details/104922709
2020-03-17 17:35:34
2107
1
原创 磁场强度切向分量连续性证明
证明:n×(H1−H2)=Js\mathbf{n}\times(\mathbf{H}_1-\mathbf{H}_2)=\mathbf{J}_sn×(H1−H2)=Jsn\mathbf{n}n 单位法向量H1\mathbf{H}_1H1,H2\mathbf{H}_2H2:分界面两侧的磁场Js\mathbf{J}_sJs是面电流密度如图,t\mathbf{t}t是单位切向量,n...
2020-03-17 13:42:12
6015
5
原创 Latex 参考文献格式GB/7714——2005如何将英文作者名自动大写改成普通的写法
bibtex样式文件:https://gitee.com/walkeraguo/gbt7714-bibtex-stylehttps://github.com/CTeX-org/gbt7714-bibtex-style国标格式规定作者名全部大写,比如Thomas要写成THOMAS,但是目前的大部分人都习惯普通的写法,就是Thomas这种。标准中规定的写法反而不是主流大众常用的。这里...
2020-03-14 20:53:26
18474
26
原创 win10+ubuntu19.10双系统下ubuntu引导修复
电脑更新之后,ubuntu 的引导忽然不见了。解决办法是使用一个ubuntu的启动U盘,在try ubuntu选项中进入u盘里的系统,然后在terminal安装boot-repair修复引导我一开始用的是ubuntu19.10的启动盘,中途碰到一个问题,就是安装boot-repair的时候显示无法安装,说因为没有boot-sav,The following packages have unm...
2019-11-26 10:40:06
1502
1
原创 ubuntu19.10下vscode无法格式化C++代码并且显示“Formatting failed See the output window for details“的解决办法
vscode安装了C++插件之后,按CTRL+I无法排版代码,显示错误Formatting failed. See the output window for details使用CTRL+J打开终端,并将终端窗口的Task下拉列表切换成C/C++查看output,显示error while loading shared libraries: libtinfo.so.5: cannot o...
2019-11-25 21:29:21
2910
原创 Intel 编译器更新licence
学生可以申请免费使用intel套装,但是期限只有1年,每次到期之后都要重新更新证书。使用licence manager可以方便地更新而不用重新安装。intel编译器安装的时候,都会带有一个licence manager。在linux下,默认在/opt/intel/ism文件夹里面,如果安装时不是root用户的话,那么在${HOME}/intel/ism里面。我的一般都是安装在/opt/inte...
2019-03-06 13:15:42
7596
1
原创 C++随机数产生以及通过Eigen库获得正态分布的随机矩阵
简介在C++11标准之前,一般是利用rand()函数产生一个均匀分布的,范围从0到系统相关的最大值之间的随机整数,然后再通过转换得到不同分布的随机数,这种方法比较麻烦,同时转换过程中会引入非随机性。C++11标准中,定义了随机数引擎类和随机数分布类,通过随机数引擎和随机数分布的组合,可以产生各种分布的随机数。这些类包含在头文件random中,使用前需要先包含random头文件:#includ...
2018-10-26 14:36:42
7905
3
原创 利用标准库std::sort()对Eigen库的向量进行排序
Eigen 是一个不错的线性代数库,提供了一般的矩阵和向量操作,以及诸多数值线性代数的算法。但是,我找了很久没有类似于Matlab的sort函数那样对向量进行排序函数,于是写了一个函数来实现这个功能。#include<iostream>#include<algorithm>#incl
2018-10-25 17:44:10
5562
7
原创 C++中的lambda表达式初探
简介可调用对象 可调用对象(callable object)是指可以通过()运算符传入参数然后返回运算结果的对象或表达式(此处"对象"是一般含义,不特指类的实例化对象),如果e是一个可调用对象,那么我们可以通过e(args)调用它,其中args是参数列表。在C++中的可调用对象有:函数,函数指针,重载了函数调用运算符的类,lambda表达式lambda表达式 类似于matlab中的内联函数,...
2018-10-25 16:42:29
308
原创 使用Matlab的mapping tool在球坐标系下画图
尝试了一下在Matlab下,在地图上绘制数据,但是效果没有python的basemap这个好。这里以卫星重力数据画图为例,记录一下使用过程。数据来源 :采用Eigen6C4全球重力位模型,用开源软件GrafLab,计算grg_rgr, gλg_\lambdagλ, gϕg_\phigϕ, 并画出其中的grg_rgr。该软件计算时自动加上了向心力。将计算的结果输出到total.txt文...
2018-09-29 22:21:57
5738
1
原创 Centos 7和Ubuntu安装 netcdf
netcdf4可以从源码编译,或者用yum直接安装预编译版本1 安装hdf5和zlibsudo yum install zlibsudo yum install hdf52 安装netcdf-csudo yum install netcdfsudo yum install netcdf-devel3 安装netcdf-c++sudo yum install...
2018-08-05 16:56:02
5889
2
原创 c++编译器选项笔记
记录一些常用的C++编译器选项。g++GCC是 GNU Compiler Collection 的缩写,是多种语言的编译器集合。GCC在历史上也指GNU C Compiler,这就不难理解为什么gcc也是C语言的编译命令了。GCC (GNU Compiler Collection)实际上综合了多种语言,其支持的语言包括C, C++, Objective-C, Objective-C++, ...
2018-07-31 14:05:07
3940
原创 makefile学习个人笔记
1. Rules2. Variable3. Wildcast4. String substitution5. Pattern Rules1. Rules基本形式:targets : prerequisites recipe ...targets 要生成的目标文件,或者定义的命令prerequisites targets所...
2018-07-30 19:44:01
466
原创 C++11判断inf, nan
参考链接:http://en.cppreference.com/w/cpp/numeric/math/isinf程序中碰到nan却找不到哪里出错是最让人头疼的问题之一判断inf如果是inf则返回true, 其他情况(包括nan)返回falsebool isinf( float arg );bool isinf( double arg );bool isinf( long d...
2018-05-25 02:25:48
17039
原创 Emacs编辑器基本操作笔记
Emacs编辑器基本操作笔记对基本操作做下笔记Emacs编辑器基本操作笔记按键说明屏幕浏览光标移动文本删除(剪切)与复制撤销查找替换文件缓冲区buffer多窗口在Emacs编辑器中使用中文输入法补全行号注释参考资料按键说明 C-<chr>表示按住Ctrl键和<chr&
2018-04-26 23:30:26
1538
原创 biblatex显示作者数
使用选项(options): maxnames, minnames, maxbibnames, minbibnames, maxcitenames, mincitenames. 具体方法见在biblatex文档中搜这几个关键词即可
2017-10-22 18:03:02
4324
原创 在windows下如何右键进入命令行
类似于linux右键打开Terminal,windows也有这种功能 方法:Shift+右键 在有些版本的win10下默认是打开PowerShell,想要打开命令行可以这样做: 另外,可以右键点击文件夹:https://www.howtogeek.com/howto/windows/add-the-command-prompt-to-the-windows-...
2017-09-02 20:31:05
1026
原创 本科毕设的时候用的一些word技巧,记录一下
做一次资源的搬运工,对网上搜到的一些关于word技巧的资源进行了整理(1)封面、目录和正文的页码分开设置方法https://jingyan.baidu.com/article/c33e3f48a5d153ea15cbb5a2.html(2)目录样式https://jingyan.baidu.com/article/cbcede072b5e8302f40b4dde.html(3)形如“第x页 共n页...
2017-08-31 11:03:56
858
原创 使用Mathtype自动编号和自动引用,并且转成pdf之后保持公式编号链接到公式
使用Mathtype进行公式编号特别方便,比手动加题注+调制表符好用多了。不过使用过程中发现一个问题,就是用insert Reference 功能之后,在word中双击编号即可跳转,但是转成pdf之后却无法跳转.如果强迫症非要这么弄的话,一个暴力解决方案就是通过edit field,加上超链接.具体演示:(1)首先创建一个文档,用带编号方式插入公式结果如下所示:(2)插入编号引用在公式的后面打几个...
2017-04-27 14:35:57
13684
10
原创 运行时多态性:JAVA的重写和C++中的虚函数
在继承层次结构中,父类和子类可能会定义同样的成员函数(方法)来实现同一种操作,但是由于父类比子类更抽象,所以两者的具体实现会不一样,运行时多态性能确保调用的是想要的那个方法。这在JAVA中是通过“重写”机制实现的: 父类和子类具有相同的方法,其返回值、参数类型、方法名都相同,但具体实现不同。当一个父类引用绑定子类的对象时,该方法的调用是调用所绑定的子类对象中所定义的具体实现。...
2016-12-21 14:18:22
1433
中南大学校徽可编辑Coreldraw文件
2018-06-09
在windows下,编译QT时的链接错误,VS2015+QT5.8
2017-03-19
TA创建的收藏夹 TA关注的收藏夹
TA关注的人