美国宇航局,即 NASA ,将 253 个软件项目开源目前托管在 Gitithub上(https://github.com/nasa),NASA 希望可以通过开源收获更多项目改进的建议,同时NASA也希望用户可以给NASA提交项目,为此专门开通了官方的开源网站 Code NASA 。
Livingstone2 —— 人工智能(AI)软件系统
Livingstone2 是一个可重用的人工智能(AI)软件系统,旨在帮助飞船生命支持系统、化工厂或其他复杂系统在操作强劲以最小的人力监督,即使面对硬件故障或意外事件。 Livingstone2诊断飞船或其他系统的当前状态,并建议命令或修复操作,允许系统继续操作。
JavaGenes —— 遗传算法
JavaGenes 是一个用Java编写的相当通用的进化软件系统。它实现了几个版本的遗传算法,模拟生化和其他搜索技术。JavaGenes 已经用于分子进化,原子力场参数,数字电路,地球观测卫星计划等地方。
Shift —— 文件传输框架
在高端计算环境中,远程文件传输经常需要处理非常大的数据集,而计算资源则分布在不同的组织,需要将这些数据汇总在一起进行进一步分析。本地传输相同的数据在文件系统也经常由管理员来优化资源利用率当新的文件系统在线或存储成为现有文件系统之间的不平衡。
NASA ECHO —— 独立信息管理系统
NASA 在这个 ECHO 工具的研究上也花了很长时间,终于成功地开发出了 IIMS,早期被称之为独立信息管理系统。功能目标包括:
· 提供良好的文档接口和协议,帮助开发者构建并嵌入用户界面工具和服务。
· 提供信息管理来支持库存、服务元数据和中间件。
· 提供数据请求路径和跟踪。
· 支持图形、关键字和 freetext 搜索。
BigView —— 大图像操作工具
BigView 允许在 Linux 桌面上对任意大小的图像进行平移和缩放操作。此外,它可以在实时的环境中工作,多台电脑合作将一个大的形象。使用这个软件,你可以探索——在相对温和的机器上火星轨道器照相机等图像马赛克(92160 x33280像素)。
CFD Utilities
CFD Utility 软件库有将近 30 个 Fortran 90 和 77 的子程序组成,同时有将近 100 个基于这些库开发的应用程序。许多实用程序适用于多次拉丝结构化网格和流动的解决方案,但是很多其他可重用的模块在插值等类别,优化、正交、快速搜索和字符操作出现从空气动力学的几十年的软件开发部门和空间技术部门在NASA艾姆斯研究中心。
Trick —— 航天器仿真环境
Trick 仿真环境由美国约翰逊宇航中心研制。Trick 灵活的功能能让用户在航天器所有阶段建立应用程序,包括早期航天器设计与性能评价,飞行软件的开发与测试,飞行器的动态负责分析,以及循环测试中虚拟和硬件的分析。研发 Trick 的主要目的是为了提供一套普遍的仿真能力,使得特定领域的专家能够专注于他们所属领域具体模型的研究,而不是专注于具体仿真功能上,例如工作排序,输入文件处理或者数据记录。
Growler —— 分布式对象和事件架构
Growler 是一个基于 C++ 开发的分布式对象和事件架构。支持 C++ 的对象序列化作为远程方法调用、事件通道和 IDL 接口定义语言的一部分。
Mesh —— 网格中间件
Mesh 是一个安全的、轻量级的网格中间件基于的单点登录功能的内置的公共密钥身份验证机制SSH使用系统调用插入。每个网安装致力于提供一个特定的虚拟组织 (VO),这是定义为一个动态的个人、机构和资源。网允许个人在一个签证官Mesh-accessible资源上执行SSH远程命令在其他合作VOs使用 单一网格SSH私有密钥生成的在当地的签证官。
Autodoc —— 自动生成文档
Autodoc 可以通过文本和模板文件自动生成微软文档。它被设计用于自动发送报告和减少产生常规文件所花费的精力。通过给定一个 docx、pptx 或者 xlsx 文档连同所需要的 text 文件,Autodoc可以输出一个插入样本中带有所需要的内容且格式相同的文档。
Mariana —— 向量机回归和分类算法
Mariana 是一个算法,有效地优化了hyperparameters支持向量机回归和分类。目前使用模拟退火优化但可以扩展到使用多种随机优化技术,包括马尔可夫链蒙特卡罗序贯蒙特卡罗和遗传算法。马里亚纳可应用于文本部分的报告,确定可能的类别,每个报告,并计算每个分类的信心。
XPlaneConnect —— 飞行研究工具
XPlaneConnect(XPC) 是一款用于与商业飞行仿真软件 X-Plane 交互的开源研究工具。用户可在网络中通过 X-Plane 上用 C 或者 MATLAB 写就的功能从飞行仿真中实时控制航班信息和获取飞行状态信息。
Mutil —— 并行文件复制和checksum工具
在本地文件系统中进行复制是每天要执行的工作,这些文件的移动要受到系统限制,备份或者恢复,升级或者替换。因此文件拷贝的性能和完整性非常重要。现在的并行文件系统提供非常高的性能来执行这类操作。
为了达到性能的峰值,我们需要利用多个并发的读写操作。而 Mutil 提供 mcp 和 msum 来替换 cp 和 md5sum 工具,利用并行的机制提升系统。
VICAR —— 通用的图像处理软件系统
VICAR,全称 Video Image Communication And Retrieval,是一个通用的图像处理软件系统,自1966年开始开发,用于数字化处理多维成像数据 。
开发的内容包括:
· 近 350 个应用程序
· 命令行解析(shell) 和可选环境 (TAE)
· VICAR-格式图像 I/O 库
§ 包括 C/C++/Fortran 和 Java 版本
· 文件格式转换 (transcoder)
§ 包括 VICAR, PDS, ISIS, FITS
§ 在常见的文件格式之间转换
§ 保留元数据
· xvd 图像显示程序
· IBIS (Image-Based Information System)用于表格数据
§ 高效处理大数据集
NASA GMP —— 几何操作协议
NASA GMP 是另一个开源的类库,在 ANSI C 和 XML 数据结构之间序列化数据类型,这么做的目的是为 CFD 应用程序提供支持。
Geometry Manipulation Protocol (GMP) 是个库,能序列化 XML 和 ANSI C 数据结构的数据类型,支持 CFD 应用。这个库当前提供描述几何配置,一般 moving-body 场景(规定 and/or 6-DOF) 和控制surface 设置。更详细的描述提供在 AIAA Paper 2003-1237。
NASA CODE —— 分布式环境控制框架
CODE 是个用来控制和观察分布式环境的软件框架。CODE 的基础功能是允许用户观察一个分布式资源,服务和应用。用户也可以管理分布式的资源,服务和应用。
IND
IND 是一个开源的系统,可以处理大部分的独立事件,而这些独立事件都是使用固定长度的向量描述的值。IND 提供了一系列的功能特征和使用风格,主要是为了方便普通用户以及高级用户或者是那些对调查研究感兴趣的人使用。IND 是由四个基础的例程组成:数据操作例程、目录生成例程、目录检测例程和目录显示例程。
Dnppy —— python 模块集合
dnppy 是一个为 DEVELOP 国家计划做代码库的 python 模块集合。
OpenSPIFe —— NASA 调度工具包
OpenSPIFe 是一个综合规划和调度工具包,它经过专家们数百小时的测试观察,并且在 NASA 内部数个应用中得到实际应用。
Kodiak —— C++ 算法库
Kodiak 是一个 C++ 库,它实现了一个严格数值逼近的通用分支定界算法。分支定界算法的特定实例可以让用户重新定义并且隔离非线性方程、不等式、全局优化问题、微分方程集合系统。
Libibvpp
Libibvpp 是 libibverbs 库的 C++ 封装,这是 OpenFabrics 软件的一部分。通过 C++ 的 TR1 智能指针实现完整的资源管理。
MMM-Py —— NASA 3D 马赛克模型
MMM-Py 是 Marshall MRMS Mosaic 的 Python 工具包。美国国家海洋和大气管理局(NOAA)通过多雷达多传感器系统(MRMS)定期绘制美国 3D 雷达马赛克模型。这些模型可以很好地应用于降水和风暴分析与研究。通过 MMS-Py ,你可以阅读任何版本的 MRMS 雷达马赛克,不论是过去的还是现在的,你都可以拿去分析,生成自己的马赛克图形。MMM-Py 是开源的且免费的。
IPG Execution Service
IPG Execution Service 是一个开源执行软件,允许用户监控,取消并提交他们的工作。在提交一份工作之后,用户可以通过定期监控或者是通过实时查询等方式来跟进这一工作的状况,更重要的是用户也可以通过这个新工具来取消自认为是很复杂的任务。
NTL-ISS-Food-Intake-Tracker——食物摄入追踪应用
NTL-ISS-Food-Intake-Tracker 是美国国家航空航天局为国际空间站成员设计的,可用在 iPad 上的食物摄入追踪应用。
mpex.java
mpex.java 是定义项目需求的初始化代码,提供一个模版文档来讨论目标的类结构和功能。当前,mpex.java 能读取一个 MPEX 格式的数据文件和解析数据集到类似 hierarchical nature 的 Java 类对象。此软件并不能处理大数据文件和无对象函数的代码。
DAVEtools —— 操作 DAME-ML 模型 Java包
DAVEtools 是一个可用于操作 DAME-ML 模型的 Java 包;这些都是具体到动态模型数据交互的自定义语法的XML 文件,例如飞行仿真物理模型(请查阅 http://daveml.org/)。此包使用的是命令行,没有GUI,但是ModelSweeper 工具使用图形接口。
libSPRITE —— NASA 多功能库
libSPRITE 是一组可以用于飞行项目、技术示范和模拟项目的库。它提供多样化的功能,并且试图简化代码,减少代码错误。
CrisisMappingToolkit —— 应对危机算法与工具集合
CrisisMappingToolkit 是一个通过创建地图来应对危机的算法与工具的集合。它基于谷歌地球引擎所处理的大量数据,采用的是 Apache 2许可证。
PyAMPR —— 高级微波辐射降水数据包
PyAMPR 是由 NASA 马歇尔太空飞行中心管理的机载被动微波辐射计。AMPR 的数据可以从http://ghrc.nsstc.nasa.gov 处下载。AMPR 的来自 NASA 地面项目的亮温数据均为 ASCII 或者 netCDF格式。此 Python 脚本定义了一个可以从独立航班获取单文件数据的类。
CertWare —— NASA 工具集合
CertWare 是一个工具的集合,旨在支持安全可靠的项目的发展。CertWare 采用了几个结构化的参数模型,并且提供了支持书写和验证参数的选择模型。无论是文本编辑还是图形编辑都得到了实现,并且使用了几种模型生成工具,便于实施和维护。
StereoPipeline —— 自动测量与立体摄影工具
StereoPipeline 是由美国国家航空航天局(NASA )开源的自动测量与立体摄影工具,主要用于行星轨道图像捕获,以及机器人着落轨迹探测。可以根据捕获到的信息,绘制数字高程模型(DEM)、投影图像和3D模型。
mpl —— Matplotlib 样式系统
mpl 是matplotlib” target=”_blank”>Matplotlib 样式系统,通过mpl 可以自定义的图表上的区块(plot)外观,plot元素也可以随时改变,如改变颜色、标记样式、线条样式、字体等。