我必须在AMPL中使用一个错误函数,它本身没有,所以我跟着a blog post使用.dll来完成它。
但是当我输入“display myerf(1.96)”时,窗口会出现错误“无法调用不可用的函数myerf”。
我不知道如何处理这个,因为我已经将.dll文件放在了AMPL文件夹中。 有谁知道如何使这项工作?
答案 0 :(得分:0)
错误消息can't invoke unavailable function myerf
表示没有任何已加载的函数库提供myerf
函数。这很可能是因为您的库名称不同,因此未自动加载或不在动态库搜索路径中。通常AMPL会自动加载amplfunc.dll,但您可以使用以下命令手动加载任何名称和任何位置的库:
load path/to/amplfunc.dll;
其中path/to/amplfunc.dll
是函数库的路径。您可以使用以下命令获取当前加载的库集:
display _LIBS;
有关AMPL库的更多详细信息,请参阅http://www.ampl.com/NEW/libload.html
<强>更新强>
请注意,AMPLGSL是一个提供对GNU科学图书馆(GSL)功能的访问的AMPL函数库,已经有error function。有关详细信息,请参阅AMPLGSL documentation。