問題タブ [root-framework]

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

c++ - Converting 900 MB .csv into ROOT (CERN) TTree

I am new to programming and ROOT (CERN), so go easy on me. Simply, I want to convert a ~900 MB (11M lines x 10 columns) .csv file into a nicely organized .root TTree. Could someone provide the best way to go about this?

Here is an example line of data with headers (it's 2010 US census block population and population density data):

"Census County Code","Census Tract Code","Census Block Code","County/State","Block Centroid Latitude (degrees)","Block Centroid W Longitude (degrees)","Block Land Area (sq mi)","Block Land Area (sq km)","Block Population","Block Population Density (people/sq km)"

1001,201,1000,Autauga AL,32.469683,-86.480959,0.186343,0.482626154,61,126.3918241

I've pasted the what I've wrote so far below.

I particularly can’t figure out this error when running: "C:41:1: error: unknown type name ‘UScsvToRoot’”.

This may be really really stupid, but how do you read in strings in ROOT (for reading in the County/State name)? Like what is the data type? Do I just have to use char’s? I’m blanking.

0 投票する
2 に答える
3842 参照

c++ - CERN ROOT: xy データ ポイントのペアをプロットすることは可能ですか?

CERN ROOT を使用して、おそらく y-errorbars を使用して xy データポイントのペアの 2D グラフを描画したいと思います。ただし、ヒストグラムの描画方法しか知りません。

これはCERN ROOTで可能ですか? もしそうなら、どのように?

また、これを行うためのより良いライブラリがあるかもしれないことも認識しています。私は GNUPlot を使用していますが、残念ながら、すべての機能をカバーし、双方向でデータを送信できる C/C++ GNUPlot インターフェイスが見つからないため、それを私の C++ コードとうまく統合できないようです。つまり、GNUPlot との間の両方。

より良い代替提案があれば、それは大歓迎です。

0 投票する
6 に答える
2407 参照

c++ - ユーザー入力から C++ コードを変更する方法

私は現在、C++ インタープリターの上にあるプログラムを書いています。ユーザーは実行時に C++ コマンドを入力し、それがインタープリターに渡されます。特定のパターンでは、追加機能を提供できるように、与えられたコマンドを変更した形式に置き換えたいと考えています。

フォームの何かを置き換えたい

私が最初に考えたのは正規表現でしたがA、 、B1、 またはのいずれかB2が任意の C++ 式である可能性があるため、これはかなりエラーが発生しやすいものです。これらの式には引用符で囲まれた文字列や括弧が含まれている可能性があるため、すべてのケースを正規表現と一致させることは非常に困難です。さらに、この式には複数のネストされた形式が存在する場合があります。

次に考えたのは、clang をサブプロセスとして呼び出し、「-dump-ast」を使用して抽象構文ツリーを取得し、それを変更してから、C++ インタープリターに渡すコマンドに再構築することでした。ただし、これには、式を解析するのに十分な情報をclangに提供するために、インクルードファイルや前方宣言などの環境の変更を追跡する必要があります。インタプリタはこの情報を公開しないため、これも実行不可能に思えます。

3 番目の考えは、C++ インタープリター独自の内部解析を使用して抽象構文ツリーに変換し、そこから構築することでした。ただし、このインタープリターは、私が見つけた方法で ast を公開しません。

記載されたルートの 1 つに沿って、または完全に別のルートに沿って進む方法について何か提案はありますか?

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

c++ - `TRandom3::Rndm(int)` および `_gfortran_...` シンボルへの未定義の参照

サンプル プログラムをコンパイルして、garfield++ の動作を理解しようとしています (ドリフト チューブをシミュレートするために使用したい)。ガーフィールド++をインストールしたばかりで、このページの下部にあるサンプルプログラムをダウンロードしましたhttp://garfieldpp.web.cern.ch/garfieldpp/examples/tube/その後、makeコマンドを実行しましたが、受け取りました次のエラー:

riferimento non definitoのイタリア語はどこですかundefined reference to。Makefile に gfortran へのリンクがあるため、問題を理解できません。私が行った場合:

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

python - 関数評価の最適化 部分的な結果のキャッシュ

多くの入力パラメータを持つ複雑な数学関数があるとしますP = [p1, ..., pn]。関数をブロック単位で因数分解できるとします。たとえば、次のようになります。

そして多分

fの多くの値を評価する必要があるとします。Pたとえば、 の最小値を見つけたいとしますf。すでに計算済みで、 where is equal to except forf(P)を計算する必要があるとします。この場合、を再計算する必要はありません。f(P')P'Pp1f2, f3, f4f1

この種のキャッシング システムを実装するのに役立つライブラリはありますか? RooFitは知っていますが、ブロックで作成された統計モデル向けです。もっと一般的なものを探しています。scipy / scikits などが推奨されますが、c++ ライブラリも問題ありません。この技に名前はありますか?

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

root-framework - TMinuit の問題

ROOT でカイ 2 乗関数を最小化しようとしています。これは FCN コードです。

実行の結果、私の関数がどのパラメーターにも依存しないのと同じように、どのパラメーターも変更されていません。FCN ロジックに問題がありますか、それとも他の場所でバグを探す必要がありますか?

ありがとう、ルイージ

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

c++ - ROOT(cern) FILE 読み取り + TGraph は問題なく動作しますが、TGraphErrors は必要ありません

問題は次のとおりです。ファイルから配列にデータを読み取っていました。グラフのプロットは問題なく動作します。しかし、TGraphErrors は何もしたくありません。ルートは言う

エラー: 現在のスコープ plot2 で TGraphErrors::SetPoint(i,Data[0][i],Data[1][i],Data[2][i],Data[2][i]) を呼び出せません。 C:85: 可能な候補は... (TGraphErrors 内) (TGraph 内) /usr/local/Cellar/root/5.34.26/lib/root/libHist.so -1:-1 0 public: virtual void TGraph: :SetPoint(Int_t i,Double_t x,Double_t y); * インタプリタ エラーが回復しました * "

コードは以下のとおりです。

私はルートを使用するのが初めてです。おそらく、私はちょっとばかげていて、それに気づきませんでした。それで、私は何を間違えましたか?よろしくお願いします
オルカ

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

c++ - ルートcernグラフ作成用のデータファイルの読み取り

テキスト ファイルからデータを取得してルート (CERN) でグラフ化するスクリプトを作成しましたが、約 1 年間ルートを使用しておらず、現在のバージョンのルートに更新したところ、「エラー: 関数 readprn()」というエラーが発生しました。は現在のスコープで定義されていません :0: * インタープリター エラーが回復しました * "ルートで使用しようとすると。

txtファイルとして保存したExcelデータファイルを実行します。最初の列は、後続の 768 列の各 y 値に対応する x 値です。最後に、いくつかのグラフをグラフ化し、適合させ、ループします。

私は主に、新しいバージョンに、これを root が読み取れない原因となるものがあるかどうか疑問に思っています。