問題タブ [mathematical-lattices]

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 投票する
2 に答える
3435 参照

python - grid_2d_graph を使用して networkx で MxM ノードの正方形グリッドを描画するときの回転効果を削除します

ノードを持つ通常のグラフ (ラティス ネットワークとも呼ばれます) を生成する必要があります100x10010x10次のコードでグラフを描くことから始めました。

しかし、私が得るのはこれです:

ここに画像の説明を入力

出力にあるこの種の回転効果を取り除く方法はありますか? 最終的なネットワークは、次のようにチェス テーブルのように見える必要があります (ラベルは無視してください)。

ここに画像の説明を入力

また、各ノードに 0 から 9999 の範囲の ID を与える必要があります(100x100 ネットワークの場合)。どんなアイデアでも大歓迎です!

0 投票する
0 に答える
94 参照

hash - 一意のサイト ラベル付きラティス ツリー (ポリノミノのようなラティス埋め込みグラフ) の決定。polyomino ハッシュではありません

私はいくつかの完全ではないポリオミノ格子 ((最後のコメントを参照) 埋め込みグラフ (以下の例) のようなより多くの結合動物) のハッシュを構築しようとしていますが、いくつかの問題に遭遇しています。

標準的なポリオミノの場合、次のような格子埋め込みグラフがあります (テトリスを考えてください)。

そして、これらのようなものについては、 アルゴリズムの作業を参照して、一意のフリー ポリオミノ (またはポリオミノ ハッシュ) を識別します。

ただし、私の場合は次のとおりです。

どこで - そして | 「結合された」隣人を示す

ここで、私の場合、回転 (最初と最後など) は同じ構造であると考えていますが、2 番目と 5 番目は同じ構造であり、3 番目と 4 番目も同じ構造です。また、「フリップ」も等しいので、次のようになります。

これらの「構造」を生成するコードは、次のように報告します。

(2Dに投影された場合)どれが

構造

現在、この構造を次の文字列として解析します: YXXXb0B1 ここで、b"num" は「分岐」ポイントを示し、B"num" は分岐の数を示します。現在、B"num" は n が小さい場合 (4 ノードなど) は自明ですが、n=7 の場合は次のようになります。

したがって、n=4 の場合、1 つの Y と 3 つの X がある場合、3 つの固有の構造が必要であると予想されます。

私の現在のラベル付け/ハッシュでは、6つの「一意の構造」が得られますが、文字列操作で2つのケースを排除できると思います(最初と最後の文字を交換し、次に2つの中央の文字を交換します)が、これはおそらく排除されません重複する分岐点モデル (b1 または b0 は両方とも分岐点である可能性があり、「回転」によって分離されているだけです)。

簡単にするために、私は現在、Y のみが「分岐」できる (2 つ以上の「結合された」隣人を持つ) という追加の制限があり、最大 3 つの結合された隣人を持つという制限がある (そうではない) ラベル付きラティスに興味があります。典型的なポリオミノはすべて含まれます)。実際、それらは「構造」や結合格子アニマルのようなポリオミノの奇妙なクロスであり、格子ツリー (ループ/サイクルなし) に似ています (リンクを参照: http://www.ms.unimelb.edu.au/~andrewr/ research/intro_html/node8.html )。

編集:

フォローアップとして、次のルールを使用してこれらの構造のいずれかを記述することで解決したと思いました: (+ = 連結)

番号。ブランチの + ブランチ ID (ランダムに割り当てられた) + そのブランチのシーケンス + 次のブランチ ID + シーケンス .... など。しかし、これはまだうまくいきません。

しかし、これで十分かどうかはまだわかりません。Yが3つ以上の結合された隣人を持つ場合、それは機能しないことを私は知っていますが、Yの結合された隣人<= 3の私の限られたケースでは機能するようです。

0 投票する
1 に答える
677 参照

math - 中心六方格子の生成

六角形の格子を作成したいのですが、図に示すように、基本的に格子全体が中央の六角形であり、その周りに六角形のレイヤーが配置されている必要があります。(私の説明は混乱しているかもしれませんが、今のところそれが私が見ている方法です)。

そこで、以下の格子の座標を生成したいと思います。六角形の正方格子を作成する多くのアルゴリズムを見つけましたが、格子をたどるアルゴリズムもあるかどうかを尋ねたいです。

ここに画像の説明を入力

0 投票する
1 に答える
321 参照

python - numpy の n-dim fft のスケーリング係数

穴のグリッドのイメージがあります。で処理するとnumpy.fft.fft2、周期性や基底ベクトルなどをはっきりと確認できる素敵な画像が得られます。

しかし、どうすれば格子間隔を抽出できますか?

実空間の格子点の間隔は約96pxであるため、k 空間での間隔は になります2*Pi / 96px = 0.065 1/px

当然、 numpy はサブピクセル間隔の画像配列を返すことができないため、何らかの方法でスケーリングされます-k空間の間隔は約70pxです。

しかし、スケーリングはどのように行われ、正確なスケーリング係数は何ですか?

0 投票する
0 に答える
87 参照

sequence - N 要素の順序付けられたセットのインデックスを見つける

問題の説明: を含む N 個の整数のリストのセットは、1 つの整数から開始i1,i2,....,iNし、最後に追加された整数以上の整数を繰り返し追加すること0<= i1<=i2<=i3<=....<=iN <=Mによって作成されます。0<=i1<=Mリストの最終セットを取得するために最後の整数を追加すると、インデックスは から始まり0 to BinomialC[M+N,N)]-1ます。

リストは

別の整数を追加するi2>=i1と、

インデックス付き

このインデックスは、i1、i2、...、iN および M で表すことができます。条件 >= が存在しない場合は、単純に になりますi1*(M+1)^(N-1)+i2*(M+1)^(N-2)+...+iN*(M+1)^(N-N)。ただし、上記の場合、制限により指数にマイナスのシフトがあります。たとえば、N=2 の場合、シフトは -i1(i1+1)/2 で、インデックスはi = i1*(M+1)^1 + i2*(M+1)^0 -i1(i1+1)/2.

質問: 特に数学のバックグラウンドを持つ人で、一般的な N 要素の場合のインデックスの書き方を知っている人はいますか? それとも最終的な表現ですか?どんな助けでも感謝します!ありがとう!