残念ながら、私はこの問題に対する答えを見つけることができず、質問をしなければなりませんでした。他の場所に答えがある場合は、お詫び申し上げます。私は IDL を初めて使用し、これを完全に表現する方法を知りませんでした。
私のコードは以下の通りです:
for i=0,delta-1 do begin
print, flrarray[i]
numbr_for_arr=where(del gt ((flrarray[i])-0.000001) and del lt ((flrarray[i])+0.000001))
print,numbr_for_arr
postnflrarray[i]=numbr_for_arr
endfor
デルタは単なる数値です。finalflrarray は、del (巨大な配列) から必要な特定のポイントを持つ単なる配列です。
私の出力は以下の通りです:
...
24.000231 ; flrarray
23392 ; numbr_for_arr
24.748374
26612
24.213783
27473
24.368324
30637
24.711283
32432
24.426823
37675
24.039426
40733
flrarray の出力と postnflrarray
... 24.000231 24.748374 24.213783 24.368324 24.711283 24.426823 24.039426
... 23392 26612 27473 30637 32432 -27861 -24803
ご覧のとおり、numbr_for_array を出力してから追加するまでの間に何らかの方法で
37675 -> -27861 および 40733 -> -24803
なぜこれが起こっているのかについての洞察は大歓迎です。
flrarray 配列/ベクトルが外部ソースから来ていることを強調しなければならないので、このメソッドを使用して「del」配列内の場所を見つけます。
ご協力ありがとうございました