问题标签 [inversion]

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.

0 投票
0 回答
628 浏览

matrix - clBLAS (OpenCL) 矩阵求逆

是否可以使用 clBLAS 计算一般矩阵求逆?或者指向一个示例内核?要反转的矩阵将相当小(通常为 7*7、28*28 或 84*84),但反转只是较大算法的一部分,因此仍应在 gpu 上完成。提前致谢。

0 投票
2 回答
2481 浏览

coq - 当目标是类型时,为什么 Coq 不允许反转、破坏等?

在编写程序时refine,我试图inversion目标是. 这是我尝试做的证明的简化版本。FalseType

Coq 抱怨

但是,由于我什么都不做T,所以没关系,...或?

我摆脱了T这样的,证明通过了:

Coq 抱怨的原因是什么?仅仅是 , 等方面的缺陷inversiondestruct

0 投票
1 回答
283 浏览

coq - 推翻一个明显不正确的假设并不能证明是错误的

我试图证明一个微不足道的引理,这是对我在另一点发现自己的情况的再现。

证明看起来很简单:

现在我的目标状态显示:

很明显,S n不能与 统一n,所以我应该能够反转这个假设:

但是,我现在的状态不是解决目标,而是显示:

嗯?我现在只是在一个无限循环中。我可以inversion H0,我只是得到一个H1,等等。

我能够通过归纳证明引理:

但这有点傻,因为可以想象,首先允许自反相等的统一算法不应该S nn.

这里发生了什么 ?

0 投票
1 回答
252 浏览

c - 如何有效地仅反转分配矩阵的一部分

我有一个算法,它分配一个具有预定义大小 N x N 的复数双矩阵“A”。元素最初为零。我还分配了大小为 N x N 的矩阵来存储逆矩阵“A_inv”。在算法期间,“A”的元素被填充。在每次迭代 i 时,我都会得到一个大小为 ix i 的子矩阵。所以第二次迭代看起来像这样,其中 N=4:

其中 x 表示一些非零值。现在我希望反转矩阵的非零部分(本例中为 2x2 矩阵)。到目前为止,我一直在通过以下方式做到这一点:

  1. 将“A”的非零元素复制到 2x2 gsl 矩阵
  2. 使用 gsl LU 分解来反转 2x2 gsl 矩阵
  3. 将 2x2 倒置矩阵复制到 A_inv

这种方法的问题是我必须在每次迭代中复制一个矩阵两次。一次到较小的 nxn gsl 矩阵,一次将生成的反向 nxn gsl 矩阵复制到 A_inv。

我想知道是否有人知道更直接的方法。有没有办法使用一些 gsl 函数来仅反转矩阵的一部分并忽略任何零元素?说这样的话:

其中 n < N。这里invert_submatrix()只考虑 A 的 nxn 部分。此外,原始矩阵“A”不能被这种反转改变。也许最后的需求使得无论如何都必须复制矩阵,在这种情况下,它不会比我现在做的更有效率。也就是说,gsl 算法往往比我通常想出的任何方法都高效得多。因此,对此的想法仍然非常受欢迎。

0 投票
3 回答
102788 浏览

python-3.x - TypeError:切片索引必须是整数或无或具有 __index__ 方法

在 IDLE 中运行代码时会出现以下错误:

代码:-

0 投票
1 回答
1046 浏览

matrix - CUDA 上的小矩阵求逆

我需要你的一些建议,我希望它不会占用你很多时间。

所以这是我的问题:我有一个小的方形密集矩阵,可能大小为 4x4、8x8、16x16,我想使用 CUDA 对其进行逆运算。

问题的特殊部分是我有 1024 个空闲 cuda 线程来执行此任务。所以我怀疑像 Gauss Jordan 这样最普遍的逆向方法在这里不能正常工作,因为它们稍微平行,并且只会使用大量 1024 中的大约 4-16 个线程。

但是我还能如何使用所有可用线程来反转这个矩阵呢?

感谢您的关注!

0 投票
1 回答
63 浏览

algorithm - Find the optimal sorting algorithm by inversions number/Pearson's r

is it possible to find a optimal sorting algorithm with a given number of elements in a presorted sequence and a inversions number or a Pearson's r of that sequence?

For example I have a presorted sequence of 262143 elements.

The maximum amount of inversions is donated by (n(n-1))/2 where n is the number of elements in the sequence (see here page 2 for this assumption). For this example the maximum is therefor 34359345153.

Now the number of inversions of my presorted sequence is 1299203725 which is 3.78% of the maximum. My Pearson's r is 0.9941. By my understanding this should be a presorted sequence with a high "sortedness" (Please correct my if I'm wrong).

I found many references to the number of inversions and the Person's r as a way to define the "sortedness" of a sequence but I could not get some kind of comparison for which number of elements and inversions/Pearson's r which sorting algorithm is the preferred one.

Thanks for your help.

0 投票
1 回答
290 浏览

algorithm - 细化合并排序以计算反转次数

我正在开发一个改进的版本,merge sort以便它counts the number of inversions

注意:我不希望你完成我的作业,但我对此有一些想法,并且很想知道它们是否有意义。

由于合并排序是O(nlogn我需要在不降低其整体性能的情况下对其进行调整。我认为对此我必须插入一个需要恒定时间的测试(1)

(1)我测试反转(上)A[i] > A[j] given that i<j

为了找到合适的位置插入测试,我问自己:when during the execution of merge sort is guaranteed that the test runs unrelated to n?

我认为唯一正确的地方是the list is split into one-element lists

因此,我会提出以下算法调整

这有意义吗?

最终,我必须进行倒数计数,直到算法终止。有人可以就这个问题给我一个提示吗?

(直观地说,当合并完成时算法终止时,我会计算合并部分。)

干杯,安德鲁

0 投票
1 回答
1258 浏览

matlab - 我的遗传算法程序没有收敛到超出一定的健身水平

我正在尝试为古应力反演编写遗传算法程序,即从给定的一组数据中我想计算应力张量。(最小化问题)

我已经生成了一个用于测试的合成数据集,但它没有给我想要的结果。

我的适应度值在几次初始迭代中收敛得非常快,但一段时间后它会变平并且不会给出低于该值的适应度。

期望的健身 ~ 10^(-6) 我得到的健身 ~ 0.015

我还注意到我正在使用的数据群(总体大小 = 20),它们中的大多数在几百次迭代后采用相同的值,即 20 个值中的大约 15 个值是相同的,所以我猜是交叉将停止产生新的后代。

遗传算法的逻辑是 - 种群大小 20 迭代次数 1000 单点交叉锦标赛 选择变异概率 = 1/no。位数

我在matlab上进行过编程

0 投票
1 回答
174 浏览

c++ - 为什么这个反转计数合并排序算法给出错误的答案

这是我为 C++ 中的反转计数编写的代码。如果你写一些其他的递归方法。请尝试向我解释。我将反转计数存储在 countI 中。我得到 2 作为我在主函数中声明的数组 A[] 的输出。