Pyclaw实用程序模块 ¶
pyclaw.util公司
¶
-
班 抓包.pyclaw.util。 帧计数器 ¶ 简单帧计数器 简单的帧计数器,用于跟踪当前帧编号。 这个可以 也可用于通过使用多个 立即计数器。 初始化为0 -
获取计数器 ( ) ¶ 获取当前帧编号
-
增量 ( ) ¶ 计数器递增一
-
复位计数器 ( ) ¶ 将计数器重置为0
-
集合计数器 ( 新帧编号 ) ¶ 将计数器设置为new_frame_num
-
-
例外 抓包.pyclaw.util。 验证错误 ¶
-
抓包.pyclaw.util。 添加父文档 ( 起源 ) ¶ 为类添加父文档
-
抓包。抓包。直到。 check_diff ( 预期 , 测试 , ** 关键字参数 ) ¶ 检查预期值和测试值之间的差异,如果正常,则返回“无” 此函数需要关键字参数“absol”或“reltol”。
-
抓包。抓包。直到。 编译库 ( 源列表(_L) , 模块名称 , 接口函数 = [] , 本地路径(_P) = './' , 库路径(_P) = './' , f2py标记 = '' , 常设费用 = 无 , FFLAGS公司 = 无 , 重新编译 = False(错误) , 清洁的 = False(错误) ) ¶ 编译fortran源代码并将其封装到python中的可调用模块中。 此函数使用f2py创建从python到fortran的接口 source_list中的源。 source_list可以是名称列表 在这种情况下,compile_library将在 local_path,然后在library_path中。 如果给定路径,则文件将 检查它是否存在,如果不存在,它将查找上面的文件 解决顺序。 如果未找到任何源文件,则IOException为 提高。 列表interface_functions允许用户指定哪个fortran python实际上可以使用函数。 接口功能包括 假定文件中包含其名称,即claw1位于 “claw1.f95”或“claw2.f”。 fortran的接口可能与原始函数不同 调用fortran,以便用户确保自动检查 为fortran模块创建了文档字符串,以便正确使用。 如果源文件没有更改,则不会重新编译它们。 一组值得注意的选项用于启用OpenMP,它需要通常的 fortran标志,但也必须编译OpenMP库,这是 使用标记-lgomp完成。 然后对compile_library的调用将是: compile_library(src,module_name,f2py_flags='-lgomp',FFLAGS='-fopenmp') 要实现完全优化,请使用: FFLAGS='-O3-fopenmp-funroll-loops-finline-functions-fdefault-real-8' 输入 : 源列表(_L) -(字符串列表)源文件列表,如果是 只有源文件的名称,即“bc1.f”,然后将搜索它们 对于,如果显式路径为 给定,即“/ bc1.f',则函数将使用该源(如果可以的话) 找到它。 模块名称 -(string)结果模块的名称 接口函数 -(字符串列表)函数名列表 如果为空,则提供对python可以访问的所有函数的访问权限。 默认为[]。 本地路径(_P) -(string)源解析的基本路径,默认值 到“./”。 库路径(_P) -(string)源解析的库路径, 默认为“./”。 f2py标记 -要传递的(字符串)f2py标志 常设费用 -(string)重写环境变量FC并将其用于 编译,注意这并不能替换f2py使用的编译器, 仅对象文件编译(没有 接口) FFLAGS公司 -(string)重写环境变量FFLAGS并传递 将它们发送到fortran编译器 重新编译 -(bool)强制重新编译库,默认为 False(错误) 清洁的 -(bool)强制干净构建所有源文件
-
抓包.pyclaw.util。 构造函数句柄 ( 路径 , 函数_名称 = 无 ) ¶ 从路径处的文件构造一个函数句柄。 此函数将尝试从python构造函数句柄 文件位于路径。 输入 : 路径 -(string)包含函数的文件的路径 函数_名称 -(string)文件中定义的函数的名称 句柄将指向的。默认为与文件同名 没有扩展名。
输出 : (func)构造函数的函数句柄,如果它具有 失败。
-
抓包。抓包。直到。 转换器端口双浮点 ( 数 ) ¶ 将fortran格式的double转换为float 将fortran格式的double转换为python浮点。 number:是双精度的字符串表示。 数量应为 格式为“1.0d0”
-
抓包.pyclaw.util。 发电机变型 ( 应用 , 验证器 , 内核语言 = (“Fortran”,) , 禁用设置 = False(错误) , ** 关键字参数 ) ¶ 给定验证器的测试应用程序可运行变体的生成器 给定一个应用程序,一个用于验证其输出的脚本,以及一个 要尝试的内核语言列表,生成 通过获取可用内核语言和 (小爪子/小爪子)。 对于许多应用程序,这将产生4种变体: 两种主要内核语言(“Fortran”和“Python”)与 两种并行模式(petclaw和pyclaw)。 有关如何实现验证器功能的更多信息, 有关说明,请参见util.testapp,有关示例,请参阅util.checkdiff。 所有无法识别的关键字参数都会传递给应用程序。
-
抓包.pyclaw.util。 读取数据行 ( 输入文件 , num_entries=1 , data_type=<类 “浮动”> ) ¶ 从输入文件中读取单行数据 从输入文件中读取一行并返回一个值数组 inputfile:指向打开文件对象的文件指针 num_entries:应读取的条目数,默认值仅为1 type:要读入的值的类型,它们必须是同一类型 此函数将返回单个值或值数组 取决于num_entries是否>1
-
抓包.pyclaw.util。 运行app_from_main ( 应用 , 设置图 = 无 ) ¶ 从pyclaw/examples/运行应用程序,自动解析命令行关键字 arguments(key=value)作为应用程序的参数,位置为 传递给PETSc的参数(如果已启用)。 也许我们应该采用PETSc方法,建立PyClaw数据库 可以在中查询特定对象的选项 PyClaw运行时,而不是通过应用程序预先加载所有内容 主要…
-
抓包.pyclaw.util。 运行序列化 ( 乐趣 ) ¶ 将函数修饰为仅串行运行,即使并行调用也是如此。 在并行通信器中,第一个进程将运行,而其余进程将运行 挡住障碍物。 在串行运行中,将直接调用该函数。 目前假设全球通信器是PETSc。 COMM_WORLD,但很容易 广义的。
-
抓包.pyclaw.util。 测试应用程序 ( 应用 , 验证器 , 关键字参数 ) ¶ 根据验证器方法测试给定应用程序的输出。 此函数执行以下两个函数调用: 输出 = 应用 ( ** 关键字参数 ) 检查值(_V) = 验证器 ( 输出 ) 如果输出正确,验证器方法应返回None,否则返回None 它应该返回三个项的索引序列: 0 - 预期 价值 1 - 测试 价值 2 - 一串 描述 这个 容忍 类型 ( 防抱死制动系统 / 相对 ) 和 价值 . 此信息用于在检测到错误时提供描述性帮助。 有关验证器方法的示例,请参阅util.check_diff