1
0
Fork 0
mirror of https://github.com/gwm17/catima.git synced 2024-11-22 18:28:51 -05:00
catima/tests/test_reaction.cpp
2018-07-31 01:41:44 +02:00

39 lines
1005 B
C++

#include "lest.hpp"
#include <math.h>
#include "catima/catima.h"
#include "catima/reactions.h"
#include "testutils.h"
using namespace std;
using catima::approx;
using catima::reaction_rate;
using catima::nonreaction_rate;
const lest::test specification[] =
{
CASE("reaction"){
catima::Projectile proj{12,6,6,870};
auto c = catima::get_material(6);
c.thickness(4.0);
double r = reaction_rate(846,c.number_density_cm2());
std::cout<<r<<"\n";
EXPECT(reaction_rate(0,10.0) == 0.0);
EXPECT(reaction_rate(860,0.0) == 0.0);
EXPECT(nonreaction_rate(0,10.0) == 1.0);
EXPECT(nonreaction_rate(1000,0.0) == 1.0);
auto fcc = [](double x){return 846.0;};
r = reaction_rate(fcc, c.number_density_cm2());
std::cout<<r<<"\n";
r= 1-catima::nonreaction_rate1(proj, c);
std::cout<<r<<std::endl;
}
};
int main( int argc, char * argv[] )
{
return lest::run( specification, argc, argv );
}