gpt4 book ai didi

shell - 如何从 shell 脚本调用 GAP 函数?

转载 作者:行者123 更新时间:2023-12-04 03:03:20 24 4
gpt4 key购买 nike

我想得到 GAP 的函数的结果软件。这是一个交互式命令行工具,主要供从事群论相关主题的数学家使用。
文档/常见问题说明关于 8.1: Can I call GAP functions from another programme?这通常是不可能的。但是,可以将 GAP 作为子进程运行并使用管道、伪 tty、UNIX FIFO 或一些类似的设备与它通信。
使用名为 CrystCat(Crystallographic Groups Catalog)的包的示例 session 如下所示:

$ gap
gap > LoadPackage( "CrystCat" );
gap > DisplaySpaceGroupType( "P1" );
#I Space-group type (3,1,1,1,1); IT(1) = P1; orbit size 1; fp-free
gap > quit;
$ # exited 'gap' and back in my shell
由于我不熟悉这些技术,有人可以向我展示一个具有以下功能的最小示例:
$ ./script.sh "P1"
#I Space-group type (3,1,1,1,1); IT(1) = P1; orbit size 1; fp-free
$
更新:question 的公认答案不起作用。

最佳答案

由 gap-support 回答(使用 gap 的 stdin 读入能力)

#!/bin/sh

if [ "$#" != "1" ]; then
echo "Usage: test.sh <string>"
exit 1
fi;

gap -r -b -q << EOI
LoadPackage( "CrystCat" );
DisplaySpaceGroupType( "$1" );
EOI
它完全按照要求工作,即
$ ./script.sh P1
#I Space-group type (3,1,1,1,1); IT(1) = P1; orbit size 1; fp-free

关于shell - 如何从 shell 脚本调用 GAP 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13418849/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com