- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在 SQL Server 2008
中发送一个数字表,例如:
1att 2att 3att 4att 5att 6att 7att ... attn
--------------------------------------------
565 526 472 527 483 529 476 470 502
497 491 483 488 488 483 496 515 491
467 516 480 477 494 497 478 519 471
488 466 547 498 477 466 475 480 516
543 491 449 485 495 468 452 479 516
473 475 431 474 460 342 471 386 549
489 477 462 428 489 491 481 483 475
485 474 472 452 525 508 459 561 529
473 457 476 498 485 465 540 475 525
455 477 415 434 475 499 476 482 551
463 476 476 471 488 526 394 439 475
479 473 491 519 483 474 476 474 478
455 518 465 445 496 500 518 470 536
557 498 492 449 478 491 492 476 460
484 509 538 473 548 497 551 477 498
471 430 482 437 516 483 487 453 456
505 476 489 495 472 476 487 516 466
466 495 488 475 550 565 510 473 515
470 490 480 475 479 544 468 486 496
484 495 524 435 469 612 493 467 477
....
.... (several more rows)
....
511 471 529 553 539 501 477 474 494
通过 Visual Studio 2008(在 C++ 项目中)到数学库 LAPACK
。
是否可以将 SQL Server 中的表传递给 LAPACK
(通过 visual studio 2008 中的 c++)像内存指针,或者存储所有表在 RAM 中,LAPACK 读取内存或指向内存的指针,但不写入文件并读取它
您能否建议如何将这样的表(可能是表在内存中的位置,或类似的东西)传递给 LAPACK?
(所以我可以通过 visual studio 2008 c++ 项目使用存储在 SQL Server 中的表的 LAPACK 进行一些计算)
----编辑---
@MarkD,正如您在回答中所说,您能否给出一个使用 std::vector 类使用示例中的想法计算 SVD 的示例?
最佳答案
LAPACK 要求发送给它的数据采用 FORTRAN 样式(列顺序)数组。您将无法将数据直接从 SQL 传递到 LAPACK,但需要将数据读入按列排序的连续内存数组,并将指向数组第一个元素的指针传递给感兴趣的 LAPACK 例程。
有许多用于 C/C++ 的 LAPACK 包装器可以使这变得容易得多。
编辑:刚刚看到您正在专门寻找如何传递这样的数组。正如我所提到的,有许多包装器可以执行此操作(只需搜索 C/C++ LAPACK)。创建数组的一种简单方法是使用 std::vector 类。然后你会逐列读取数据,将元素添加到你的 vector 中 - 所以如果你想对你在你的例子中显示的数组进行列排序,你的 vector 最终会看起来像:
//Column 1 Column 2 Column 3 ... last element
[565 497 467 488 ... 526 491 516 466 ... 472 483 480 547 ... ... 494]
然后您可以将第一个元素的内存位置传递给感兴趣的 LAPACK 例程,例如:
&myVector[0]
这可以使用 std::vector,因为标准确保 vector 使用连续的内存存储。 LAPACK 例程还需要您传递给它的矩阵/vector 的大小/维数(因此您需要为函数调用计算/指定这些值)。
如果您可以发布您要使用的特定 LAPACK 例程,我可以给出更详尽的示例。
关于c++ - SQL Server 2008,数值库,c++,LAPACK,内存问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6066676/
如果我有一个 1,000 x 1,000 的方阵,Lapack 可以计算这个矩阵的特征向量和特征值吗?如果可以,需要多长时间?对于 10,000 x 10,000 矩阵甚至 1,000,000 x 1
我正在使用 LAPACK 的 zheev(在英特尔 MKL 中)。我得到了 int INFO=99。我一直在互联网上搜索这对应的内容,但找不到包含所有整数错误代码及其含义列表的文档。 有没有人有指向
通过以下方式安装 lapack 后: yum install lapack lapack-devel 并重新启动 httpd 服务我仍然得到 Fatal error: Class 'Lapack' n
Lapack 很可能没有任何计算行列式的例程。但是,我们可以使用 LU、QR 或 SVD 分解来计算它。我更喜欢使用 LU 分解。现在 lapack 使用一些 dgetrf 子程序将矩阵 A 分解为带
根据官方用户指南,sgelsd用于解决最小二乘问题 min_x || b - Ax ||_2 并允许矩阵 A 为矩形且秩亏。并且根据sgelsd源码中的接口(interface)描述,b作为输入输出参
我用 Eigen 和 实现了一段代码。我希望 Eigen 使用 BLAS 和 LAPACK 。 我看过here ,这是可能的,但我不知道如何或将这些值/指令放在代码中的位置。 我必须在某处指定值 EI
简介:我用 C++ 开发了一个应用程序,它在 Windows 上使用 LAPACK(LAPACKE) 和 MPI。在 Windows 中工作正常(编译和链接通过 Code::Blocks IDE 处理
我最近从 Linux 切换到 Mac OS。我需要 BLAS 和 LAPACK 来做一些计算。通过查看 BLAS 的维基百科,我了解到这两个库已经在 Mac OS 中实现。不过,据说 Apple's
我基于以下链接为我的 Visual Studio 2008 构建了 LAPACKE 的 DLL 和库: http://icl.cs.utk.edu/lapack-for-windows/lapack/
我很好奇用于在 MATLAB 中计算 SVD 的 DGESVD 函数。据我从 Gene H. Golub 和 Charles F. Van Loan 的“矩阵计算”中可以看出,使用了两种可能的双对角化
我是数值线性代数的新手,我刚刚开始使用 LAPACK 和 BLAS。 是否有可以在打包存储和完整存储之间复制/转换对称矩阵的例程? 我找到了 dtrttp ,我可以用它来将 double 全对称矩阵转
根据我的理解,需要进行分解/因式分解(LU、QR、Cholesky 等),然后基于因式分解进行矩阵逆计算。还有其他方法可以解决这个问题吗(我试图弄清楚我是否可以坚持使用 CULAtools 试用版中免
我正在尝试编写一个函数,该函数可以为代表性不足的方程组生成单一解(例如,描述该系统的矩阵宽大于高)。为了做到这一点,我一直在 LAPACK 文档中寻找一种将矩阵行归约到它的归约梯队形式的方法,类似于
我是使用 LAPACK 例程的新手,所以我对它们不是很了解,我想在并行化循环(openmp)中使用它们。 我使用 Ubuntu 14.04LTS 并使用我的包管理器安装了 LAPACK。安装的版本是:
我在允许我求逆矩阵的 c 代码中使用 LAPACK。更准确地说,我使用 dgetrf_ 然后使用 dgetri_ 进行反演。 但是当我处理大矩阵并且我不知道矩阵是否可逆时,我浪费了很多时间来反转不可逆
我想使用Fortran和LAPACK对角化一个实对称矩阵。 LAPACK基本上提供了两个例程,一个例程在完整矩阵上运行,另一个例程在打包存储中的矩阵上运行。虽然后者肯定会使用较少的内存,但我想知道关于
我正在使用 LAPACK 库中的 DSYEV 和 DSYEVD 来查找特征值和特征向量(编译语法: gfortran -llapack )。但是,我发现特定矩阵的错误特征值(-0.44,0.35,0.
我想计算对称矩阵的特征值,并希望使用 C++ 中英特尔 MKL 库中的 LAPACKE_dsyev 函数来计算。但我对矩阵需要传递的形式有点困惑。 来自文档https://software.intel
我使用链接:./configure --with-blas-incdir="-L/home/moritz/build/CoinIpopt_test/ThirdParty/openblas/includ
我想安装最新版本的numpy(Python的数值库),版本(v1.6.1)还没有在Ubuntu Oneiric repositories .当我继续手动安装它时,我阅读了 INSTALL numpy
我是一名优秀的程序员,十分优秀!