diff options
author | 2019-11-14 10:32:33 +0100 | |
---|---|---|
committer | 2019-11-14 10:32:33 +0100 | |
commit | 764d22f17506763dc74979c19180513f86023600 (patch) | |
tree | a47c7c64fc4b335f00bd3d59ab829bcd8c0143ed | |
parent | 6e302ea47d46005ae2f8f13f79109aeb2a4617f3 (diff) | |
download | WarpX-764d22f17506763dc74979c19180513f86023600.tar.gz WarpX-764d22f17506763dc74979c19180513f86023600.tar.zst WarpX-764d22f17506763dc74979c19180513f86023600.zip |
Added built-in lookup table
-rw-r--r-- | Source/QED/BreitWheelerDummyTable.H | 2 | ||||
-rw-r--r-- | Source/QED/Make.package | 2 | ||||
-rw-r--r-- | Source/QED/QuantumSyncDummyTable.H | 79 | ||||
-rw-r--r-- | Source/QED/QuantumSyncEngineWrapper.H | 8 | ||||
-rw-r--r-- | Source/QED/QuantumSyncEngineWrapper.cpp | 7 |
5 files changed, 95 insertions, 3 deletions
diff --git a/Source/QED/BreitWheelerDummyTable.H b/Source/QED/BreitWheelerDummyTable.H index 9d70bdc37..45636ffe2 100644 --- a/Source/QED/BreitWheelerDummyTable.H +++ b/Source/QED/BreitWheelerDummyTable.H @@ -2,7 +2,7 @@ #define WARPX_breit_wheeler_dummy_tables_h_ #include "BreitWheelerEngineInnards.H" -#include <breit_wheeler_engine_ctrl.h> + #include <AMReX_REAL.H> #include <AMReX_Gpu.H> diff --git a/Source/QED/Make.package b/Source/QED/Make.package index aa37c0003..bfc6f2369 100644 --- a/Source/QED/Make.package +++ b/Source/QED/Make.package @@ -6,7 +6,7 @@ CEXE_headers += QuantumSyncEngineInnards.H CEXE_headers += BreitWheelerEngineWrapper.H CEXE_headers += QuantumSyncEngineWrapper.H CEXE_headers += BreitWheelerDummyTable.H -CEXE_headers += BreitWheelerDummyTable.cpp +CEXE_headers += QuantumSyncDummyTable.H CEXE_sources += BreitWheelerEngineWrapper.cpp CEXE_sources += QuantumSyncEngineWrapper.cpp diff --git a/Source/QED/QuantumSyncDummyTable.H b/Source/QED/QuantumSyncDummyTable.H new file mode 100644 index 000000000..d67b014cb --- /dev/null +++ b/Source/QED/QuantumSyncDummyTable.H @@ -0,0 +1,79 @@ +#ifndef WARPX_quantum_sync_dummy_tables_h_ +#define WARPX_quantum_sync_dummy_tables_h_ + +#include "QuantumSyncEngineInnards.H" + +#include <AMReX_REAL.H> +#include <AMReX_Gpu.H> + +#include <limits> + +namespace QedUtils{ + +//A default mini-table used for test purposes +const QuantumSynchrotronEngineInnards +QuantumSyncEngineInnardsDummy +{ + .ctrl{//_____________________________ctrl + .chi_part_min = 0.001, + .chi_part_tdndt_min = 0.001, + .chi_part_tdndt_max = 200, + .chi_part_tdndt_how_many = 64, + .chi_part_tem_min = 0.001, + .chi_part_tem_max = 200, + .chi_part_tem_how_many = 2, + .prob_tem_how_many = 2 + },//_________________________________ + .KKfunc_coords{//_____________________________KKfunc_coords + -6.907755279, -6.714008094, -6.520260909, -6.326513724, + -6.13276654, -5.939019355, -5.74527217, -5.551524985, + -5.3577778, -5.164030615, -4.97028343, -4.776536246, + -4.582789061, -4.389041876, -4.195294691, -4.001547506, + -3.807800321, -3.614053137, -3.420305952, -3.226558767, + -3.032811582, -2.839064397, -2.645317212, -2.451570027, + -2.257822843, -2.064075658, -1.870328473, -1.676581288, + -1.482834103, -1.289086918, -1.095339733, -0.9015925486, + -0.7078453638, -0.5140981789, -0.3203509941, -0.1266038092, + 0.06714337561, 0.2608905605, 0.4546377453, 0.6483849302, + 0.842132115, 1.0358793, 1.229626485, 1.42337367, + 1.617120854, 1.810868039, 2.004615224, 2.198362409, + 2.392109594, 2.585856779, 2.779603964, 2.973351148, + 3.167098333, 3.360845518, 3.554592703, 3.748339888, + 3.942087073, 4.135834257, 4.329581442, 4.523328627, + 4.717075812, 4.910822997, 5.104570182, 5.298317367 + }, + .KKfunc_data{//_____________________________KKfunc_data + -7.968431811, -7.639082211, -7.326295546, -7.02752527, + -6.740710773, -6.464172009, -6.196529608, -5.93664402 + -5.683568899, -5.436515162, -5.194823127, -4.957940775, + -4.725406674, -4.49683649, -4.2719122, -4.050373372, + -3.832009948, -3.616656119, -3.404184903, -3.194503151, + -2.987546751, -2.783275883, -2.581670257, -2.382724345, + -2.1864427, -1.992835514, -1.801914573, -1.613689793, + -1.428166439, -1.2453431, -1.065210351, -0.8877500928, + -0.7129353081, -0.5407301909, -0.3710904422, -0.2039636495, + -0.03928968527, 0.1229988926, 0.2829764221, 0.4407236701, + 0.5963272798, 0.7498791107, 0.9014754584, 1.051216164, + 1.199203636, 1.345541816, 1.490335133, 1.633687478, + 1.775701241, 1.916476434, 2.056109933, 2.194694829, + 2.332319922, 2.469069336, 2.605022252, 2.740252763, + 2.874829832, 3.008817314, 3.142273988, 3.27525366, + 3.407805563, 3.539975021, 3.671803889, 3.803330346 + },//_____________________________ + .cum_distrib_coords_1{//_____________________________Tcum_distrib_coords_1 + -6.907755279, 5.298317367 + },//_____________________________ + .cum_distrib_coords_2{//_____________________________Tcum_distrib_coords_2 + 0, 0.5 + },//_____________________________ + .cum_distrib_data{//_____________________________cum_distrib_data + -std::numeric_limits<amrex::Real>::infinity(), + -0.6931471806, + -std::numeric_limits<amrex::Real>::infinity(), + -0.6931471806 + }//_____________________________ +}; + +}; + +#endif //WARPX_quantum_sync_dummy_tables_h_ diff --git a/Source/QED/QuantumSyncEngineWrapper.H b/Source/QED/QuantumSyncEngineWrapper.H index fd1571720..45008e874 100644 --- a/Source/QED/QuantumSyncEngineWrapper.H +++ b/Source/QED/QuantumSyncEngineWrapper.H @@ -267,6 +267,12 @@ public: bool init_lookup_tables_from_raw_data (const amrex::Vector<char>& raw_data); /** + * Init lookup tables using built-in dummy tables + * for test purposes. + */ + void init_dummy_tables(); + + /** * Export lookup tables data into a raw binary Vector * @return the data in binary format. The Vector is empty if tables were * not previously initialized. @@ -275,7 +281,7 @@ public: /** * Computes the lookup tables. It does nothing unless WarpX is compiled with QED_TABLE_GEN=TRUE - * @param[in] ctrl control params to generate the tables + * @param[in] ctrl control params to geneQuantumSyncEngineInnardsDummyrate the tables */ void compute_lookup_tables (PicsarQuantumSynchrotronCtrl ctrl); diff --git a/Source/QED/QuantumSyncEngineWrapper.cpp b/Source/QED/QuantumSyncEngineWrapper.cpp index c2d9f0abf..01176a914 100644 --- a/Source/QED/QuantumSyncEngineWrapper.cpp +++ b/Source/QED/QuantumSyncEngineWrapper.cpp @@ -1,6 +1,7 @@ #include "QuantumSyncEngineWrapper.H" #include "QedTableParserHelperFunctions.H" +#include "QuantumSyncDummyTable.H" #include <utility> @@ -139,6 +140,12 @@ QuantumSynchrotronEngine::init_lookup_tables_from_raw_data ( return true; } +void QuantumSynchrotronEngine::init_dummy_tables() +{ + m_innards = QedUtils::QuantumSyncEngineInnardsDummy; + m_lookup_tables_initialized = true; +} + Vector<char> QuantumSynchrotronEngine::export_lookup_tables_data () const { Vector<char> res{}; |