在Ubuntu22.04里安装脉冲星信号处理工具----Pulsar软件包

在Ubuntu22.04安装Pulsar软件包

1.ubuntu 22.04 安装gcc-7、g+±7(用来编译后续软件)

1.1 添加镜像:

打开源镜像文件

sudo vim /etc/apt/sources.list

在最后一行添加如下内容:

deb [arch=amd64] http://archive.ubuntu.com/ubuntu focal main universe

进入到vim按i可以进行编辑,编辑好了以后先按ese键,然后按:wq保存退出

1.2 更新镜像

sudo apt-get update

1.3指定版本安装

sudo apt-get -y install gcc-7 g++-7

2.开始安装,依次执行下面的每一条命令(附命令解释)

sudo apt-get update --fix-missing
sudo apt-get dist-upgrade
sudo apt install -y autotools-dev autoconf libtool make g++-7 gcc-7 gfortran-7 csh libfftw3-dev pgplot5 libcfitsio-dev
sudo apt-get update --fix-missing
sudo apt install -y automake git python3.10 python3-pip swig
sudo apt-get install libx11-dev libpng-dev libglib2.0-dev
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 70
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 70
sudo update-alternatives --install /usr/bin/gcov gcov /usr/bin/gcov-7 70
sudo ln -s /usr/bin/gfortran-7 /usr/bin/gfortran

这段代码是一系列Ubuntu命令,用于更新系统、安装所需软件包和更新默认编译器版本。具体而言,它执行以下操作:
sudo apt-get update --fix-missing:更新Ubuntu软件源,如果有丢失的软件包,则修复它们。
sudo apt-get dist-upgrade:升级已安装软件包及其依赖关系到最新版本。
sudo apt install -y autotools-dev autoconf libtool make g+±7 gcc-7 gfortran-7 csh libfftw3-dev pgplot5 libcfitsio-dev:安装开发工具和库,包括GCC编译器及其Fortran支持、自动化工具、FFTW库、PGPLOT绘图库和CFITSIO库。
sudo apt install -y automake git python3.10 python3-pip swig:安装其他工具和库,包括自动化工具、Git、Python和SWIG。
sudo apt-get install libx11-dev libpng-dev libglib2.0-dev:安装X11、PNG和GLib库的开发文件。
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 70:将gcc-7设置为默认的C编译器。
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g+±7 70:将g+±7设置为默认的C++编译器。
sudo update-alternatives --install /usr/bin/gcov gcov /usr/bin/gcov-7 70:将gcov-7设置为默认的代码覆盖率工具。
sudo ln -s /usr/bin/gfortran-7 /usr/bin/gfortran:创建一个指向gfortran-7的符号链接,以便以后可以使用“gfortran”来调用它。

export PATH=$PATH:$HOME/.local/bin
pip install -i https://mirrors.aliyun.com/pypi/simple/ numpy scipy matplotlib ipython jupyter pandas sympy nose
export curPath=$HOME
export PSRHOME=$curPath/Pulsar
mkdir $PSRHOME
cd $PSRHOME
wget https://www.imcce.fr/content/medias/recherche/equipes/asd/calceph/calceph-3.5.1.tar.gz
tar -xvf calceph-3.5.1.tar.gz
cd $PSRHOME/calceph-3.5.1
./configure --prefix=/usr/local
make -j 8
sudo make install

这段代码主要是安装和配置相关的软件和环境变量。解释如下:
export PATH= P A T H : PATH: PATH:HOME/.local/bin:将 $HOME/.local/bin 目录添加到 P A T H 环境变量中,以便能够在终端中直接执行 p i p 命令。 p i p i n s t a l l − i h t t p s : / / m i r r o r s . a l i y u n . c o m / p y p i / s i m p l e / n u m p y s c i p y m a t p l o t l i b i p y t h o n j u p y t e r p a n d a s s y m p y n o s e :使用 p i p 安装 n u m p y 、 s c i p y 、 m a t p l o t l i b 、 i p y t h o n 、 j u p y t e r 、 p a n d a s 、 s y m p y 和 n o s e 等 P y t h o n 库。 e x p o r t c u r P a t h = PATH 环境变量中,以便能够在终端中直接执行 pip 命令。 pip install -i https://mirrors.aliyun.com/pypi/simple/ numpy scipy matplotlib ipython jupyter pandas sympy nose:使用 pip 安装 numpy、scipy、matplotlib、ipython、jupyter、pandas、sympy 和 nose 等 Python 库。 export curPath= PATH环境变量中,以便能够在终端中直接执行pip命令。pipinstallihttps://mirrors.aliyun.com/pypi/simple/numpyscipymatplotlibipythonjupyterpandassympynose:使用pip安装numpyscipymatplotlibipythonjupyterpandassympynosePython库。exportcurPath=HOME:将 H O M E 路径保存在 c u r P a t h 变量中。 e x p o r t P S R H O M E = HOME 路径保存在 curPath 变量中。 export PSRHOME= HOME路径保存在curPath变量中。exportPSRHOME=curPath/Pulsar:将 $curPath/Pulsar 目录保存在 PSRHOME 变量中。
mkdir $PSRHOME:创建 $PSRHOME 目录。
cd $PSRHOME:进入 $PSRHOME 目录。
wget https://www.imcce.fr/content/medias/recherche/equipes/asd/calceph/calceph-3.5.1.tar.gz:从指定 URL 下载 calceph-3.5.1.tar.gz 文件。//执行这句的时候可能很慢甚至不成功,可能因为这个网站是外网,需要重复执行直到运行成功
tar -xvf calceph-3.5.1.tar.gz:解压 calceph-3.5.1.tar.gz 文件。

calceph-3.5.1.tar.gz 是一种天体轨道计算软件,用于计算天体之间的相对位置和速度。它能够读取多种天体轨道文件格式,包括JPL DE系列文件、SPICE文件、INPOP等,并能够生成各种输出格式。在天文学研究中,calceph常被用于模拟天体的运动、构建天体轨道模型以及计算天体的位置和速度等。

cd $PSRHOME/calceph-3.5.1:进入 calceph-3.5.1 目录。
./configure --prefix=/usr/local:运行 configure 脚本,指定安装目录为 /usr/local。
make -j 8:编译源代码,使用 8 个线程进行编译。
sudo make install:安装编译后的二进制文件。由于需要写入 /usr/local 目录,需要使用 sudo 命令以管理员身份运行。
总之,这段代码的作用是安装和配置一些必要的软件和环境,为后续的安装和使用做好准备。

export TEMPO=$PSRHOME/tempo
cd $PSRHOME
git clone https://github.com/nanograv/tempo.git
cd $PSRHOME/tempo
./prepare
./configure --prefix=/usr/local
make -j 8
sudo make install

这部分代码是下载和安装TEMPO软件。TEMPO是一个用于射电脉冲星观测数据处理的软件包。它包括对观测数据进行建模和拟合的工具,以及计算射电脉冲星的测时模型的工具。以下是代码的解释:
export TEMPO= P S R H O M E / t e m p o :设置 T E M P O 的安装路径为 PSRHOME/tempo:设置TEMPO的安装路径为 PSRHOME/tempo:设置TEMPO的安装路径为PSRHOME/tempo。
cd P S R H O M E :进入 PSRHOME:进入 PSRHOME:进入PSRHOME目录。
git clone https://github.com/nanograv/tempo.git:从GitHub上克隆TEMPO的源代码。//执行这句的时候可能很慢甚至不成功,可能因为这个网站是外网,需要重复执行知道运行成功
cd $PSRHOME/tempo:进入TEMPO的源代码目录。
./prepare:准备TEMPO的编译环境。
./configure --prefix=/usr/local:配置TEMPO的安装路径为/usr/local。
make -j 8:使用8个线程进行编译。
sudo make install:安装TEMPO。sudo用于提升用户权限。

export PATH=$PATH:$PSRHOME/bin
export PGPLOT_DIR=/usr/lib/pgplot5
export PGPLOT_FONT=$PGPLOT_DIR/grfont.dat
export TEMPO2=$PSRHOME/tempo2
export PSRCAT_FILE=$PSRHOME/psrcat/psrcat.db
export PYTHONPATH=$PSRHOME/lib/python3.10/site-packages:$PYTHONPATH
cd $PSRHOME
git clone git://git.code.sf.net/p/psrchive/code psrchive

这段代码是为了设置环境变量以及克隆代码库psrchive。具体来说:
export PATH= P A T H : PATH: PATH:PSRHOME/bin: 将 $PSRHOME/bin 目录添加到系统环境变量 P A T H 中,以便在终端中直接执行 p s r c h i v e 相关命令。 e x p o r t P G P L O T D I R = / u s r / l i b / p g p l o t 5 : 设置 P G P L O T 库所在的目录。 e x p o r t P G P L O T F O N T = PATH 中,以便在终端中直接执行 psrchive 相关命令。 export PGPLOT_DIR=/usr/lib/pgplot5: 设置 PGPLOT 库所在的目录。 export PGPLOT_FONT= PATH中,以便在终端中直接执行psrchive相关命令。exportPGPLOTDIR=/usr/lib/pgplot5:设置PGPLOT库所在的目录。exportPGPLOTFONT=PGPLOT_DIR/grfont.dat: 设置 PGPLOT 库所需的字体文件所在的目录。
export TEMPO2=$PSRHOME/tempo2: 设置 TEMPO2 环境变量,指向 P S R H O M E 目录下的 t e m p o 2 子目录,以便在使用 p s r c h i v e 库时使用其中的工具。 e x p o r t P S R C A T F I L E = PSRHOME 目录下的 tempo2 子目录,以便在使用 psrchive 库时使用其中的工具。 export PSRCAT_FILE= PSRHOME目录下的tempo2子目录,以便在使用psrchive库时使用其中的工具。exportPSRCATFILE=PSRHOME/psrcat/psrcat.db: 设置 psrcat 数据库文件所在的目录。
export PYTHONPATH= P S R H O M E / l i b / p y t h o n 3.10 / s i t e − p a c k a g e s : PSRHOME/lib/python3.10/site-packages: PSRHOME/lib/python3.10/sitepackages:PYTHONPATH: 将 $PSRHOME/lib/python3.10/site-packages 目录添加到系统环境变量 $PYTHONPATH 中,以便在使用 psrchive 库时能够正确加载其中的 Python 模块。
cd $PSRHOME: 进入 $PSRHOME 目录。
git clone git://git.code.sf.net/p/psrchive/code psrchive: 从 git://git.code.sf.net/p/psrchive/code 代码库中克隆 psrchive 代码库到当前目录。//执行这句的时候可能很慢甚至不成功,可能因为这个网站是外网,需要重复执行直到运行成功

cd psrchive
./bootstrap
./configure --enable-shared
sudo ./packages/tempo2.csh
sudo ./packages/psrcat.csh
./configure --enable-shared
make
make check
sudo make install

这段代码是在进入psrchive目录后,进行编译和安装的一系列命令。
./bootstrap 用于生成配置文件和编译文件,将会根据环境检查是否有所需的软件包和库,生成Makefile等文件。
./configure --enable-shared 用于配置环境,指定需要启用的选项,如启用动态库,将会生成适合本机的编译配置。
sudo ./packages/tempo2.csh 运行安装tempo2的脚本文件,使用sudo以管理员权限运行,将tempo2安装到系统中。
sudo ./packages/psrcat.csh 运行安装psrcat的脚本文件,使用sudo以管理员权限运行,将psrcat安装到系统中。
make 用于编译代码,将源代码编译成可执行文件。
make check 用于对编译好的代码进行测试,确保代码的正确性。
sudo make install 用于将编译好的代码安装到系统中,使得该程序可以在系统的任何地方被调用。
在这一系列命令执行完毕之后,psrchive程序就已经被成功编译和安装到系统中,可以被调用使用了。

cd $PSRHOME/src/tempo2
sudo make plugins
sudo make plugins-install
cd $PSRHOME/psrchive
./configure --enable-shared
make
make check
sudo make install

这些命令的作用是:
cd $PSRHOME/src/tempo2: 进入tempo2源代码目录
sudo make plugins: 编译tempo2的插件
sudo make plugins-install: 安装tempo2的插件
cd $PSRHOME/psrchive: 进入psrchive源代码目录
./configure --enable-shared: 配置psrchive,开启共享库支持
make: 编译psrchive
make check: 运行psrchive的测试用例
sudo make install: 安装psrchive
这些命令的作用是编译和安装软件,其中包括安装psrchive和tempo2的插件。make check命令运行测试用例,以确保编译和安装过程的正确性。

cd $PSRHOME
export CFLAGS=-I$TEMPO2/include
export CXXFLAGS=$CFLAGS
export LDFLAGS=-L$TEMPO2/lib
git clone https://github.com/SixByNine/sigproc.git
cd $PSRHOME/sigproc
export FFF=-ffixed-line-length-none
./bootstrap
./configure --prefix=/usr/local
make -j 8
sudo make install

这段代码主要是安装sigproc软件,具体步骤如下:
进入pulsar目录:cd P S R H O M E 设置环境变量 C F L A G S 、 C X X F L A G S 和 L D F L A G S 分别为 T E M P O 2 的 i n c l u d e 目录和 l i b 目录: e x p o r t C F L A G S = − I PSRHOME 设置环境变量CFLAGS、CXXFLAGS和LDFLAGS分别为TEMPO2的include目录和lib目录:export CFLAGS=-I PSRHOME设置环境变量CFLAGSCXXFLAGSLDFLAGS分别为TEMPO2include目录和lib目录:exportCFLAGS=ITEMPO2/include,export CXXFLAGS= C F L A G S , e x p o r t L D F L A G S = − L CFLAGS,export LDFLAGS=-L CFLAGSexportLDFLAGS=LTEMPO2/lib
下载sigproc软件源代码:git clone https://github.com/SixByNine/sigproc.git //执行这句的时候可能很慢甚至不成功,可能因为这个网站是外网,需要重复执行直到运行成功
进入sigproc目录:cd $PSRHOME/sigproc
设置环境变量FFF:export FFF=-ffixed-line-length-none
运行./bootstrap脚本
运行./configure脚本,指定安装目录为/usr/local
运行make命令编译源代码
运行sudo make install命令安装sigproc

export PRESTO=$PSRHOME/presto
export PGPLOT_DIR=/usr/lib/pgplot5
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PRESTO/lib
export PATH=$PATH:$PRESTO/bin
export PYTHONPATH=$PYTHONPATH:$PRESTO/lib/python
cd $PSRHOME
git clone https://github.com/scottransom/presto.git
cd $PRESTO/src
sudo cp $PRESTO/lib/*.* /usr/local/lib
make -j 8

这段代码是在设置环境变量和安装 PRESTO 软件包。
具体来说:
export PRESTO=$PSRHOME/presto 设置环境变量 PRESTO 为 $PSRHOME/presto,其中 P S R H O M E 是之前设置的变量,指代 p u l s a r 软件安装的主目录。 e x p o r t P G P L O T D I R = / u s r / l i b / p g p l o t 5 设置环境变量 P G P L O T D I R 为 / u s r / l i b / p g p l o t 5 ,该变量指示 P R E S T O 使用的 P G P L O T 库的安装路径。 e x p o r t L D L I B R A R Y P A T H = PSRHOME 是之前设置的变量,指代 pulsar 软件安装的主目录。 export PGPLOT_DIR=/usr/lib/pgplot5 设置环境变量 PGPLOT_DIR 为 /usr/lib/pgplot5,该变量指示 PRESTO 使用的 PGPLOT 库的安装路径。 export LD_LIBRARY_PATH= PSRHOME是之前设置的变量,指代pulsar软件安装的主目录。exportPGPLOTDIR=/usr/lib/pgplot5设置环境变量PGPLOTDIR/usr/lib/pgplot5,该变量指示PRESTO使用的PGPLOT库的安装路径。exportLDLIBRARYPATH=LD_LIBRARY_PATH: P R E S T O / l i b 将 P R E S T O / l i b 目录添加到动态链接库搜索路径 L D L I B R A R Y P A T H 中,以便动态链接器能够在运行 P R E S T O 时找到必要的库。 e x p o r t P A T H = PRESTO/lib 将 PRESTO/lib 目录添加到动态链接库搜索路径 LD_LIBRARY_PATH 中,以便动态链接器能够在运行 PRESTO 时找到必要的库。 export PATH= PRESTO/libPRESTO/lib目录添加到动态链接库搜索路径LDLIBRARYPATH中,以便动态链接器能够在运行PRESTO时找到必要的库。exportPATH=PATH: P R E S T O / b i n 将 P R E S T O / b i n 目录添加到环境变量 P A T H 中,以便在终端中直接运行 P R E S T O 中的可执行文件。 e x p o r t P Y T H O N P A T H = PRESTO/bin 将 PRESTO/bin 目录添加到环境变量 PATH 中,以便在终端中直接运行 PRESTO 中的可执行文件。 export PYTHONPATH= PRESTO/binPRESTO/bin目录添加到环境变量PATH中,以便在终端中直接运行PRESTO中的可执行文件。exportPYTHONPATH=PYTHONPATH:$PRESTO/lib/python 将 PRESTO/lib/python 目录添加到环境变量 PYTHONPATH 中,以便在 Python 中导入 PRESTO 模块。
cd $PSRHOME 进入 pulsar 软件安装的主目录。
git clone https://github.com/scottransom/presto.git 从 Github 克隆 PRESTO 代码。//执行这句的时候可能很慢甚至不成功,可能因为这个网站是外网,需要重复执行直到运行成功
cd $PRESTO/src 进入 PRESTO 源代码目录。
sudo cp $PRESTO/lib/. /usr/local/lib 将 PRESTO/lib 目录下的所有库文件复制到 /usr/local/lib 目录中。
make -j 8 编译 PRESTO。-j 8 指示 make 命令使用 8 个线程来加速编译。

export DSPSR=$PSRHOME/dspsr
export PATH=${PATH}:$DSPSR/bin
cd $PSRHOME
git clone https://git.code.sf.net/p/dspsr/code dspsr
cd $PSRHOME/dspsr
cp $HOME/backends.list $DSPSR/
./bootstrap
./configure --prefix=/usr/local
make
sudo make install

这段代码是在设置环境变量和安装 PRESTO 软件包。
具体来说:
export PRESTO=$PSRHOME/presto 设置环境变量 PRESTO 为 $PSRHOME/presto,其中 P S R H O M E 是之前设置的变量,指代 p u l s a r 软件安装的主目录。 e x p o r t P G P L O T D I R = / u s r / l i b / p g p l o t 5 设置环境变量 P G P L O T D I R 为 / u s r / l i b / p g p l o t 5 ,该变量指示 P R E S T O 使用的 P G P L O T 库的安装路径。 e x p o r t L D L I B R A R Y P A T H = PSRHOME 是之前设置的变量,指代 pulsar 软件安装的主目录。 export PGPLOT_DIR=/usr/lib/pgplot5 设置环境变量 PGPLOT_DIR 为 /usr/lib/pgplot5,该变量指示 PRESTO 使用的 PGPLOT 库的安装路径。 export LD_LIBRARY_PATH= PSRHOME是之前设置的变量,指代pulsar软件安装的主目录。exportPGPLOTDIR=/usr/lib/pgplot5设置环境变量PGPLOTDIR/usr/lib/pgplot5,该变量指示PRESTO使用的PGPLOT库的安装路径。exportLDLIBRARYPATH=LD_LIBRARY_PATH: P R E S T O / l i b 将 P R E S T O / l i b 目录添加到动态链接库搜索路径 L D L I B R A R Y P A T H 中,以便动态链接器能够在运行 P R E S T O 时找到必要的库。 e x p o r t P A T H = PRESTO/lib 将 PRESTO/lib 目录添加到动态链接库搜索路径 LD_LIBRARY_PATH 中,以便动态链接器能够在运行 PRESTO 时找到必要的库。 export PATH= PRESTO/libPRESTO/lib目录添加到动态链接库搜索路径LDLIBRARYPATH中,以便动态链接器能够在运行PRESTO时找到必要的库。exportPATH=PATH: P R E S T O / b i n 将 P R E S T O / b i n 目录添加到环境变量 P A T H 中,以便在终端中直接运行 P R E S T O 中的可执行文件。 e x p o r t P Y T H O N P A T H = PRESTO/bin 将 PRESTO/bin 目录添加到环境变量 PATH 中,以便在终端中直接运行 PRESTO 中的可执行文件。 export PYTHONPATH= PRESTO/binPRESTO/bin目录添加到环境变量PATH中,以便在终端中直接运行PRESTO中的可执行文件。exportPYTHONPATH=PYTHONPATH:$PRESTO/lib/python 将 PRESTO/lib/python 目录添加到环境变量 PYTHONPATH 中,以便在 Python 中导入 PRESTO 模块。
cd $PSRHOME 进入 pulsar 软件安装的主目录。
git clone https://github.com/scottransom/presto.git 从 Github 克隆 PRESTO 代码。//执行这句的时候可能很慢甚至不成功,可能因为这个网站是外网,需要重复执行直到运行成功
cd $PRESTO/src 进入 PRESTO 源代码目录。
sudo cp $PRESTO/lib/. /usr/local/lib 将 PRESTO/lib 目录下的所有库文件复制到 /usr/local/lib 目录中。
make -j 8 编译 PRESTO。-j 8 指示 make 命令使用 8 个线程来加速编译。

3.验证是否安装成功

进入Pulsar目录:

cd Pulsar

运行python环境:

python3
或者
python

在里面输入:

import psrchive

如果没有报错而且结果如下图说明安装成功了:

在这里插入图片描述

4.遇到的错误

第一次是编译测试没通过的错误:执行到第一次make check报的错

在这里插入图片描述

这个是chatgpt给的回复:

根据测试结果,test_TextInterface测试失败了,因为它的退出状态是255。根据Python unittest模块的文档,退出状态255通常表示测试执行期间出现了错误。根据您提供的代码,可能的原因是TextInterface类的To方法没有正确实现。

具体来说,这里的测试代码涉及Value类、AttributeGet类和TextInterface类,Value类表示一个实数,AttributeGet类是一个抽象基类,TextInterface类可以将一个实数转换为字符串。在这个测试用例中,我们先创建一个Value对象,然后创建一个AttributeGet对象,将其值设置为Value对象的值,最后创建一个TextInterface对象并调用其To方法,将AttributeGet对象的值转换为字符串并返回。然后我们检查返回的字符串是否符合预期。

根据您提供的代码,问题可能出现在TextInterface类的To方法中。具体来说,这个方法的实现似乎只是简单地返回输入值的字符串表示,并没有进行任何格式化。因此,如果AttributeGet对象的值是3.456,那么To方法将返回字符串"3.456"。但是,测试代码预期的结果是"3.46",这是因为它使用了Python的round函数将值舍入到两位小数。由于To方法没有进行任何舍入,因此测试失败。

所以我觉得这个错误很可能是由于精度取舍问题导致的。

然后我点进去图片里这个Util/untils/test-suite.log看,它叫我把这个错误报告发送到开发者那里去,然后我抱着试试的心态给大佬发了邮件,想不到他居然回复了。

在这里插入图片描述

大佬说他已经修复了这个错误,叫我再试试。我就把Pulsar文件夹删了重新从第一步开始执行,结果这次在make check的前一步在make就出错了:

在这里插入图片描述

然后又给大佬发了邮件,他给我的回复如下:

在这里插入图片描述

我翻译了一下他的意思大概是:

这些字符串错误相当深地隐藏在一些相对晦涩的C++模板代码中。我在上次提交代码时粗心大意,没有尝试重新编译psrchive源代码的全部内容。也就是说,我可以轻松地重现你报告的新错误。

我已经修复了这个新的错误,并已成功重新编译了所有内容。

你能否在你那边再试一次?

从大佬的回复中可以看出这次的错误主要是因为他提交代码时粗心不小心导致的,所以我又把Pulsar文件夹删了重新来了一遍,这次除了有时候因为网络问题而导致的中断其他都很顺利的执行到了最后一步。

5.总结

这个软件我大概安装了两周多,尝试了大概有10多次了,主要花费的时间还是中间的执行步骤有些很慢,还有最崩溃的是网络问题,因为那些命令涉及到的网站基本都是外网所以有时候下载的很慢很慢(很难想象都5G时代了,下载东西的速度还会到几kb/s),但是有些时候也还是挺快的,这我到现在也没弄清楚到底是为什么。还有就是在此表示一下对大佬由衷的感谢,我只是抱着试试的心态发给他的邮件,形式也很随意,虽然第一封邮件是隔了好几天才回复我,但是能和大佬有一次交流的机会我觉得已经很开心了,要是没有他的帮助我觉得可能到现在都解决不了那个问题,我觉得这才是一个真正科学家应该具备的精神,无论对方是谁都可以交流讨论。反观国内的情况,对于好多论文中的问题,按照他留那个联系方式发邮件给他大概率是收不到回复的(反正我目前发过两次,已经几个月了都没有回复)。希望这篇文章对研究射频干扰的同行们有些帮助吧,我自己也才是个研一的学生,刚开始这个领域,有问题欢迎大家随时交流讨论。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/69959.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

6-2. 实战项目:足球运动员分析

足球运动员分析 1. 项目背景 当前,足球运动是最受欢迎的运动之一(也可以说没有之一)。 我们的任务,就是在众多的足球运动员中,发现统计一些关于足球运动员的共性,或某些潜在的规律。也是好玩。 2. 数据…

【案例】足球运动员分析

文章目录 足球运动员分析案例需求数据集程序实现1. 导入相关库2. 加载相关数据集3. 数据探索与清洗3.1. 缺失值处理3.2. 异常值处理处理3.3. 重复值处理 4. 身高与体重处理5. 运动员身高,体重,评分信息分布6. 左脚与右脚选手在数量上是否存在偏差7. 从球…

足球运动员分析

数据集 数据集 背景: 我们关注足球运动员的如下内容: 足球运动员是否受出生日期的影响?左撇子适合踢足球吗?足球运动员的号码是否与位置有关?足球运动员的年龄与能力具有怎样的关联? 哪些技能会对足球运…

解析波士顿动力Handle机器人背后的技术(附PPT+视频)

[转] http://www.leiphone.com/news/201703/URrR8CG2tmtghNDl.html 导语:Boston Dynamics 在机器人动力方面堪称翘楚,其由双足或多足机器人组成的机器人天团总是时不时能给我们带来惊喜。上周,Boston Dynamics 又发布了一段视频,并…

解析波士顿Handle机器人背后的技术

在斗鱼直播平台,浙大李超博士的公开课分享了关于handle的技术细节,解析波士顿Handle机器人背后的技术,观察敏锐,思路清晰。 内容介绍了波士顿动力公司的历代4足和2足机器人的开发历史。并结合李超的专业重点讲解了腿的细节。 李…

开源四足机器人 附设计图及代码

斯坦福学生机器人俱乐部(Stanford Student Robotics club)Extreme Mobility 团队最近迎来了一名新成员——一个名为 Stanford Doggo 的四足机器人。这个机器人能跳 1 米多高,还能表演后空翻。与其他四足机器人动辄上万美元的成本不同&#xf…

ROS2机器人笔记21-03-14

ROS会议和活动: 如果对机器人技术感兴趣,但是看不到任何适合兴趣的项目,那么可能还需要考虑将其应用于同级组织中,例如OpenCV和MoveIt! 核心是各种应用和ROS2的逐渐普及 GPU运算越来越主流,Nvidia Jetson…

波斯顿动力机器人“特效专辑”

关注星标公众号,不错过精彩内容 作者 | strongerHuang 公众号 | strongerHuang 波斯顿动力机器人的视频为啥那么火? 首先,他们机器人本身很牛逼,能完成各种高难度动作,拍出来的视频自然很多人关注。 其次,有…

清华2019最新AI发展报告出炉!400页干货,13大领域一文看懂

2019-12-08 20:36:36 当前,人工智能正处在爆发期。我国在人工智能领域的科学技术研究和产业发展起步稍晚,但在最近十余年的时间里抓住了机遇,进入了快速发展阶段。在这个过程中, 技术突破和创造性高端人才对人工智能的发展起着至…

ROS机器人培训基地和暑期学校证书样例

初级工程师证书(非高清): 初级师资证书(非高清): 为了鼓励学生朋友参与ROS机器人暑期学校,我也参加了并完成了所有任务,证书样本: 2021年(非高清&#xff09…

专业的机器人资讯与太空中的ROS

参考:www.therobotreport.com Open Robotics正在与由 Jeff Bezos 创立的亚轨道航天公司Blue Origin和 NASA 合作开发 Space ROS。Space ROS 是 ROS 2 的一个版本,旨在满足航空航天软件在用于任务之前必须满足的验证和确认要求。 机器人操作系统 (ROS) 已…

机器人介绍、应用、前景

机器人介绍、应用、前景 1 介绍1.1 定义1.2 作用1.3 发展历程1.4 分类1.5 三大顾虑1.6 前景 2 种类工业机器臂协作机械臂工业移动机器人复合机器人扫地机器人服务机器人机器狗人形机器人无人机 3 技术3.1 机器人学分类3.2 功能分类3.2.1 感知3.2.2 决策3.2.3 执行AGV减震机构减…

波士顿动力机器人解锁跑酷新技能,凭借感知驱动技术适应技能

编译 | 禾木木 出品 | AI科技大本营(ID:rgznai100) 波士顿动力开发负责人为大家解读了 Atlas 能够快速越过具有一定倾斜度的障碍物、执行快速转身、跳跃等动作背后的技术。 Atlas 机器人首次完成了复杂的障碍赛。 复杂的障碍赛在波士顿动力公司总部二楼…

算法高级(46)-波士顿动力机器人ATLAS

一、引言 如果说阿尔法狗是对人类智力的碾压,那么,波士顿动力研发的机器人,正在挑战的是仿生学。 波士顿动力公司(Boston Dynamics)一致在专注于机器人的研发,每一次波士顿动力放出视频都会引起网友的围观…

自研机器人控制系统,挑战波士顿动力机器人

自研机器人协调控制系统,挑战部分波士顿动力实验效果 一.系统简介功能使用实验 二.详细实验解读波士顿动力近似试验1:空间定点自定义试验1:太极云手自定义试验2:醉鬼自定义试验3:边转边走自定义试验4:平移自…

客户案例|保险行业借助智能外呼充分结合业务需求和实际应用场景快速筛选客户

保险行业整体仍然延续稳步发展势头,保险产品结构不断优化;人身险行业原保费收入增速有所放缓;受宏观经济不断恢复企稳及非车险政策支持推动影响下,财产险行业保费收入增速有所加快;人身险及财产险公司健康险类产品均呈…

二次元界福音:MakeGirlsMoe创建动漫人物

开源的动漫角色图片生成工具,支持:选择发色、发型、眼睛、皮肤、微笑、风格等等特征生成二次元图片。可自定义生成可爱的二次元头像,二次元界福音。 GitHub网址:https://github.com/makegirlsmoe/makegirlsmoe_web 在线体验&…

3行代码 为你的网站博客添加萌萌哒可爱二次元女动漫玩偶人物(看板娘)

看板娘一词源自日语“看板娘(かんばんむすめ)”。其中的“看板”指的是店面招牌,或者是为了宣传、打广告而制作的宣传牌。“看板娘”也就是店面的招牌姑娘,亦即能够提升店面人气和顾客流量的女服务生、女店员等。也就是说,看板娘本身就是一块…

AI绘图打开二次元世界

一个AI绘图插件,免部署,直接导入可用 支持英文tag,支持中文不稳定测试中(中文需要描述准确不然可能翻译错误,比如死库水会被翻译成Die reservoir water,很明显这个翻译和原词出入很大,用泳装会比较准确&…

acg-faka--功能丰富的发卡二次元商城源码

源码简介: 支付系统,拥有强悍的插件扩展能力,现目今已经支持全网任意平台,任意支付渠道。云更新,如果系统升级新版本,你无需进行繁琐操作,只需要在你的店铺后台就可以无缝完成升级。商品销售&am…