没有合适的资源?快使用搜索试试~ 我知道了~
软件X 17(2022)100967原始软件出版物Spine SDK:一个灵活的开源工作流管理系统,具有场景和数据管理功能[10]杨文,李文.Savolainend,Antti Soininend,Per Vennströmd,Erkka Rinned,JiangyiHuangd,作者声明:作者TerenceUCD能源研究所,爱尔兰b爱尔兰梅努斯大学商学院KTH-瑞典皇家理工学院dVTT-芬兰技术研究中心,芬兰比利时鲁汶大学f爱尔兰能源改革有限公司ar t i cl e i nf o文章历史记录:2021年9月30日收到2021年12月4日收到修订版2021年12月15日接受保留字:工作流管理数据管理建模优 化 开 源 场景代码元数据a b st ra ctSpine是一款开源软件,用于定义、管理、模拟和优化能源系统模型。它使用户能够收集、创建、组织和验证模型输入数据,使用选定的数据执行模型,最后将结果/输出数据存档并可视化。Spine的设计和开发是为了支持多向量能量集成模型的创建和执行。通过用户界面,它方便地将具有不同范围或时空分辨率的模型链接起来。这些模型可以被组织成一个直接的无环图,并通过嵌入式工作流管理引擎有效地执行。该软件可帮助用户导入和管理数据,定义模型和场景,并编排项目。它支持自包含且可共享的实体关系数据结构,用于存储模型参数值和相关联的数据。该软件使用最新的Python环境开发,并支持插件的执行。它是作为不同操作系统的桌面应用程序在安装包中提供的。版权所有©2022作者。由爱思唯尔公司出版这是CC BY许可下的开放获取文章(http://creativecommons.org/licenses/by/4.0/)中找到。当前代码版本v0.6.1指向此代码版本所用存储库的永久链接https://github.com/ElsevierSoftwareX/SOFTX-D-21-00187脊柱侧弯https://github.com/Spine-project/Spine-Toolbox/releases/tag/0.6.5-final.0法律代码许可证LGPL 3.0使用Git的代码版本控制系统使用Python、Qt、SpineOpt的软件代码语言、工具和服务:Julia编译要求,操作环境Linux,Mac,Windows如果可用,链接到开发人员文档/手册https://spine-toolbox.readthedocs.io/en/latest/? badge=最新问题支持电子邮件spine_info@vtt.fi软件元数据当前软件版本v0.6.5到该版本可执行文件的永久链接https://github.com/Spine-project/Spine-Toolbox/releases/tag/0.6.5-final.0法律软件许可证LGPL 3.0计算机平台/操作系统BSD,Linux,OS X,Microsoft Windows,类Unix安装要求依赖Python,QT/PySide如果可用,请链接到用户手册-如果正式发布,请包括https://spine-toolbox.readthedocs.io/en/latest/? badge=引用列表中对出版物的最新引用问题支持电子邮件spine_info@vtt.fi通讯作者:梅努斯大学,商学院,爱尔兰。电子邮件地址:fabiano. mu.ie(Fabiano Pallonetto)。https://doi.org/10.1016/j.softx.2021.1009672352-7110/©2022作者。 由Elsevier B.V.出版。这是一篇开放获取的文章,使用CC BY许可证(http://creativecommons.org/licenses/by/4.0/)。可在ScienceDirect上获得目录列表SoftwareX期刊主页:www.elsevier.com/locate/softxJuha Kiviluoma,Fabiano Pallonetto,Manuel Marin等.软件X 17(2022)10096721. 动机和意义建模和仿真是许多复杂科学和工程工作的关键方法。模型通常使用各种输入数据源,其中一些需要复杂的处理,然后数据才能与模型兼容。许多主题是多方面和多尺度的,需要几个模型和处理工具来充分表示。最后,不确定性可能是多样的,但对稳健的决策至关重要。以可重复和可靠的方式处理这些复杂问题不仅需要可靠的模型,还需要可靠的工作流管理,以处理多功能流程和数据。有几个现有的开源工作流管理工具,每个都有自己的优点和缺点。本作者中的一些人是经验丰富的电力和能源系统建模者,他们了解各自领域的建模工作流程挑战。一个具体的挑战是不仅要管理工具的执行,但也代表多方面的数据和方案。大多数通用的工作流管理工具没有明确的方法来表示数据作为工作流的一部分,这是Spine的一个焦点,将在下面进一步描述。与此同时,能源领域的工作流程工具(或在接下来的段落中,我们将使用来自通用领域和能源系统特定领域的各种工作流工具来强调这些方面为了更全面的综述,Atkinson et al.[1]概述了过去十年来工作流管理工具的发展,而Ringkjøb等人[2]概述了最近的能源系统建模工具。工作流管理工具(或系统/软件)可用于促进工作流的设计和执行。其中许多是面向业务流程的。然而,也有一些开源工具专注于研究和分析工作流程。Pegasus工作流管理系统(WMS)[3]是一个使用Java和Python构建的执行框架,允许用户将工作流定义为从一系列组件构建的处理计划。Pegasus或其他类似的框架可以通过语义工作流结构来丰富,如工作流实例生成和选择(WINGS)[4]。 这有助于为用户整合更多的元数据和指导,并允许开发人员将组件链接到现成的模板工作流中。然而,Pegasus只传输来自数据“目录”的数据“repli- cas”。它没有提供统一的数据接口,也没有为用户提供基于替代参数值创建场景的能力,这是我们的设计标准之一。类似地,Apache Airflow [5]在纯Python中执行有向无环图(DAG),不提供数据接口。它不支持在DAG中的工具之间传递数据,这与验证不同能源系统模型之间的数据交换有关。还有一些专注于数据分析的工具,如基于Java的KN- IME [6]和基于Scala的Apache Spark[7]。这些还缺乏轻松构建可在优化和仿真模型中执行的场景的能力。然而,它们具有强大的数据清理和处理能力,可以合并到基于Spine的建模链中,提供第一步。在能源系统领域,许多建模框架都有自己的数据管理系统,这些系统通常非常严格,并且仅限于工具的即时输入和输出(例如TIMES [8],OSeMOSTO [9]和Calliope[10])。在某些情况下,建模社区已经采用了较低级别的脚本链接工具-例如PyPSA [12]中的Snakemake [11]。这允许更多的自由(提供API),但要求如果需要更改工作流程,则用户理解代码。Spine的设计标准主要来自建模的要求,以支持不确定性下的决策。因此,Spine SDK不仅提供了工作流管理,还提供了通用的数据结构和场景管理。用户可以使用同一个或多个数据库拥有多个模型和工具,这使得建模人员可以使用一套专门的工具进行综合情景分析如表1所示,Spine的特性类似于数据分析工作流管理系统,如KNIME [6]或Alteryx [13]。然而,与这些广泛采用的工具相比,Spine的新颖之处此外,Spine Python是用Python编写的,这有助于轻松集成在研究社区中广泛使用的基于Python的工具。另一方面,Spine是一个新的进入者,缺乏许多成熟工具中的特定数据处理功能。然而,Spine的工作流可以很容易地合并开源社区中可用的其他数据处理工具。2. 软件描述Spine是一个开源Python包,用于管理建模和仿真的数据,场景和工作流。用户可以拥有本地工作流,但可以通过版本控制和SQLDB作为团队工作。Spine的主要特点如下:它实现了一个应用程序,该应用程序支持和管理从多个(和不同的)数据源获取数据,并提供了验证和关联这些数据的机制。它提供了一个通用的数据模型,脊柱数据结构,使用通用的抽象类和它们之间的关系使得能够以面向对象的方式制定不同的模型。实体可以保存参数,这些参数可以是常量、时间序列、数组和多维映射。该界面便于查看和编辑数据。场景可以从替代参数值构建。它提供了对数据执行计算所需的所有接口。有进口商,出口商和数据操作工具,允许不同的数据结构和格式之间的数据转换(如CSV,XLSX,GDF,SQL)。这有助于进行广泛的可能分析。基于Python的API可用于查询Spine数据。Julia [18]也有类似的接口,并具有在Julia/JuMP [19]中直接构建模型的额外功能。工具规范用于定义执行各种工具的要求。工具规范可以转化为插件。一个示例插件是SpineOpt. jlJulia包,它通过生成和模拟优化模型在Spine数据集上运行。执行已经从接口中分离出来,这使得工作流和场景能够并行化,以及使用内置的服务器-客户端系统进行远程执行2.1. 软件构架Spine可用于设计和执行由多个工具和模型组成的工作流[20]。它支持与问题无关的数据和场景,用户界面·········Juha Kiviluoma,Fabiano Pallonetto,Manuel Marin等.软件X 17(2022)1009673表1分析商业/开源软件包与Spine解决方案提供的功能脊柱侧弯✓✓ ✓✓ ✓ ✓ ✓✓ ✓ ✓(✓KNIME[6]✓×✓×()()×()××[13]第十三话✓✓ ✓✓×××()()×空气流量[14]×✓()×(××()×✓××✓Apache Spark [15]⋄✓×⋄()(×()××⋄⋄[9]第九章✓✓ ✓×✓××✓ ×✓××[10 ]第10话×✓✓×✓✓×✓×✓()×× PyPSA [16]✓✓ ✓()✓✓✓✓✓××××图例:完全支持,()部分支持,使用附加软件或插件支持,×不支持。Fig. 1. Spine Data工作流由3个优化模型(带锤子的红色图标)和1个Spine Data工具以及2个输入/输出节点组成。的工作流的目标是使用天气文件计算系统能量需求和来自两个可再生能源发电机的发电量。的结果模型存储在输出节点(数据库或CSV文件)中,工作流可以通过两个执行队列(右侧)并行执行自动支持不同的数据结构,只要它们符合具有关系和类的实体-属性-值数据模型。用户界面使用模型-视图-控制器架构模式构建。高级结构努力实现模块化,既包括Spine内的模块化,也包括它可以执行的工作流。对于工作流,假设复合模型和DAG计算工作流之间的等价性,其中每个节点具有四个如示于图1,计算节点需要接收来自前趋节点的输入,或者来自根节点(节点0)的空值,并且在执行期间与外部数据源进行交互,无论是在读模式还是写模式下。在执行结束时,节点将把输出数据推送到后继节点。各种节点的组合将导致相当于DAG的计算工作流。Spine的软件架构遵循工作流控制架构模式,在工具箱和其他组件之间使用紧密集成[21](在以下章节中描述)。图2说明了Spine插件组件和项目期间开发的插件所有的图形用户界面(GUI)工具是嵌入式的,可通过Spine Toolkit应用 程 序 使 用 。 可 以 通 过 工 具 箱 访 问 Spine 数 据 Spine 接 口 将SpineOpt优化模型与Spine数据结构链接起来。以下小节更详细地描述了软件的每个主要组件。2.1.1. Spine数据结构Spine数据结构是一个实体-属性-值,具有类和关系数据模型,用于结构化但灵活的数据存储。类和关系定义了不同数据元素之间的结构,与图形非常相似。图形结构在建模和优化中很普遍该数据结构进一步增强了包含同一参数(即属性)的多个替代值的能力。然后可以使用备选方案集来创建场景。数据结构是因为它使用户能够使用服务于多个模型的单个数据集,从而实现高效,可重复和更可靠的工作方式。输入模型作为数据并行执行工作流可视化编辑数据转换能力与外部API远程工作流执行基础结构开源社区主导支持优化引擎支持开放数据格式物联网/实时数据流集成可扩展建模框架多语言支持元器件市场访问第三方组件Juha Kiviluoma,Fabiano Pallonetto,Manuel Marin等.软件X 17(2022)1009674图二. 整体Spine软件架构,不同组件交互组成和执行工作流。2.2. Spine DB APISpine DB API包含低级Python函数,这些函数可以访问和修改属性-值数据结构的所有不同部分,同时保持结构完整性。Spine用户可以使用Spine DB API创建他们自己到Spine数据库的直接连接。2.2.1. Spine工具箱用户界面Spine SDK提供了GUI应用程序,支持能源系统模型的定义、管理和执行它使用户能够收集,创建,组织和验证模型输入数据,使用选定的数据执行模型,并最终存档和可视化结果/输出数据。Spine的设计旨在支持优化和仿真模型以及数据处理工具的创建和执行。它还可以用于其他可以利用内置数据结构的应用程序2.3. Spine DB编辑器Spine DB编辑器是Spine GUI的一部分。编辑器允许用户查看和修改数据,添加替代数据值,构建场景和查看元数据。它具有撤销功能,数据更改通过请求提交消息的提交提交。编辑器由四个主要组件组成:实体树显示根据对象和关系类组织的实体,并允许在以下数据视图中进行过滤列表视图将数据表示为实体及其参数值的列表。它是最直观的查看界面以及操纵实体和参数值。 列表视图的一个版本还显示了类的可用参数定义,并方便了它们的编辑。表格视图提供了一个表格,可用于查看和操作给定实体类的参数值。用户控制两个轴包含的数据,也可以过滤。轴可以从参数值中获取结构维度(类)、索引维度以及替代和场景维度。图形视图提供数据结构的可视化表示。Spine数据集的各种实体表示为节点,顶点表示它们之间的关系。最终用户可以选择要显示的类和实体。可以在图形下方的单独列表视图中查看和操作所选实体的参数数据2.3.1. 脊柱发动机Spine Engine提供了工作流扩展的功能。该组件的目标是执行工作流或整个工作流本地或使用在工作流执行期间,执行工作流中的每个项目,并将脊柱引擎的主要输入是项目、规格、后继和执行许可。这些输入从描述要执行的工作流的项目文件中解析。在安装Spine Engine对象之前,将解析项目文件,从而使相关输入对Spine Engine可用发动机的输入描述如下:Spine工作流上下文中的项目是一个计算对象,可以与其他项目连接以形成工作流程。Spine工具提供了一个界面,用户可以在其中选择相关项目来构建所需的工作流。每个项目可在界面上提供一个独特的,但互补的功能,以其他可用的项目。这些项目的功能包括程序文件的执行(直接支持Python,Julia和通用代数建模系统(GAMS)代码,而其他工具可以通过shell可执行文件运行),导入数据,导出数据,存储数据,执行MySQL笔记本[22]等等。工具规范描述项目属性,如输入文件、输出文件、可执行文件位置等。它们在工作流中被实例化为项目。后继项是从项名称到后继项名称列表的映射,后继项名称列表描述工作流中项之间的依赖关系。执行权限是项名称到布尔值的映射,用于描述应执行工作流中的如果布尔值为false,则不会执行该项,但会收集其资源。该界面允许选择任意数量的项目执行。Juha Kiviluoma,Fabiano Pallonetto,Manuel Marin等.软件X 17(2022)1009675基于上述输入,引擎将构造一组称为实体的对象。实体由属于工作流的项目定义。从这组实体中,构造了在描述Spine引擎的内部工作时使用一旦管道被构建,它就可用于执行。工作流执行是与工作流中的项目并行执行的,其中项目依赖性允许。工作流执行的并行化被诸如openDIEL [24]和Chi- ron [25]等已建立的工作流引擎广泛使用,以减少工作流的执行时间。但是,Spine Engine还可以并行执行Spine DB管理器中构建的场景。随着多核CPU在台式机和笔记本电脑上的应用越来越广泛该引擎还提供了两种执行模式,第一种模式是从Spine接口中执行的。当从工具箱执行引擎时,向用户提供项执行的日志以及项的动画,其向用户提供项执行进度的视觉表示。第二种模式以无头方式执行,其中从命令行执行,与用户界面完全分离。当在无头模式下执行时,从终端窗口内向用户提供执行日志Spine Engine还具有用于远程执行的客户机-服务器功能。客户端的Spine引擎实例可以将工作流发送到服务器端的Spine引擎实例。消息传递基于Zero-MQ [26],消息传递可以包括工作流所需的数据但是,如果可能的话,最好使用基于服务器的SQL,SpineEngine服务器可以根据客户机的指令直接访问该SQL这种远程执行功能相对较新,可能会不断发展。2.3.2. 脊柱界面jl是一个Julia包,用于与Julia会话中的Spine数据结构进行交互它依赖于Spine DB API,给定Spine数据库的URL,它创建一系列方便的函数来检索Julia模块或会话中调用它的数据库的内容。它允许用户快速构建使用Spine数据库的Julia工具。它对于在JuliaJuMP中构建优化模型SpineOpt.jl能源系统模型就是一个例子。2.3.3. SpineOptSpineOpt.jl 是一个开源的能源系统建模框架,它直接通过SpineInterface.jl使用SpineData结构。它是一个Spine插件,可以有效地集成到Spine插件工作流程中。通过商品不可知和问题独立的公式,SpineOpt简化了集成能源系统的建模,还可以包含其他可以用节点之间的转换和传输SpineOpt的数据驱动方法使用户能够灵活地添加其他参数和约束。Ihlelmann等人[27]提供SpineOpt的详细概述3. 说明性实例Spine项目进行了13个案例研究,以验证、扩展和演示Spine的功能,SpineOpt. 1为每个案例研究创建了一个工作流程,将完成研究所需的所有数据和工具连接起来。这些工作流在官方git仓库中作为Spine项目提供。2请注意,虽然脊柱项目试图尽可能使用开放获取数据,但在某些情况下,一些原始数据并不公开,因此被省略或用虚拟数据取代。下面我们将重点介绍两个案例研究。在第一个例子中(图)。3,案例研究A33),目标是模拟斯德哥尔摩区域供热系统的一部分一年的运行情况。所考虑的子集包括七个发电机组:一个抽汽凝汽式汽轮机,两个背压式汽轮机,一个燃气轮机和三个热锅炉。该系统可以从风力发电设施获得电力,并从外部源输入电力。它还可以根据需要减少负载和减少风力。工作流使用两个Python脚本对输入数据进行预处理,以执行特定的计算(左侧有两个红色的锤子图标)。当Spine导入器的功能不足时,这很有用进行必要的操作脚本将数据保存为CSV文件,然后使用Spine导入器将其导入到Spine数据存储中,Spine导入器获取表格数据,并使用导入器界面中的用户指定将其转换为Spine数据存储格式。SpineOpt使用SpineInterface根据工作流传递给SpineOpt的资源URL与输入和输出数据库交互。最后,第二个例子(案例研究A5-4)旨在模拟瑞典水力发电系统中的Allefte河一周的运行,该系统包括15个发电站。数据库编辑器的图形视图将数据的结构显示为图形(图1)。 4). 可以编辑所有实体和参数4. 影响工作流管理工具对科学过程产生了巨大的影响,它们也广泛用于企业和公共管理。通过建模来支持决策制定为工作流管理工具创建了特定的需求这样的决策是广泛的-模型用于支持流行病的反应,城市规划,过程设计,以及能源系统规划和操作举几个例子。这些任务的共同点是需要考虑不确定性-并非所有因素都是已知的,因此通过使用情景来改变输入参数是很重要的。Spine可通过提供易于使用的界面满足工作流管理、数据操作和场景构建的综合需求,开发人员可以将多种工具整合到复杂的工作流程中,而这些工作流程又可以由经验较少的用户操作。由于Spine VBA支持基于服务器的SQL数据库,因此它为个人具有专用角色的组提供了集成的工作流。这在模拟和分析复杂现象时可能很重要,例如正在进行的能源系统过渡,以满足减缓气候变化的要求。Spine Spinning有可能产生很大的影响,但由于该工具仍然是新的,目前已知的用户群包括1 案例研究摘要文档:http://www.spine-model.org/pdf/D6.1%20Summary%20of%20the%20case%20studies.pdf2 情况 研究存储库:https://github.com/orgs/Spine-project/repositories3 A3案例研究源代码:https://github.com/Spine-project/spine-cs-a34 A5案例研究源代码:https://github.com/Spine-project/spine-cs-a5Juha Kiviluoma,Fabiano Pallonetto,Manuel Marin等.软件X 17(2022)1009676图三. 区域供热网能源系统模型的主干网工作流。在左侧,有输入数据处理脚本和Spine导入器,服务于主输入数据库。在右侧,SpineOpt模型将结果提供给处理脚本,该脚本还考虑了输入数据见图4。 SpineOpt模型。由于篇幅所限,仅介绍了雷布尼斯发电站,但所有发电站都是如此大约十个不同的研究小组,都在能源领域。Spine SDK拥有GNULesser General Public License(LPGL)许可证,允许该工具的商业使用,例如商业插件,即使核心工具必须保持开源。定制工作流程和构建特设模型和建模工作流程是商业活动的潜在进一步途径。Spine是问题不可知的,允许在Python,GAMS和其他语言中快速开发新的ad-hoc优化和仿真模型,特别是在Julia [18]中通过SpineInterface包。研究小组可以构建工具和工作流程来支持他们的需求,并将可用的工具整合到更广泛的社区中。因此,脊柱解剖学可以促进回答各种各样的研究和实际问题的有效方法。该软件可用于建模和回答更广泛的研究问题,涉及整合电气化运输和能源系统,或模拟可变可再生能源发电(包括天然气)网络转化为氢气(案例研究C3)。它还支持水力发电系统的建模功能(案例研究A1),使用建筑物理和长期电网投资模型进行灵活性评估。5. 结论Spine可提供一个工作流、数据和场景管理框架,该框架可以组合多个数据源和工具,同时为用户提供从源到结果的工作流的完整视图。它允许用户组在需要数据管理以及多工具和模型的大规模问题上进行协作。工具箱和数据结构功能能够执行广泛的数据处理和建模任务,特别侧重于数据整合和情景分析。Juha Kiviluoma,Fabiano Pallonetto,Manuel Marin等.软件X 17(2022)1009677竞合利益作者声明,他们没有已知的竞争性财务利益或个人关系,可能会影响本文报告的工作确认该项目已获得欧盟地平线2020研究和创新计划的资助。774629.作者感谢所有其他社区成员参与讨论、提交错误报告等。特别感谢Toni Lastusilta(数据导入设计)和Luc Cluitmans(数据结构设计)(均在VTT),以及Hanspeter Höschle(@hhoeschle)提交和评论软件各部分的一些问题。引用[1] 张文辉,张文辉,张文辉.科学工作流程:过去、现在和未来。Future GenerComput Syst 2017;75:216-27. 网址://dx.doi.org/10.1016/j.future.2017.05.041网站。[2] Ringkjøb H-K,Haugan PM,Solbrekke IM.审查具有大量可变可再生能源的能源和电力系统的建模工具。Renew Sustain Energy Rev2018;96:440-59.[3] Deelman E,Vahi K,Juve G,Rynge M,Callaghan S,Maechling PJ,et al.Pegasus , a workflow management system for science automation. FutureGener Comput Syst 2015;46:17-35. http://dx.doi.org/10.1016/j.future.2014的网站。十点零八分[4] [10] Gil Y,Ratnakar V,Kim J,Gonzalez-Calero P,Groth P,Moody J,etal. Wings:基于智能工作流的计算实验设计。IEEE Intell Syst2010;26(1):62-72.[5] ShubhaB,Prasad A.气流有向无环图。J Signal Process 5(2).[6] 华盛顿州瓦尔。科学工作流程系统:管道试点和KNIME。J ComputAidedMol Des 2012;26(7):801-4.[7] Zaharia M , Xin RS , Wendell P , Das T, Armbrust M, Dave A, et al.A p a c h eSpark:大数据处理的统一引擎。Commun ACM2016;59(11):56-65.[8] 张宏,陈伟,黄伟.中国和美国交通运输部门的TIMES模型:从脱碳的角度进行比较。应用能源2016;162:1505-14.[9]Gardumi F,Shivakumar A,Morrison R,Mr.C.,Broad O,Beltramo A,etal. From the development of an open-source energy modeling tool toitsapplication and the creation of communities of practice : The exampleofOSeMOOTH.能源战略回顾2018;20:209-28。[10]Penninger S, Pickering B. Calliope : 多 尺 度 能 源 系 统 建 模 框 架 。 J OpenSource Softw2018;3(29):825.[11]Köster J,Rahmann S.一个可扩展的生物信息学工作流引擎。生物信息学2012;28(19):2520-2.[12]放大图片作者:John T,Schlachtberger D. PyPSA:用于电力系统分析的Python。2017年,arXiv预印本arXiv:1707.09913。[13][10] 杨 文 忠 , 张 文 忠 .数 据 科 学 和 机 器 学 习 平 台 的 魔 力 象 限 。 Gartner ,Inc;2018,p. 13岁[14]阿帕奇基金会阿帕奇气流。2020年,网址https://airflow.apache.org/。[15]阿帕奇基金会Apache Spark2020年,网址https://spark.apache.org/。[16]放大图片作者:John T,Schlachtberger D. PYpsa:用于电力系统分析的Python。J Open Res Softw 2018;6. http://dx.doi.org/10.5334/jors.188网站。[17]科普兰河基本的水晶炼金术。““2008年。[18]杨文龙,李晓梅,李晓梅,李晓Julia:一种用于技术计算的快速动态语言2012年,arXiv预印本arXiv:1209.5145。[19]放大图片作者:J. JuMP:数学优化的建模语言。SIAM Rev2017;59(2):295-320。[20]Savolainen P,Kiviluoma J,Rinne E,Soininen A,Marin M,Dillon J.脊柱可 交 付 成 果 2.1 软 件 设 计 文 档 。 2021 年 , http://www.spine-model 。org/pdf/D2.1SoftwareDesignDocument.pdf。[21]Glatard T,Rousseau M-E,Camarasu-Pop S,Adalat R,Beck N,Das S等人 , Software architectures to integrate workflow engines in sciencegateways。FutureGenerComputSyst2017;75:239-55.http://dx.doi.org/10.1016/j的网站。future.2017.01.005网站。[22]Randles BM,Pasquetto IV,Golshan MS,Borgman CL.使用jupyter笔记本作为开放科学的工具:一项实证研究。2017年ACM/IEEE数字图书馆联合会议。IEEE; 2017,p.1比2。[23] Dagster:一个用于数据编排的python库2021年,URL https://dagster.10/.[24][10]杨文,李文. openDIEL:一个并行工作流引擎和数据分析框架,在:在机器(学习)的崛起先进研究计算的实践和经验的会议2019年。pp. 1-7号。[25]Ogasawara E,Dias J,Sousa V,Chirigati F,de Oliveira D,Porto F,et al.Chiron : A parallel engine for algebraic scientific workflowers. ConcurrComput 2013;25:2327-41. http://dx.doi.org/10.1002/cpe.3032网站。[26]Zero-MQ开源社区。零MQ 2021,URL https://zeromq. org/.[27]Ihlemann M,Kouveliotis-Lysikatos I,Huang J,Dillon J,O'Dwyer C,Rasku T,et al. Spineopt:A flexible open-source energy system modelingframework. 2021年,提交审查。
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 5
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 探索数据转换实验平台在设备装置中的应用
- 使用git-log-to-tikz.py将Git日志转换为TIKZ图形
- 小栗子源码2.9.3版本发布
- 使用Tinder-Hack-Client实现Tinder API交互
- Android Studio新模板:个性化Material Design导航抽屉
- React API分页模块:数据获取与页面管理
- C语言实现顺序表的动态分配方法
- 光催化分解水产氢固溶体催化剂制备技术揭秘
- VS2013环境下tinyxml库的32位与64位编译指南
- 网易云歌词情感分析系统实现与架构
- React应用展示GitHub用户详细信息及项目分析
- LayUI2.1.6帮助文档API功能详解
- 全栈开发实现的chatgpt应用可打包小程序/H5/App
- C++实现顺序表的动态内存分配技术
- Java制作水果格斗游戏:策略与随机性的结合
- 基于若依框架的后台管理系统开发实例解析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功