問題タブ [decomposition]
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.
macos - ファイルを Web サーバーに転送するときに Unicode 分解を変換する
私は OS X で Web サイト開発を行っていますが、ライブ Web サイト (Linux/LAMP を実行) の一部を自分のマシンで実行されている開発サーバーに移動することがよくあります。そのような例の 1 つは、イメージ (ユーザーが生成したコンテンツ、たとえば ftp ダウンロードを介して) をダウンロードし、それらを何らかの方法で処理して、生産サイトに戻すことです。
関連する画像ファイルは Linux マシンで作成されており、ファイル名は NFC 分解を使用して UTF-8 でエンコードされているようです。一方、OS X の HFS+ ファイル システムは、NFC で分解されたファイル名を許可せず、NFD に変換します。ただし、完了してファイルをアップロードしたい場合、Linuxは両方をサポートしているため、ファイルの名前はNFD分解を使用するようになります。その結果、新しくアップロードされた (場合によっては置き換えられた) ファイルは、予期された URL でアクセスできなくなります。
転送中 (できれば) または転送後にファイルの UTF 分解を変更する方法を探しています (convmv
良いオプションのように見えますが、このサーバーに十分な権限がないため、この特定のケースでは不可能です)。事前にやるのは無理だと思います。Transmit と rsync (通常使用するデプロイ スクリプトを使用) を使用して FTP アップロードを試みましたが、役に立ちませんでした。rsyncの--iconv
オプションは理想的に思えましたが、残念ながら、rsync 2.6.9 を実行しているサーバーはそれを認識しませんでした。
かなりの数の人が同様の問題を抱えていると思います。解決策や回避策を聞いてうれしいです!
更新:この場合、Ubuntuを実行している仮想マシンにファイルを再同期し、そこでconvmvを実行してから、ステージングサーバーに再度再同期しました。これはかなりうまく機能しますが、少し時間がかかります。おそらく、OS X に ext ファイル システムをマウントし、元の NFC で分解されたファイル名を使用して、代わりにそこにファイルを保存することは可能でしょうか?
また、私のユースケースである将来のWordPressインストールでこの問題をすべて一緒に回避するには、ファイルをアップロードするadd_filter('sanitize_file_name', 'remove_accents');
前に単純なものを追加できます。
database - 関係の依存関係を維持する分解は、損失のない分解であると言えますか?
分解が依存関係を保持するかどうかを尋ねたいのですが、それは常に損失のない分解になるのでしょうか...?
リレーションRがあり、このテーブルを2つのテーブルR1とR2に分解して、R1とR2がRに存在するすべての依存関係を保持するとします。したがって、この分解はロスレスになるか、答えられません。
案内してください。ありがとうございます。
design-patterns - データベース機能分解のパターン?
次の問題があります。私たちのエンタープライズアプリケーションにはMySQLのデータベースがあり、その構造が複雑になりすぎているようです。100を超えるテーブルがあります(7年間開発されています)。
ただし、ほとんどのテーブルは他のテーブルとはまったく関係がありません。誰もが使用する一般的なテーブル(辞書)がいくつかありますが(そのようなテーブルは約20個)、それだけです。このデータベースをより高速で信頼性の高いものにする方法について疑問が生じました。
私はデータベースの分解についてたくさん読みました。つまり、さまざまなドメインに関連するテーブルをさまざまなデータベースに配置します。たとえば、運送状やその他の紙関連のものはすべてPapersというデータベースに配置され、顧客とその注文に関連するものはすべてClientsというデータベースに配置されます。
ここに2つの問題があります。
- ユーザーは、エンタープライズアプリケーションが単一のドメインで動作していることを確認する必要があります。開発者は、データベースを操作するコアをある方法で変更して、複数のデータベースに対応できるようにする必要があります。
- 共通のテーブルが問題を引き起こします。それらは単一のデータベースに保持する必要があり、分解後にすべてのデータベースに複製することはできません。したがって、クエリSELECT * FROM A JOIN Bを作成するにはどうすればよいですか?AとBは異なるデータベース(異なるサーバー上)にありますか?
どちらの質問も実際には同じ問題に対処しています。この問題を解決するための一般的なエンタープライズパターン(GoFなど)はありますか?特にJavaEEに適したパターンに興味があります。
matlab - [ab] = cholcov関数は、対称正定行列に対してa=[]およびb=NaNを返します
私はこのマトリックスを持っています:
それは対称的です:
そして正の明確です:
を使用する[a b]=cholcov(S)
と、returnsa=[]
と。を返しますb=NaN
。それはMatLabヘルプで書かれてい[T,num] = cholcov(SIGMA)
ます...If SIGMA is not square and symmetric, num is NaN and T is empty.
もちろん、chol(S)
この関数はこの関数をエラーなしで分解します。chol
との違いはわかりcholcov
ませんが、選択肢がないので重要ではありません。mvnrnd(zeros(1,2),S)
いくつかの乱数を生成しようとすると、関数からエラーが発生します。
??? Error using ==> mvnrnd at 118
SIGMA must be a symmetric positive semi-definite matrix.
誰かがここで何が悪いのか教えてもらえますか?ありがとう。
objective-c - location of pointers in Objective C instances
I am designing automatically persistent objects, and for that I need (a) to locate members which are pointers, (b) to find their locations. The compiler has this information, and I expected that the reflection would provide it, but I cannot figure out how to do it. For example, if an object starts at address 505060
matrix - 半正定値行列を正確に分解し、線形方程式で下三角部分を使用する方法
n 個の任意の px 1 ベクトル x_i、pxk 行列 A_i、および npxp 正定値行列 S_i があり、*S_i* の一部 (多くの場合、ほとんど) は同じです (たとえば、2 つの異なる S 行列のみが適用され、1 つの正定行列が適用されます)。 i=1,..., n-1 および i=n の半正定 S)。すべての x_i と A_i に対して次の線形変換を行いたい:
x_i* = inv(L_i)x_i および
A_i* = inv(L_i)A_i、ここで
L_i は下三角行列であるため、L_i L'_i=S_i (または、D_i が対角行列の場合、L_i D_i L'_i=S_i よりも優れています)。
n は数個から数千個、またはそれ以上の範囲で、p は通常 10 未満、k は通常 100 未満です。Sにはゼロを含む行と列を含めることができ、元は _BB' として形成されます。ここで、B は下三重対角行列です。ただし、これらの B は使用できません。
精度を重視して、速度と精度の点でこれを達成する最適な方法は何でしょうか?
現在、私は自分で書いた LDL 分解関数をさまざまな S に使用し、L を反転して変換を計算しています。これは、少数の異なる S と大きな n のケースを扱ってきたからです。私が正しく理解していれば、精度の点で行列を明示的に反転せずに線形方程式を解く方が賢明ですが、速度のためにはより良いオプションのようです?
私は Fortran を使用しており、安定しているとは保証できない独自の LDL 分解などではなく、因数分解に LAPACK 関数を使用したいと考えていますが、どちらが良い方法かわかりません。
arrays - 何百万もの粒子の x、y、z 位置を可視化する最良の方法
ボックス内の何百万もの粒子を視覚化するために人々が使用するさまざまなアルゴリズムに興味があります。Cloud-In-Cell、アダプティブ メッシュ、カーネル スムージング、最近接グリッド ポイント メソッドなどを使用してメモリの負荷を軽減できることは知っていますが、これらをオンラインで行う方法に関するドキュメントはほとんどありません。
つまり、次の配列があります。
たとえば、i = 1 億です。Mayavi/Paraview のようなパッケージは必要ありません。これを自分でコーディングしてから、分解されたマトリックスを (オンザフライ レンダリングではなく) Mayavi にロードしたいです。ポジション。チュートリアルをいただければ幸いです。
parallel-processing - 並列プログラミングにおける標準的な不均一な空間ドメイン分割方法は何ですか?
動機付けの例: イギリスの地図に基づいて、陸上のみの感染シミュレーションを並行して実装しようとしています。
陸域全体に均一に広がるポイントをサンプリングし、各タイム ステップでの感染状況を判断します。これは、隣接するポイントの以前の状況に依存します (SIR モデル)。国は不規則な形をしているため、デカルト座標は負荷分散がうまくいきません。標準として考慮すべきより効率的な分解方法は何ですか?
どうもありがとう。
c - 数値のすべての個別のパーティションを生成する
特定の番号の個別の要素を持つすべての可能なパーティション (2 つ以上の部分) を生成する C コードを作成しようとしています。特定のパーティションのすべての数の合計は、特定の数と等しくなければなりません。たとえば、 inputn = 6
の場合、異なる要素を持つ 2 つ以上の要素を持つすべての可能なパーティションは次のとおりです。
- 1、5
- 1、2、3
- 2、4
再帰的なアプローチが機能するはずですが、個別の要素の追加された制約を処理できません。C/C++/Java の疑似コードまたはサンプル コードを提供していただければ幸いです。
ありがとう!
編集:作業が簡単になる場合は、少なくとも 2 つの要素を持つパーティションの制限を無視できます。これにより、番号自体をリストに追加できます (たとえば、6 自体は些細ですが有効なパーティションになります)。
relational-database - リレーションを BCNF に分解する
関係がいつ Boyce-Codd Normal Form にあるか、そうでない場合に情報 BCNF を分解する方法を確立するのに問題があります。この例を考えると:
R(A, C, B, D, E) と関数の依存関係: A -> B, C -> D
分解するにはどうすればいいですか?
私が取った手順は次のとおりです。
R4 = ACE (この関係に FD クロージャーはありません)
これで、ACE が関係全体を構成することがわかりましたが、分解の答えは、AB、CD、ACE です。
リレーションを BCNF 形式に適切に分解する方法と、完了したことを伝える方法に苦労していると思います。これらの問題を解決するときの思考プロセスを教えてくれる人に本当に感謝します. ありがとう!