英语网站源码,为什么不用h5做网站,html静态网页制作成品,wordpress换主机前言ENVI IDL#xff08;交互式数据语言#xff09;是一个通用的科学计算包#xff0c;它提供了一套数学函数、数据分析工具#xff0c;以及一些科学可视化和动画工具。IDL 是 ENVI 图像处理和分析软件的基础#xff0c;可用于编写脚本并自动执行许多使用 ENVI 图形用户界…前言ENVI IDL交互式数据语言是一个通用的科学计算包它提供了一套数学函数、数据分析工具以及一些科学可视化和动画工具。IDL 是 ENVI 图像处理和分析软件的基础可用于编写脚本并自动执行许多使用 ENVI 图形用户界面执行的操作。IDL 可以交互使用或以“批处理”模式使用。 有一个用于交互使用的高效命令解释器以及开发可以解释或编译的脚本的选项。 还有一个图形化的 IDL 开发环境。1、打开ENVI 5.XIDL 8.5 64-bit尝试在 IDL 提示符下键入以下四个命令a 5
print, a
x randomu(999)
print, x观察“print, a”语句和“x randomu(999)”语句之间的语法差异。IDL 区分不返回值且调用语法中没有括号的过程例如 print以及 函数例如 randomu在调用时确实使用括号并且总是返回一个值。现在试试这些命令a [55, 38, -17.333]
b indgen(3)
print, a , a
print, b , b
print, a*b , a*b观察数组变量看起来就像标量变量。 IDL 设计用于处理多维数组许多运算符以“自然方式”处理数组。 我们将在本教程的后面部分看到更多相关信息。要重复命令您可以使用箭头键上下浏览之前的命令。 当您到达要重复的命令时按回车键。输入问号 ? 寻求在线帮助。 这将弹出一个单独的 GUI用于访问 IDL 用户信息。 请注意在 IDL 提示符下键入“help”会做一些完全不同的事情——它会为您提供所有当前变量和函数的列表。一个分号“;” 表示一行的其余部分由注释组成。 行尾的美元符号“$”表示行继续“”符号将命令组合在一起。 我们将在下面有关运行模式的部分中看到更多内容。要退出 IDL请键入exit对于执行管理您应该注意一些特殊字符Ctl-C: 如果可能停止运行失控程序而不杀死 IDLCtl-Z: 暂停 IDLCtl-: 停止中止正在运行的程序可能会使变量和文件处于不确定状态Ctl-D: 停止 IDL例如退出2、程序和批处理模式IDL 可以通过交互式输入命令、交互式创建程序、从命令行读取程序来运行也可以以批处理模式运行。当您在命令行中键入命令时当您按下回车键时每一行都会立即执行。 可以在行尾使用美元符号“$”转移到下一行。1批处理模式以批处理模式运行是类似的除了命令来自文件。 在文件名前面加上符号“”。 pro 子目录中的文件 batch_two_prints 包含四行a 5
print, a
a [2, 3]
print, a在 IDL 提示符下键入以下内容pro/batch_two_prints2程序当以交互方式键入并以批处理模式运行时每一行都会立即执行。 您可以编写可以多次存储和运行的程序也可以编写可以从程序和其他函数中调用的函数。要从命令行创建程序请使用执行命令 .RUN输入您的命令然后键入 END。 这时候你的程序就会被编译执行ENVI .RUN
- a 25
- b 3
- c a * b
- print, a, b, c
- END
% Compiled module: $MAIN$.25 3 75如果文件中有相同的命令集则可以执行相同的程序.RUN pro/simple_main.pro如果您不希望程序立即执行请使用 .COMPILE 而不是 .RUN。 然后定义的变量和过程将可用。上面的例子让它看起来和批处理模式运行的程序很相似。 考虑以下阶乘函数的简单计算。 作为批处理文件pro/batch_loop 看起来像f 1
for k1,6 do begin $f k * f $print, f $
end命令用“”分隔行必须连续。 整个循环基本上必须在一行上因为每一行都会在遇到时立即执行。 想象一下嵌套循环里面有很长的计算。与文件中的程序相同的计算不需要 s 和 $sf 1
for k1,6 do beginf k * fprint, f
endfor
end以函数的使用为例IDL .RUN pro/simple_routine
IDL simple可以从批处理文件运行程序。 尝试IDL batch_run这会读取并运行 simple_main.pro然后再次运行它然后读取并运行 simple_routine.pro。有关创建和运行程序包括其他命令的更多信息请参阅 IDL 联机帮助。