我想知道是否可以创建一个包含我使用的所有常用常量的文件,并能够将它们一次性加载到八度音程中。
基本上每次使用八度音程时,我最终都必须打开其中包含某些物理常数的 SI 值的文本文件,然后将它们复制并粘贴到我的文件中。我想知道是否有一种方法可以避免这项工作,只需输入“加载文件名”,就像导入数据一样,然后我的所有常量都将在一步中定义?
这是一种方法:
假设定义常量的文件是一个名为
constants.m
的脚本。例如:
avogadro = 6.02214179e23;
gravity_accel = 9.80665;
light_speed = 299792458;
将此文件放入已知目录中。例如,我会将其放在我的主目录的一个名为
local_octave
的子目录中。
在主目录中编辑(或创建,如果不存在)文件
.octaverc
,然后添加行 addpath(<path_to_known_directory>)
,但将 <path_to_known_directory>
替换为,好吧,它所说的内容。在我的电脑上,我添加了addpath("~/local_octave")
。
现在启动八度,然后输入
constants
以加载constants.m
中的定义。例如
octave:1> avogadro
error: 'avogadro' undefined near line 1 column 1
octave:1> constants
octave:2> avogadro
avogadro = 6.0221e+23
如果您使用大量物理常数,您可能有兴趣使用具有 physical_constant 功能的 miscellaneous package。目前,该函数根据 NIST 数据库加载物理常数。
如果发现自己多次使用它,您可以在
.octaverc
文件中包含以下内容:
pkg load miscellaneous;
avogadro = physical_constant ("Avogadro constant");
atom_mass = physical_constant ("atomic mass constant");
pkg unload miscellaneous;
要获取该函数中所有常量的列表,只需运行
physical_constant()
。
从 MATLAB File Exchange 查看物理常数。它具有来自化学和物理的近 150 个基本常数(带有元数据),并且经过专门设计,使用起来超级简单。