由于Ada没有任何用于科学计算的好的库,我想知道是否有人能够在Ada中使用Matlab数学函数,例如eig(用于计算特征值和特征向量)。
我看到simulink和Ada存在一些接口。但是我不是Simulink的用户。我只希望能够通过Ada函数和过程来使用Matlab数学函数。
PS:在较早的Ada文档中,有很多讨论,并承诺创建类似于NAG或NUMAL的良好数值库。我确实想知道为什么从未成功地具体化这一切,并且没有提供任何良好而强大的科学计算库。我确信,Ada语言不会比其他任何科学计算语言都苍白。
非常感谢...
我什么都找不到,这确实有点令人惊讶。
如果具有C接口,则可以将自己的绑定写入所需的例程。只需使用interfacing pragmas。包Ada.Interfaces.C中定义的类型也将有所帮助。不过,让事物链接并在自定义绑定上进行测试可能会有些困难。
[另外,看起来Gnat的最新版本带有binding generator,可以从C头文件中为您创建Ada绑定。还有另外六种这样的工具available here,其中包括一种我已经听说过的有关Windows COM DLLs的工具。
使用Ada的lapack
非常容易。您无需为此呼叫Matlab
。 Lapcak
与Matlab
也使用相同的库。
Ada.Numerics下执行矩阵和向量运算的软件包很少