問題タブ [petsc]
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.
fortran - PETSc と MPI で同じ名前のエンティティ - 競合
並列作業に MPI を使用する既存の Fortran コードがあります。いくつかの PETSc ソルバー (特に KSP) を追加することに興味がありますが、関連する .h または .h90 ファイル (petsc、petcsys、petscksp など) を含めると、同じ名前を共有する変数で問題が発生します。 MPIのもの。
すなわち:
(ics/composer_xe_2011_sp1.6.233 と ics/impi/4.0.3.008 と petsc 3.6.0 を使用し、古い petsc バージョン 3.5.4 も試しました)
これらはすべて、MPI と PETSc の両方で等しく定義されています。この競合を解決して両方を使用する方法はありますか?
コードには PETSc とは独立して実行するオプションが必要なため、MPI 呼び出しを PETSc 呼び出しに置き換えたくありません。
最小限のコードに関しては、巨大なコードのクリーンアップが明らかに問題になるため、関連する部分を含む次の簡単な例を作成しました。
これは、PETSc ヘッダーがインクルードされたときに直接発生し、インクルードが削除されると消えます。