linear-algebra

    2

    1答えて

    この質問の長さをお詫び申し上げます。 私はここ数日間、GJKアルゴリズムを使いました。私はそれの背後にある一般的な概念を理解し、http://www.codezealot.org/archives/88のWilliam Bittleによるすばらしい記事のおかげで2Dでのその実装の根っからの味が大部分を理解しています。 擬似コード(記事の最後にあります)を自分のC++プロジェクトに実装しましたが、私

    10

    2答えて

    複雑なタスクの一部として、私はmatrix cofactorsを計算する必要があります。私はこれを使って簡単な方法でこれを行いましたnice code for computing matrix minors。 def matrix_cofactor(matrix): C = np.zeros(matrix.shape) nrows, ncols = C.shape f

    0

    1答えて

    私はスパース行列を解くためにC++でumfpackを使用しています。 [UMFPACK PIVOT TOLERANCE]パラメータが設定されている場所を見つけるのが難しいです。誰もこの制御パラメータを設定する方法を知っていますか? 私の現在のコードは umf::symbolic_type<double> Symbolic; umf::numeric_type<double> Numeric;

    1

    1答えて

    私はこれを明確に説明することができれば幸いです。私は3Dで円の最も近い点を計算しようとしています。私は次の解決策を見つけました: http://www.geometrictools.com/Documentation/DistancePoint3Circle3.pdf 私のコードは以下のとおりです(Luaで書かれています)。主な問題は、投影Qが正しくないか、正しく計算する方法がわかりません。あなた

    1

    1答えて

    キューブ/境界ボックスの内側または外側にあるかどうかをテストする必要のあるオブジェクトを追跡しています。それらが外側にある場合、私はレイ・プレーンの交差を行い、キューブの1つの平面上の点を計算します。光線はボックスの中心から始まり、オブジェクトの方を指します。飛行機は、立方体を構成する6つのうちの1つです。 私が避けたいのは、6面のすべての面で常にレイ面交差をテストしていることです。だから、私は賢

    3

    2答えて

    ほとんどのアプリケーション(特に統計的なもの)ではthin SVDで十分です。しかし、場合によっては、行列(およびその共役)のゼロ空間の正則化を得るために完全なSVDが必要です。 Rのsvd()は薄いバージョンしか返さないようです。フルバージョンを作成することは可能ですか?代わりがありますか?

    35

    2答えて

    現在、仕事をしているnumpyを使用しています。しかし、私は数千の行/列を持つ行列を扱っているので、この数値は数万に上がります。この種の計算を高速に実行できるパッケージが存在するかどうか疑問に思っていましたか?

    0

    1答えて

    私は現在、A * pathfinding関数の結果からポイント(x、y)の配列を持っています。この配列は、最初のインデックスが文字に最も近いポイントであり、次のインデックスがパスで移動する必要がある次のポイントになるように設定されます。 これらの点がグリッド上にある(現在のグリッド上の各点間の8個のピクセルが、これはchangableです。)彼はその時点で到着したとき 私の現在の戦略は、最初のポイ

    13

    4答えて

    Rubyから使用できるSparse Matrixライブラリを探しています。私は現在、 "gsl"宝石によって提供されているGNU Scientific Library bindingsを使用していますが、専用の希薄なマトリックスライブラリを使用した場合、私のアプリケーションはより最適化されます。私はlinalgとNArrayのライブラリを調査しました。これらの3つのライブラリのどれも、疎行列最適化

    2

    2答えて

    一般化固有値問題を通常の固有値計算に変換しようとしています。 A1 = inv(T)*A; [V1,D1,flag1] = eigs(A1); が、私は同じ結果を得るべきではない:私はに変換今 [V,D,flag] = eigs(A, T); : 私はこのコードを持っていますか?私は、MATLABドキュメントの理解どのようなことから、最初の方程式は解く: A*V = B*V*D 2つ目は