问题标签 [imsl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 在 C# 中从 IMSL MCHOL (Fortran) 替换 Cholesky 分解
我正在将 Fortran 程序转换为 C#。这必须一点一点地完成,并在此过程中进行概念证明。
这些初始步骤之一是复制它使用的 IMSL 功能。幸运的是,它只使用了少数几个:一些微不足道的随机数生成,一些微不足道的正态分布反转,还有一个不那么微不足道的:MCHOL。
从文档中:
计算实对称矩阵 A 加上对角矩阵 D 的上三角分解,其中 D 在 Cholesky 分解期间按顺序确定,以使 A + D 非负定。
例程 MCHOL 计算 A + D 的 Cholesky 分解 RTR,其中 A 是对称的,D 是具有足够大对角元素的对角矩阵,使得 A + D 是非负定的。该例程类似于 Gill、Murray 和 Wright(1981 年,第 108-111 页)所描述的例程。但是,在这里,我们允许 A + D 是单数的。
(链接中有更多详细信息和示例)。
对于我的概念证明,我需要能够复制 MCHOL 文档示例中提供的结果:从示例中传递此矩阵:
并获得以下回报:
到目前为止,我已经尝试使用Math.NET,但它不会在这个示例矩阵上运行,因为它不是正定的。
我还尝试了 ALGLIB 的部分内容,特别是spdmatrixcholesky。它似乎有效,但仅适用于部分矩阵:
有谁知道我在这里做错了什么?我需要在这里调用不同的函数吗?
由于似乎没有快速的答案,如果我了解基础数学可能是最好的,这样我至少可以尝试弄清楚这里发生了什么。任何理论基础或指针也值得赞赏。
fortran - 使用 IMSL 时出现 MKL 错误
我正在使用带有 MKL 的 Intel Virtual Fortran 的 IMSL。我尝试使用 IMSL 的例程。它编译得很好,但是当我尝试执行该文件时,它出现了一个错误:
以下是我正在使用的代码:
我该如何解决这个问题?
在我添加使用 EVCRG_INT 之后
它给出了错误信息:
谢谢。
在 IMSL 用户指南中,它说:
matlab - 如何将变量传递到 Fortran IMSL neqnf 非线性方程求解器?
我一直在努力将我的 MATLAB 程序转换为 Fortran(同时仍然利用 MATLAB 的一些功能)。我正在尝试利用 IMSL 中可用的例程。它提供了一个非线性方程求解器neqnf,但我无法弄清楚如何传递根据何时调用子例程而变化的变量(例如,您可以在MATLAB 中使用fsolve)。例如,下面是一个用 Fortran 编写的用于 MATLAB 的 mexFunction,它调用 neqnf。子程序 sub 包含要求解的方程组。如何通过 neqnf 将变量传递给 sub 以获得两个线性方程的系数和截距?
谢谢!
fortran - 在 IMSL 库中使用 nconf 函数时如何处理/处理此错误?
我使用nconf
IMSL 库中的函数来解决受约束的非线性优化问题。我简化了问题以描述发生的错误。
目标函数为log(x1 * x2 - x3 ^ 2)
。约束为x1 * x2 - x3 ^ 2 > 0
。fortran 代码如下。
当我运行代码时,约束不起作用。 nconf
做搜索(x1, x2, x3)
,x1 * x2 - x3 ^ 2 < 0
但随后程序抛出异常。x1 * x2 - x3 ^ 2
是在log
函数中。不能是负数。如果约束有效,x1 * x2 - x3 ^ 2
则不应为负。我不知道 nconf 函数如何搜索点 x 以及约束是如何工作的。
fortran - FORTRAN 77 NEQNF IMSL 求解器,2 个变量,6 个方程
我正在尝试使用 NEQNF 来求解 6 个非线性方程组。我需要确定 2 个变量来解决我的系统问题。根据描述,我需要定义“N”,即“X”(变量)和“F”(方程)的长度。
这是否意味着我只能在 X=F 时使用这个求解器?因为在下面的描述中给出的例子中 N 被定义为一个整数。
或者我可以将 N 定义为向量吗?在这种情况下,N 的声明应该是什么样子?
java - 使用时间序列数据进行预测的 Java 代码
我需要为一些硬编码值构建一个简单的预测程序。我发现 rougrwave 有 IMSL 库和适用于 java 的 JMSL,但我无法在任何地方找到它以供下载。
但是该库不可供下载。有没有其他简单的方法来解决这个问题?
chat - mIRC 套接字从 url 读取文本
我一直在尝试使用 mIRC 从 url 读取一小段文本,并在有人键入 !test 时将其回显/写入聊天。
套接字主机是 XXXXXXXXXXXX,因为它在我的 PC 上的 wamp 上运行。
页面上的数据不长,这里是页面。
SnOwEfLaKe 的战地 4(pc) 统计 | 排名:140 | 杀戮:66393 | 日/日:2 | 宽/长:1.38 | 评分:60646533 | 上场时间:53.27 天 | 准确度:14.17%
我没有运气
fortran - 在 IMSL 库中使用 CodeBlocks 中的 gfortran 未定义对 `linrg_` 的引用
如何在 Code::Blocks 的 gfortran 中使用 IMSL 库?在构建它们之后,我的程序出现了问题。构建后的消息是:未定义的对 `linrg_' 的引用
我的代码是:
visual-studio-2010 - 参数和过程错误
我必须使用neqnf
IMSL 库中包含的子程序 ( ),它可以让我解决非线性系统。(链接到用户手册,neqnf 页面在这里)
main.f90
,是:
其中子程序 FCN 在外部模块中编码,modx.f90
:
但我得到这三个错误:
注意:如果我将所有代码都放在主程序中,一切都会好起来的!而如果我使用模块进行编码(正如我所做的那样,实际发布的代码)我会得到那个错误!谁能帮我?