メインコンテンツまでスキップ
バージョン: v0.7.1

ℹ️ について

備考

「理想のスポーツカーが見つからなかったので、自分で作った。」 —— フェルディナント・ポルシェ

GeoChemistry Nexus は、超長期メンテナンスを計画している最初のプロジェクトです——少なくとも今後 5 年間は継続的に更新する予定です。

興味深いことに、当初の名称は Geo-Thermometer でした。最初は地質温度計に関連する基本的なプログラムを開発し、計算と作図を容易にすることを目的としていました。しかし、プロジェクトが進むにつれ、特に作図モジュールが完成した後、より大きな目標を実現できることに気づきました。そのため、プロジェクトは概念面・機能面の両方で拡張され、Geo-Thermometer から GeoChemistry Nexus へと進化しました。

GeoChemistry Nexus が必要な理由

地球化学・岩石学研究において、作図計算はしばしば異なるツールに分散しています:データ整理は表計算ソフト、底図の作成は汎用ベクターツール、温圧計計算は別のスクリプトや古いプログラム——ワークフローが分断され、フォーマットが統一されず、再現コストが高いのは、多くの研究者が日常的に直面する摩擦です。

一方で、多くの一般的な判別図、温圧計、関連計算ツールは 長期間にわたり更新が停滞 しています——新たに発表されたアルゴリズムや古典モデルの改訂がタイムリーに取り込まれにくく、研究者は停滞した旧バージョンを使い続けるしかないことが多いのが現実です。さらに現実的な問題として、科研工作者が 独自に 新しいアルゴリズムや図解を開発した後、便利でオープンな配布チャネルが不足 し、成果が論文付録、個人スクリプト、小規模な共有にとどまり、分野内で迅速に普及・再利用されにくい状況があります。

plot_home_ui

さらに、研究の中で厳密さに欠けるやり方も目にしました——例えば、地質図の底図を CorelDRAW で大まかに輪郭を描く場合です。視覚的な差は大きくないかもしれませんが、科学研究の観点からは、このやり方は厳密な科学精神に反します。

そこで:自分でツールを開発してみたらどうだろう?

大量の地質・地球化学チャートテンプレートを統合し、さまざまな地質温度計/圧力計計算をサポートし、地球化学計算や現在流行している機械学習機能まで拡張できるツール。既存のテンプレートがなければ、可視化作図ツールで作成・共有を容易にする。モダンな UI デザインと多言語サポートを加え、研究者が一つのソフトウェア内で科学作図と計算の大部分の基礎作業を完了できるようにする。

GeoChemistry Nexus は、この一連の流れを一か所に集約することを目指しています——試料データのインポート、前処理・補正から、判別図の作成、地温計計算、CIPW 標準鉱物計算、PNG / SVG などの形式でのエクスポートまで、できる限り同一インターフェース内で完了し、クラウドテンプレートエコシステムコミュニティ協力メカニズムにより、図解とアルゴリズムが継続的に反復し、より多くの研究者に迅速に届くようにします。

最初の開発アイデア

偶然にも、C# や Python などのプログラミング言語に精通しており、デスクトップソフトウェア開発技術も身につけています。2024 年 12 月に Demo の開発を開始しました。最初の技術選定段階で、真剣に検討しました:どの言語とアーキテクチャがこの目標を最もよく実現できるか?

最初の候補は Python でした——迅速にプロトタイプ化でき、開発者にとっては朗報です。しかし、ユーザーの観点からは致命的な欠点がありました:まず、実行効率が低い(データ量が小さい場合は影響が少ないものの、性能差は存在する);次に、巨大なインストールパッケージをもたらす。かつて WPF で書かれたシンプルなプログラムを Python でリファクタリングしたことがあります。まっさらな仮想環境にパッケージしても、完成品は数百 MB にのぼり、.NET でパッケージしたプログラムは十数 MB 程度——差は甚大です。シンプルな機能のために数百 MB から GB 規模のインストールと複雑な設定をユーザーに強いるのは最善の選択ではありません

次に Web 開発を検討しました。利点は明らかです——インストール不要、すぐに使える。しかし問題もありました:一方では Web 技術の習熟が十分でない;他方では、サーバーの長期的な高コストが個人のメンテナンス能力を超えていました。そのため、最終的に重心をクライアント開発に戻しました。

plot_home_ui

クライアント開発には多くの技術選択肢がありますが、C++ ベースの QT と比較して .NET の方が馴染み深いです。.NET の高い実行効率と Windows の普及性を踏まえ、.NET を主要開発プラットフォームとして選びました。当初は Avalonia も検討し、Windows、Linux、MacOS へのクロスプラットフォーム対応を目指しましたが、開発過程で一部のプロジェクト依存関係が Avalonia と非互換であり、移行コストが非常に高いことが判明しました。個人の力では、初期段階でこれらのモジュールをリファクタリングするのは困難です。したがって、少なくとも現段階では Windows プラットフォームに集中しており、クロスプラットフォーム版は将来のいつか実現される可能性があります。

お問い合わせ

ソフトウェア開発に興味があり協力したい方、提案やフィードバック、チャートテンプレート、アルゴリズムサポート、あるいはビジネス協力を希望される方は、maxwelllei@qq.com までお気軽にご連絡ください。

ソフトウェア使用中に不足点や問題を発見された場合は、いつでもフィードバックをお寄せください。機能が日増しに増加し複雑化しているため、テストですべての状況をカバーするのは困難で、見落としや不正確さがあるかもしれません。修正と最適化に尽力し、より安定で信頼性の高いユーザー体験を提供します。

plot_home_ui