diff --git a/App/src/StandardSamples.cpp b/App/src/StandardSamples.cpp index e5010eb9232d068f596dd7bb2cbfea0621c144d9..8eeea50a6ca95e5aa44b9d6cbf8190ff2d1d240c 100644 --- a/App/src/StandardSamples.cpp +++ b/App/src/StandardSamples.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/StandardSamples.cpp @@ -145,9 +145,6 @@ ISample *StandardSamples::SimpleMultilayer() //! Multilayer offspecular testcase -//! 10x2 layers without cross correlation, analog of Artur's offspec1.py, -//! to compare with 'MultilayerOffspecTestcase1b' - ISample *StandardSamples::MultilayerOffspecTestcase1a() { const IMaterial *mAmbience = @@ -200,9 +197,6 @@ ISample *StandardSamples::MultilayerOffspecTestcase1a() //! Multilayer offspecular tescase. -//! 10x2 layers with cross correlation, analog of Artur's offspec2.py, -//! to compare with 'MultilayerOffspecTestcase1a' - ISample *StandardSamples::MultilayerOffspecTestcase1b() { MultiLayer *myOrigSample = @@ -216,9 +210,6 @@ ISample *StandardSamples::MultilayerOffspecTestcase1b() //! Multilayer offspecular testcase. -//! Air on substrate with roughness, analog of Artur's offspec3.py, -//! to compare with 'MultilayerOffspecTestcase2b' - ISample *StandardSamples::MultilayerOffspecTestcase2a() { const IMaterial *mAmbience = @@ -252,9 +243,6 @@ ISample *StandardSamples::MultilayerOffspecTestcase2a() //! Multilayer offspecular testcase. -//! Very thin air on substrate with roughness, analog of Artur's offspec4.py, -//! to compare with 'MultilayerOffspecTestcase2a'. - ISample *StandardSamples::MultilayerOffspecTestcase2b() { MultiLayer *myOrigSample = @@ -267,523 +255,6 @@ ISample *StandardSamples::MultilayerOffspecTestcase2b() return mySample; } -/* ************************************************************************* */ -// Functional test: Box -/* *************************************************************************/ -//ISample *StandardSamples::FormFactors_Box() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_substrate(1.0-4e-6, 2e-8); -// complex_t n_particle(1.0-5e-4, 2e-8); -// const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", n_air); -// const IMaterial *p_substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", n_substrate); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// Layer substrate_layer; -// substrate_layer.setMaterial(p_substrate_material); -// ParticleDecoration particle_decoration( -// new Particle(n_particle, new FormFactorBox(5.0*Units::nanometer, 5.0*Units::nanometer, 5.0*Units::nanometer) ) ); -// -// particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); -// -// p_multi_layer->addLayer(air_layer_decorator); -// p_multi_layer->addLayer(substrate_layer); -// return p_multi_layer; -//} -// - - -/* ************************************************************************* */ -// Functional test: Ellipsoid -/* *************************************************************************/ -//ISample *StandardSamples::FormFactors_Ellipsoid() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_substrate(1.0-4e-6, 2e-8); -// complex_t n_particle(1.0-5e-4, 2e-8); -// const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", n_air); -// const IMaterial *p_substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", n_substrate); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// Layer substrate_layer; -// substrate_layer.setMaterial(p_substrate_material); -// ParticleDecoration particle_decoration( -// new Particle(n_particle, new FormFactorEllipsoid(4.0*Units::nanometer, 5.0*Units::nanometer, 6.0*Units::nanometer) ) ); -// -// particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); -// -// p_multi_layer->addLayer(air_layer_decorator); -// p_multi_layer->addLayer(substrate_layer); -// return p_multi_layer; -//} - - - -/* ************************************************************************* */ -// Functional test: Prism6 -/* *************************************************************************/ - -//ISample *StandardSamples::FormFactors_Prism6() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_substrate(1.0-5e-6, 2e-8); -// complex_t n_particle(1.0-6e-4, 2e-8); -// const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", n_air); -// const IMaterial *p_substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", n_substrate); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// Layer substrate_layer; -// substrate_layer.setMaterial(p_substrate_material); -// ParticleDecoration particle_decoration( -// new Particle(n_particle, new FormFactorPrism6(4.0*Units::nanometer, 5.0*Units::nanometer) ) ); -// -// particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); -// -// p_multi_layer->addLayer(air_layer_decorator); -// p_multi_layer->addLayer(substrate_layer); -// return p_multi_layer; -//} - - -/* ************************************************************************* */ -// Functional test: Full Sphere -/* *************************************************************************/ - -//ISample *StandardSamples::FormFactors_FullSphere() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_substrate(1.0-3e-6, 2e-8); -// complex_t n_particle(1.0-5e-4, 2e-8); -// const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", n_air); -// const IMaterial *p_substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", n_substrate); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// Layer substrate_layer; -// substrate_layer.setMaterial(p_substrate_material); -// ParticleDecoration particle_decoration( -// new Particle(n_particle, new FormFactorFullSphere(4.0*Units::nanometer) ) ); -// -// particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); -// -// p_multi_layer->addLayer(air_layer_decorator); -// p_multi_layer->addLayer(substrate_layer); -// return p_multi_layer; -//} -// -// - - -/* ************************************************************************* */ -// IsGISAXS1 functional test: cylinder and prism -/* ************************************************************************* */ -//ISample *StandardSamples::IsGISAXS1_CylinderAndPrism() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_substrate(1.0-6e-6, 2e-8); -// complex_t n_particle(1.0-6e-4, 2e-8); -// const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", n_air); -// const IMaterial *p_substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", n_substrate); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// Layer substrate_layer; -// substrate_layer.setMaterial(p_substrate_material); -// ParticleDecoration particle_decoration; -// particle_decoration.addParticle(new Particle(n_particle, new FormFactorCylinder(5*Units::nanometer, 5*Units::nanometer)),0.0, 0.5); -// particle_decoration.addParticle(new Particle(n_particle, new FormFactorPrism3(5*Units::nanometer, 5*Units::nanometer)), 0.0, 0.5); -// particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); - -// p_multi_layer->addLayer(air_layer_decorator); -// p_multi_layer->addLayer(substrate_layer); -// return p_multi_layer; -//} - -////! IsGISAXS ex#2: Mixture cylinder particles with different size distribution. - -//ISample *StandardSamples::IsGISAXS2_CylindersMixture() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_particle(1.0-6e-4, 2e-8); -// const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", n_air); - -// Layer air_layer; -// air_layer.setMaterial(p_air_material); - -// ParticleDecoration particle_decoration; - -// // preparing nano particles prototypes for seeding layer's particle_decoration -// double radius1 = 5*Units::nanometer; -// double radius2 = 10*Units::nanometer; -// double height1 = radius1; -// double height2 = radius2; -// FormFactorCylinder *p_ff_cylinder1 = -// new FormFactorCylinder(height1, radius1); -// Particle cylinder1(n_particle, p_ff_cylinder1 ); - -// FormFactorCylinder *p_ff_cylinder2 = -// new FormFactorCylinder(height2, radius2); -// Particle cylinder2(n_particle, p_ff_cylinder2 ); - -// // radius of nanoparticles will be sampled with gaussian probability -// int nbins=150; -// double sigma1 = radius1*0.2; -// double sigma2 = radius2*0.02; -// int nfwhm(3); // to have xmin=average-nfwhm*FWHM, xmax=average+nfwhm*FWHM (nfwhm = xR/2, where xR is what is defined in isgisaxs *.inp file) -// StochasticDoubleGaussian sg1(radius1, sigma1); -// StochasticSampledParameter par1(sg1,nbins, nfwhm); -// StochasticDoubleGaussian sg2(radius2, sigma2); -// StochasticSampledParameter par2(sg2,nbins, nfwhm); - -// // building nano particles -// ParticleBuilder builder; -// builder.setPrototype(cylinder1,"/Particle/FormFactorCylinder/radius", -// par1, 0.95); -// builder.plantParticles(particle_decoration); - -// builder.setPrototype(cylinder2,"/Particle/FormFactorCylinder/radius", -// par2, 0.05); -// builder.plantParticles(particle_decoration); - -// particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); - -// // making layer holding all whose nano particles -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); -// p_multi_layer->addLayer(air_layer_decorator); - -// return p_multi_layer; -//} - -//! IsGISAXS ex#3a: Cylinder on top of substrate. - -//ISample *StandardSamples::IsGISAXS3_CylinderDWBA() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_substrate(1.0-6e-6, 2e-8); -// complex_t n_particle(1.0-6e-4, 2e-8); -// const IMaterial *p_air_material = -// MaterialManager::getHomogeneousMaterial("Air", n_air); -// const IMaterial *p_substrate_material = -// MaterialManager::getHomogeneousMaterial("Substrate", n_substrate); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// Layer substrate_layer; -// substrate_layer.setMaterial(p_substrate_material); -// ParticleDecoration particle_decoration -// (new Particle(n_particle, new FormFactorCylinder -// (5*Units::nanometer, 5*Units::nanometer))); -// particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); - -// p_multi_layer->addLayer(air_layer_decorator); -// p_multi_layer->addLayer(substrate_layer); -// return p_multi_layer; -//} - -////! IsGISAXS ex#3b: Cylinder in the air. - -//ISample *StandardSamples::IsGISAXS3_CylinderBA() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_particle(1.0-6e-4, 2e-8); -// const IMaterial *p_air_material = -// MaterialManager::getHomogeneousMaterial("Air", n_air); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// ParticleDecoration particle_decoration( -// new Particle(n_particle, new FormFactorCylinder -// (5*Units::nanometer, 5*Units::nanometer))); -// particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); -// p_multi_layer->addLayer(air_layer_decorator); -// return p_multi_layer; -//} - -////! IsGISAXS ex#3c: Cylinder in the air with size distribution. - -//ISample *StandardSamples::IsGISAXS3_CylinderBASize() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_particle(1.0-6e-4, 2e-8); -// const IMaterial *p_air_material = -// MaterialManager::getHomogeneousMaterial("Air", n_air); - -// Layer air_layer; -// air_layer.setMaterial(p_air_material); - -// ParticleDecoration particle_decoration; - -// // preparing prototype of nano particle -// double radius = 5*Units::nanometer; -// double sigma = 0.2*radius; -// FormFactorCylinder *p_ff_cylinder = new FormFactorCylinder -// ( 5*Units::nanometer, radius); -// Particle nano_particle(n_particle, p_ff_cylinder); - -// // radius of nanoparticles will be sampled with gaussian probability -// int nbins(100), nfwhm(2); -// StochasticDoubleGaussian sg(radius, sigma); -// StochasticSampledParameter par(sg, nbins, nfwhm); - -// ParticleBuilder builder; -// builder.setPrototype -// (nano_particle, "/Particle/FormFactorCylinder/radius", par); -// builder.plantParticles(particle_decoration); - -// particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); - -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); -// p_multi_layer->addLayer(air_layer_decorator); - -// return p_multi_layer; -//} - -////! IsGISAXS ex#4a: Cylinders with 1DDL structure factor. - -//ISample *StandardSamples::IsGISAXS4_1DDL() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_substrate(1.0-6e-6, 2e-8); -// complex_t n_particle(1.0-6e-4, 2e-8); -// const IMaterial *p_air_material = -// MaterialManager::getHomogeneousMaterial("Air", n_air); -// const IMaterial *p_substrate_material = -// MaterialManager::getHomogeneousMaterial("Substrate", n_substrate); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// Layer substrate_layer; -// substrate_layer.setMaterial(p_substrate_material); -// IInterferenceFunction *p_interference_function = -// new InterferenceFunction1DParaCrystal -// (20.0*Units::nanometer,7*Units::nanometer, 1e3*Units::nanometer); -// ParticleDecoration particle_decoration( -// new Particle(n_particle, new FormFactorCylinder -// (5*Units::nanometer, 5*Units::nanometer))); -// particle_decoration.addInterferenceFunction(p_interference_function); -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); - -// p_multi_layer->addLayer(air_layer_decorator); -// p_multi_layer->addLayer(substrate_layer); -// return p_multi_layer; -//} - -//// IsGISAXS ex#4b: Cylinders with 2DDL structure factor. - -//ISample *StandardSamples::IsGISAXS4_2DDL() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_substrate(1.0-6e-6, 2e-8); -// complex_t n_particle(1.0-6e-4, 2e-8); -// const IMaterial *p_air_material = -// MaterialManager::getHomogeneousMaterial("Air", n_air); -// const IMaterial *p_substrate_material = -// MaterialManager::getHomogeneousMaterial("Substrate", n_substrate); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// Layer substrate_layer; -// substrate_layer.setMaterial(p_substrate_material); -// InterferenceFunction2DParaCrystal *p_interference_function = -// InterferenceFunction2DParaCrystal::createHexagonal -// (20.0*Units::nanometer, -// 0.0, -// 20.0*Units::micrometer, -// 20.0*Units::micrometer); -// FTDistribution2DCauchy pdf(1.0*Units::nanometer, 1.0*Units::nanometer); -// p_interference_function->setProbabilityDistributions(pdf, pdf); -// ParticleDecoration particle_decoration( -// new Particle(n_particle, new FormFactorCylinder -// (5*Units::nanometer, 5*Units::nanometer))); -// particle_decoration.addInterferenceFunction(p_interference_function); -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); - -// p_multi_layer->addLayer(air_layer_decorator); -// p_multi_layer->addLayer(substrate_layer); -// return p_multi_layer; -//} - -//! IsGISAXS ex#6a: Cylinders with lattice interference function. - -//ISample *StandardSamples::IsGISAXS6_lattice() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_substrate(1.0-6e-6, 2e-8); -// complex_t n_particle(1.0-6e-4, 2e-8); -// const IMaterial *p_air_material = -// MaterialManager::getHomogeneousMaterial("Air", n_air); -// const IMaterial *p_substrate_material = -// MaterialManager::getHomogeneousMaterial("Substrate", n_substrate); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// Layer substrate_layer; -// substrate_layer.setMaterial(p_substrate_material); -// Lattice2DIFParameters lattice_params; -//// 10.0*Units::nanometer, // L1 -//// 10.0*Units::nanometer, // L2 -//// 90.0*Units::degree, // lattice angle -//// 0.0*Units::degree, // lattice orientation -//// 20000.0*Units::nanometer, // domain size 1 -//// 20000.0*Units::nanometer, // domain size 2 -//// 300.0*Units::nanometer/2.0/M_PI, // correlation length 1 -//// 100.0*Units::nanometer/2.0/M_PI // correlation length 2 -// lattice_params.m_length_1 = 10.0*Units::nanometer; // L1 -// lattice_params.m_length_2 = 10.0*Units::nanometer; // L2 -// lattice_params.m_angle = 90.0*Units::degree; // lattice angle -// lattice_params.m_xi = 0.0*Units::degree; // lattice orientation -// lattice_params.m_domain_size_1 = 20000.0*Units::nanometer; // domain size 1 -// lattice_params.m_domain_size_2 =20000.0*Units::nanometer; // domain size 2 -// lattice_params.m_corr_length_1 = 300.0*Units::nanometer/2.0/M_PI; // correlation length 1 -// lattice_params.m_corr_length_2 = 100.0*Units::nanometer/2.0/M_PI; // correlation length 2 - -// InterferenceFunction2DLattice *p_interference_function = -// new InterferenceFunction2DLattice(lattice_params); -// FTDistribution2DCauchy pdf(300.0*Units::nanometer/2.0/M_PI, -// 100.0*Units::nanometer/2.0/M_PI); -// p_interference_function->setProbabilityDistribution(pdf); - -// ParticleDecoration particle_decoration; -// // particle -// FormFactorCylinder ff_cyl(5.0*Units::nanometer, 5.0*Units::nanometer); -// kvector_t position(0.0, 0.0, 0.0); -// PositionParticleInfo particle_info( -// new Particle(n_particle, ff_cyl.clone()), position, 1.0); -// particle_decoration.addParticleInfo(particle_info); - -// particle_decoration.addInterferenceFunction(p_interference_function); -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); - -// p_multi_layer->addLayer(air_layer_decorator); -// p_multi_layer->addLayer(substrate_layer); -// return p_multi_layer; -//} - -////! IsGISAXS ex#6b: Cylinders lattice centered. -//ISample *StandardSamples::IsGISAXS6_centered() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_substrate(1.0-6e-6, 2e-8); -// complex_t n_particle(1.0-6e-4, 2e-8); -// const IMaterial *p_air_material = -// MaterialManager::getHomogeneousMaterial("Air", n_air); -// const IMaterial *p_substrate_material = -// MaterialManager::getHomogeneousMaterial("Substrate", n_substrate); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// Layer substrate_layer; -// substrate_layer.setMaterial(p_substrate_material); -// Lattice2DIFParameters lattice_params; -//// 10.0*Units::nanometer, // L1 -//// 10.0*Units::nanometer, // L2 -//// 90.0*Units::degree, // lattice angle -//// 0.0*Units::degree, // lattice orientation -//// 20000.0*Units::nanometer, // domain size 1 -//// 20000.0*Units::nanometer, // domain size 2 -//// 300.0*Units::nanometer/2.0/M_PI, // correlation length 1 -//// 100.0*Units::nanometer/2.0/M_PI // correlation length 2 -// lattice_params.m_length_1 = 10.0*Units::nanometer; // L1 -// lattice_params.m_length_2 = 10.0*Units::nanometer; // L2 -// lattice_params.m_angle = 90.0*Units::degree; // lattice angle -// lattice_params.m_xi = 0.0*Units::degree; // lattice orientation -// lattice_params.m_domain_size_1 = 20000.0*Units::nanometer; // domain size 1 -// lattice_params.m_domain_size_2 =20000.0*Units::nanometer; // domain size 2 -// lattice_params.m_corr_length_1 = 300.0*Units::nanometer/2.0/M_PI; // correlation length 1 -// lattice_params.m_corr_length_2 = 100.0*Units::nanometer/2.0/M_PI; // correlation length 2 - -// InterferenceFunction2DLattice *p_interference_function = -// new InterferenceFunction2DLattice(lattice_params); -// FTDistribution2DCauchy pdf(300.0*Units::nanometer/2.0/M_PI, -// 100.0*Units::nanometer/2.0/M_PI); -// p_interference_function->setProbabilityDistribution(pdf); - -// ParticleDecoration particle_decoration; -// // particle 1 -// FormFactorCylinder ff_cyl(5.0*Units::nanometer, 5.0*Units::nanometer); -// kvector_t position(0.0, 0.0, 0.0); -// PositionParticleInfo particle_info -// (new Particle(n_particle, ff_cyl.clone()), position, 1.0); -// particle_decoration.addParticleInfo(particle_info); -// // particle 2 -// kvector_t position_2(5.0*Units::nanometer, 5.0*Units::nanometer, 0.0); -// particle_info.setPosition(position_2); -// particle_decoration.addParticleInfo(particle_info); - -// particle_decoration.addInterferenceFunction(p_interference_function); -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); - -// p_multi_layer->addLayer(air_layer_decorator); -// p_multi_layer->addLayer(substrate_layer); -// return p_multi_layer; -//} - -////! IsGISAXS ex#6c: Cylinders lattice rotated. - -//ISample *StandardSamples::IsGISAXS6_rotated() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_substrate(1.0-6e-6, 2e-8); -// complex_t n_particle(1.0-6e-4, 2e-8); -// const IMaterial *p_air_material = -// MaterialManager::getHomogeneousMaterial("Air", n_air); -// const IMaterial *p_substrate_material = -// MaterialManager::getHomogeneousMaterial("Substrate", n_substrate); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// Layer substrate_layer; -// substrate_layer.setMaterial(p_substrate_material); -// Lattice2DIFParameters lattice_params; -//// 10.0*Units::nanometer, // L1 -//// 10.0*Units::nanometer, // L2 -//// 90.0*Units::degree, // lattice angle -//// 30.0*Units::degree, // lattice orientation -//// 20000.0*Units::nanometer, // domain size 1 -//// 20000.0*Units::nanometer, // domain size 2 -//// 300.0*Units::nanometer/2.0/M_PI, // correlation length 1 -//// 100.0*Units::nanometer/2.0/M_PI // correlation length 2 -// lattice_params.m_length_1 = 10.0*Units::nanometer; // L1 -// lattice_params.m_length_2 = 10.0*Units::nanometer; // L2 -// lattice_params.m_angle = 90.0*Units::degree; // lattice angle -// lattice_params.m_xi = 30.0*Units::degree; // lattice orientation -// lattice_params.m_domain_size_1 = 20000.0*Units::nanometer; // domain size 1 -// lattice_params.m_domain_size_2 =20000.0*Units::nanometer; // domain size 2 -// lattice_params.m_corr_length_1 = 300.0*Units::nanometer/2.0/M_PI; // correlation length 1 -// lattice_params.m_corr_length_2 = 100.0*Units::nanometer/2.0/M_PI; // correlation length 2 - -// InterferenceFunction2DLattice *p_interference_function = new InterferenceFunction2DLattice(lattice_params); -// FTDistribution2DCauchy pdf(300.0*Units::nanometer/2.0/M_PI, 100.0*Units::nanometer/2.0/M_PI); -// pdf.setGamma(30.0*Units::degree); -// p_interference_function->setProbabilityDistribution(pdf); - -// ParticleDecoration particle_decoration; -// // particle -// FormFactorCylinder ff_cyl(5.0*Units::nanometer, 5.0*Units::nanometer); -// kvector_t position(0.0, 0.0, 0.0); -// PositionParticleInfo particle_info( new Particle(n_particle, ff_cyl.clone()), position, 1.0); -// particle_decoration.addParticleInfo(particle_info); - -// particle_decoration.addInterferenceFunction(p_interference_function); -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); - -// p_multi_layer->addLayer(air_layer_decorator); -// p_multi_layer->addLayer(substrate_layer); -// return p_multi_layer; -//} - // IsGISAXS ex#7: Particle mixture from morphology file. ISample *StandardSamples::IsGISAXS7_morphology() @@ -972,72 +443,6 @@ ISample *StandardSamples::IsGISAXS8_2DDL_lattice2() return p_multi_layer; } -//! IsGISAXS ex#9a: Pyramid. - -//ISample *StandardSamples::IsGISAXS9_Pyramid() -//{ -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_substrate(1.0-6e-6, 2e-8); -// complex_t n_particle(1.0-6e-4, 2e-8); -// const IMaterial *p_air_material = -// MaterialManager::getHomogeneousMaterial("Air", n_air); -// const IMaterial *p_substrate_material = -// MaterialManager::getHomogeneousMaterial("Substrate", n_substrate); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// Layer substrate_layer; -// substrate_layer.setMaterial(p_substrate_material); -// ParticleDecoration particle_decoration( -// new Particle(n_particle, new FormFactorPyramid(5*Units::nanometer, 5*Units::nanometer, Units::deg2rad(54.73 ) ) ) ); -// particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); - -// p_multi_layer->addLayer(air_layer_decorator); -// p_multi_layer->addLayer(substrate_layer); -// return p_multi_layer; -//} - -////! IsGISAXS ex#9b: Rotated pyramid. - -//ISample *StandardSamples::IsGISAXS9_RotatedPyramid() -//{ -// const double angle_around_z = 45.*Units::degree; -// MultiLayer *p_multi_layer = new MultiLayer(); -// complex_t n_air(1.0, 0.0); -// complex_t n_substrate(1.0-6e-6, 2e-8); -// complex_t n_particle(1.0-6e-4, 2e-8); -// const IMaterial *p_air_material = -// MaterialManager::getHomogeneousMaterial("Air", n_air); -// const IMaterial *p_substrate_material = -// MaterialManager::getHomogeneousMaterial("Substrate", n_substrate); -// Layer air_layer; -// air_layer.setMaterial(p_air_material); -// Layer substrate_layer; -// substrate_layer.setMaterial(p_substrate_material); - -// Particle *pyramid = -// new Particle(n_particle, -// new FormFactorPyramid(5*Units::nanometer, -// 5*Units::nanometer, -// Units::deg2rad(54.73)) ); - -// Geometry::PTransform3D transform(new Geometry::RotateZ_3D(angle_around_z)); - -// ParticleDecoration particle_decoration; - -// particle_decoration.addParticle(pyramid, transform); -// particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); - -// LayerDecorator air_layer_decorator(air_layer, particle_decoration); - -// p_multi_layer->addLayer(air_layer_decorator); -// p_multi_layer->addLayer(substrate_layer); -// return p_multi_layer; -//} - -//! IsGISAXS ex#10: Cylinders with interference. - ISample *StandardSamples::IsGISAXS10_CylindersParacrystal1D() { MultiLayer *p_multi_layer = new MultiLayer(); @@ -1115,10 +520,7 @@ ISample *StandardSamples::IsGISAXS14_LayeredSpheresOnGradedInterface() ParticleDecoration particle_decoration (new Particle(n_particle, new FormFactorSphere (5*Units::nanometer, 5.*2.0*Units::nanometer))); - //ParticleDecoration particle_decoration(new Particle(n_particle, new FormFactorFullSphere(5.0*Units::nanometer))); particle_decoration.addInterferenceFunction(p_interference_function); - //particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); - // particle_decoration.setTotalParticleSurfaceDensity(1.0/(20.0*Units::nanometer*20.0*Units::nanometer)); LayerDecorator air_layer_decorator(air_layer, particle_decoration); p_multi_layer->addLayer(air_layer_decorator); @@ -1158,7 +560,6 @@ ISample *StandardSamples::IsGISAXS15_SSCA() int nbr_replacements = p_parameters->fixRatioBetweenParameters("height", "radius", 1.0); std::cout << "Number of replacements: " << nbr_replacements << std::endl; -// std::cout << *p_parameters << std::endl; particle_decoration.addInterferenceFunction(p_interference_function); LayerDecorator air_layer_decorator(air_layer, particle_decoration); @@ -1188,11 +589,7 @@ ISample *StandardSamples::MesoCrystal1() pos_vector.push_back(position_1); pos_vector.push_back(position_2); LatticeBasis basis(particle, pos_vector); - //lat.setSelectionRule(new SimpleSelectionRule(-1, 1, 1, 3)); Crystal npc(basis, lat); -// double relative_sigma_np_radius = 0.3; -// double dw_factor = relative_sigma_np_radius*relative_sigma_np_radius*nanoparticle_radius*nanoparticle_radius/6.0; -// npc.setDWFactor(dw_factor); MesoCrystal meso(npc.clone(), new FormFactorCylinder (0.2*Units::micrometer, 300*Units::nanometer)); @@ -1212,8 +609,6 @@ ISample *StandardSamples::MesoCrystal1() air_layer.setMaterial(p_air_material); Layer substrate_layer; substrate_layer.setMaterial(p_substrate_material); -// IInterferenceFunction *p_interference_function = -// new InterferenceFunctionNone(); IInterferenceFunction *p_interference_function = new InterferenceFunction1DParaCrystal (800.0*Units::nanometer, 50*Units::nanometer, 1e7*Units::nanometer); diff --git a/App/src/TestDetectorResolution.cpp b/App/src/TestDetectorResolution.cpp index 339eba183a534bc38299383100d5866ae8fc2e5e..6a13b97683893562676ee45afd31c753926c2e66 100644 --- a/App/src/TestDetectorResolution.cpp +++ b/App/src/TestDetectorResolution.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestDetectorResolution.cpp @@ -39,7 +39,7 @@ void TestDetectorResolution::execute() new ResolutionFunction2DSimple(0.001, 0.001); simulation.setDetectorResolutionFunction(p_resolution_function); simulation.setBeamParameters - (1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + (1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); simulation.runSimulation(); mp_intensity_output = simulation.getOutputDataClone(); IsGISAXSTools::drawLogOutputData diff --git a/App/src/TestFittingModule1.cpp b/App/src/TestFittingModule1.cpp index 1837f3ebe7b46c504759999ddec7edae5e32bb9c..988aa9f02d77858ff450516ce434d6f89e738099 100644 --- a/App/src/TestFittingModule1.cpp +++ b/App/src/TestFittingModule1.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestFittingModule1.cpp @@ -96,8 +96,10 @@ void TestFittingModule1::initializeSimulation() delete mp_simulation; mp_simulation = new Simulation(mp_options); mp_simulation->setSample(*mp_sample); - mp_simulation->setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree,100 , 0.0*Units::degree, 2.0*Units::degree); - mp_simulation->setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + mp_simulation->setDetectorParameters(100, 0.0*Units::degree, + 2.0*Units::degree,100 , 0.0*Units::degree, 2.0*Units::degree); + mp_simulation->setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); mp_simulation->setBeamIntensity(1e10); } @@ -112,10 +114,12 @@ void TestFittingModule1::initializeSample1() MultiLayer *p_multi_layer = new MultiLayer(); complex_t n_air(1.0, 0.0); complex_t n_particle(1.0-6e-4, 2e-8); - const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", n_air); + const IMaterial *p_air_material = + MaterialManager::getHomogeneousMaterial("Air", n_air); Layer air_layer; air_layer.setMaterial(p_air_material); - ParticleDecoration particle_decoration( new Particle(n_particle, new FormFactorCylinder(5*Units::nanometer, 5*Units::nanometer))); + ParticleDecoration particle_decoration( new Particle(n_particle, + new FormFactorCylinder(5*Units::nanometer, 5*Units::nanometer))); particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); LayerDecorator air_layer_decorator(air_layer, particle_decoration); p_multi_layer->addLayer(air_layer_decorator); diff --git a/App/src/TestFittingModule2.cpp b/App/src/TestFittingModule2.cpp index 35657c8949dc0ef151ea97d0d285adeddece2808..0a945ecee3d9a2bd1ccdd93de807da3237d8bda2 100644 --- a/App/src/TestFittingModule2.cpp +++ b/App/src/TestFittingModule2.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestFittingModule2.cpp @@ -99,7 +99,7 @@ void TestFittingModule2::fit_example_basics() initializeSimulation(); initializeRealData(); - m_fitSuite->addFitParameter("*SampleBuilder/m_cylinder_height", + m_fitSuite->addFitParameter("*SampleBuilder/m_cylinder_height", 5*Units::nanometer, 1*Units::nanometer, AttLimits::lowerLimited(0.01) ); m_fitSuite->addFitParameter("*SampleBuilder/m_cylinder_radius", @@ -271,7 +271,7 @@ void TestFittingModule2::initializeSimulation() 100, 0.0*Units::degree, 2.0*Units::degree); mp_simulation->setBeamParameters( 1.0*Units::angstrom, - -0.2*Units::degree, + 0.2*Units::degree, 0.0*Units::degree); } diff --git a/App/src/TestFittingModule3.cpp b/App/src/TestFittingModule3.cpp index b8f9d6104147a1b68afb011c959c11942410562e..c5fcba934311ddfea2c7a897e9e8f1766bbb3244 100644 --- a/App/src/TestFittingModule3.cpp +++ b/App/src/TestFittingModule3.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestFittingModule3.cpp @@ -99,7 +99,7 @@ void TestFittingModule3::initializeSimulation() m_simulation = new Simulation(mp_options); m_simulation->setSample(*m_sample); m_simulation->setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree,100 , 0.0*Units::degree, 2.0*Units::degree); - m_simulation->setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + m_simulation->setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); m_simulation->setBeamIntensity(1e10); } diff --git a/App/src/TestFormFactors.cpp b/App/src/TestFormFactors.cpp index fc086adaa90335ff6324e1ada21f311cf14a65c8..69754a79718123cf66a12fb77ea3b4762d15a434 100644 --- a/App/src/TestFormFactors.cpp +++ b/App/src/TestFormFactors.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestFormFactors.cpp @@ -31,7 +31,7 @@ void TestFormFactors::execute() Simulation simulation(mp_options); simulation.setSample(*sample); simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); simulation.runSimulation(); m_data_path = std::string(Utils::FileSystem::GetHomePath()+"./Examples/FormFactors/"); OutputDataIOFactory::writeOutputData(*simulation.getOutputData(), Utils::FileSystem::GetHomePath()+"./Examples/FormFactors/this_Box.ima"); diff --git a/App/src/TestFourier.cpp b/App/src/TestFourier.cpp index 104348a9034b73d84ae2d49e707b96a91baeb231..4aec3e2bf3baca63cbf7704a30754d1a24036ddb 100644 --- a/App/src/TestFourier.cpp +++ b/App/src/TestFourier.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestFourier.cpp @@ -44,7 +44,7 @@ void TestFourier::execute() simulation.setSample(*mp_sample); simulation.setDetectorParameters(256, 0.3*Units::degree, 10.0*Units::degree ,256, 0.0*Units::degree, 10.0*Units::degree); - simulation.setBeamParameters(1.77*Units::angstrom, -0.4*Units::degree, 0.0*Units::degree); + simulation.setBeamParameters(1.77*Units::angstrom, 0.4*Units::degree, 0.0*Units::degree); simulation.setBeamIntensity(8e12); simulation.runSimulation(); diff --git a/App/src/TestIsGISAXS1.cpp b/App/src/TestIsGISAXS1.cpp index 480bb9675d07234c4601b77c48f178c9b45bdfe6..30e77e066f605505a58ebd3b07c7a8018ea4a119 100644 --- a/App/src/TestIsGISAXS1.cpp +++ b/App/src/TestIsGISAXS1.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestIsGISAXS1.cpp @@ -41,7 +41,7 @@ void TestIsGISAXS1::execute() 100,-1.0*Units::degree, 1.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); simulation.setBeamParameters( - 1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + 1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); // Run simulation simulation.setSample(*sample); diff --git a/App/src/TestIsGISAXS12.cpp b/App/src/TestIsGISAXS12.cpp index 36cb52d24a3d96d1fc4c5024a39e860ed86e4d6e..c421b61af8a5b800d07404eb411eb9ebe2ce7d5c 100644 --- a/App/src/TestIsGISAXS12.cpp +++ b/App/src/TestIsGISAXS12.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestIsGISAXS12.cpp @@ -430,7 +430,7 @@ void TestIsGISAXS12::initializeSimulation() m_simulation = new Simulation(mp_options); m_simulation->setSampleBuilder(m_sample_builder); m_simulation->setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - m_simulation->setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + m_simulation->setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); } @@ -477,9 +477,9 @@ ISample *TestIsGISAXS12::TestSampleBuilder::buildSample() const complex_t n_particle(1.0-6e-4, 2e-8); const IMaterial *air_material = - MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); const IMaterial *substrate_material = - MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer(air_material); diff --git a/App/src/TestIsGISAXS13.cpp b/App/src/TestIsGISAXS13.cpp index b698a40ed4e1fd3cbf8061ff725d478827916bf2..6445d51c2a59027c5a12b913069874fe87423e62 100644 --- a/App/src/TestIsGISAXS13.cpp +++ b/App/src/TestIsGISAXS13.cpp @@ -222,7 +222,7 @@ void TestIsGISAXS13::initializeSimulation() 100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); mp_simulation->setBeamParameters(1.0*Units::angstrom, - -0.2*Units::degree, 0.0*Units::degree); + 0.2*Units::degree, 0.0*Units::degree); } diff --git a/App/src/TestIsGISAXS14.cpp b/App/src/TestIsGISAXS14.cpp index a64e7448f79159e5fd869f2761739cb434f302ac..ca33876a4775d766d80ae649c1678aee80321fa6 100644 --- a/App/src/TestIsGISAXS14.cpp +++ b/App/src/TestIsGISAXS14.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestIsGISAXS14.cpp @@ -39,7 +39,7 @@ void TestIsGISAXS14::execute() Simulation simulation(mp_options); simulation.setSample(*sample); simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); simulation.runSimulation(); OutputDataIOFactory::writeOutputData(*simulation.getOutputDataClone(), getOutputPath() + "this_multilayer_sphere.ima"); } diff --git a/App/src/TestIsGISAXS2.cpp b/App/src/TestIsGISAXS2.cpp index 71259879f1bcdc90f02d82c3037cbf5cbfc5c32d..3db5652d862299a71eb719730b4e3b087322e09a 100644 --- a/App/src/TestIsGISAXS2.cpp +++ b/App/src/TestIsGISAXS2.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestIsGISAXS2.cpp @@ -35,7 +35,7 @@ void TestIsGISAXS2::execute() Simulation simulation; simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); simulation.setSample(*sample); simulation.runSimulation(); diff --git a/App/src/TestIsGISAXS3.cpp b/App/src/TestIsGISAXS3.cpp index 70aa70cbf74786370c72c5ac80e5053ffea3550f..562bb8492accba622aecc50af62da3178dbc22fc 100644 --- a/App/src/TestIsGISAXS3.cpp +++ b/App/src/TestIsGISAXS3.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestIsGISAXS3.cpp @@ -47,7 +47,7 @@ void TestIsGISAXS3::execute() Simulation simulation; simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); // test1 ISample *sample = factory.createSample("isgisaxs03_dwba"); diff --git a/App/src/TestIsGISAXS4.cpp b/App/src/TestIsGISAXS4.cpp index c0b548ab4d811b096dd35c55ffed512261a2350d..e98198d7d7b09f9951150a2b4720568172969154 100644 --- a/App/src/TestIsGISAXS4.cpp +++ b/App/src/TestIsGISAXS4.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestIsGISAXS4.cpp @@ -36,7 +36,7 @@ void TestIsGISAXS4::execute() Simulation simulation; simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); ISample *sample = factory.createSample("isgisaxs04_1DDL"); simulation.setSample(*sample); diff --git a/App/src/TestIsGISAXS5.cpp b/App/src/TestIsGISAXS5.cpp index d09f3e5de06b0c421cfba567b3fd9732db483a1a..a48b86f57168f1c6facc0f6f27cdf8e7d83ec809 100644 --- a/App/src/TestIsGISAXS5.cpp +++ b/App/src/TestIsGISAXS5.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestIsGISAXS5.cpp @@ -247,7 +247,7 @@ void TestIsGISAXS5::initializeSimulation() mp_simulation = new Simulation(mp_options); mp_simulation->setSampleBuilder(mp_sample_builder); mp_simulation->setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - mp_simulation->setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + mp_simulation->setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); } /* ************************************************************************* */ @@ -278,8 +278,8 @@ ISample *TestIsGISAXS5::SampleBuilder::buildSample() const MultiLayer *p_multi_layer = new MultiLayer(); complex_t n_particle(1.0-6e-4, 2e-8); - const IMaterial *air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); - const IMaterial *substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + const IMaterial *air_material = MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); + const IMaterial *substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer(air_material); double height = m_height_aspect_ratio*m_particle_radius; diff --git a/App/src/TestIsGISAXS9.cpp b/App/src/TestIsGISAXS9.cpp index e72a87150c170e1ad85d8d86200aec83d813aa87..fa241c6c63940fdd89886f9cb988bd8a796010c3 100644 --- a/App/src/TestIsGISAXS9.cpp +++ b/App/src/TestIsGISAXS9.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestIsGISAXS9.cpp @@ -43,7 +43,7 @@ void TestIsGISAXS9::execute() 100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); simulation.setBeamParameters( - 1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + 1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); SampleBuilderFactory factory; ISample *sample = factory.createSample("isgisaxs09"); diff --git a/App/src/TestMesoCrystal1.cpp b/App/src/TestMesoCrystal1.cpp index 1dff93251b2f740ea5e9d5ef15c40d7121aa9f9b..fc90f678de84708c19322f75d753b36f563ec8ef 100644 --- a/App/src/TestMesoCrystal1.cpp +++ b/App/src/TestMesoCrystal1.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestMesoCrystal1.cpp @@ -68,7 +68,7 @@ void TestMesoCrystal1::execute() simulation.setDetectorResolutionFunction( new ResolutionFunction2DSimple(0.00017, 0.00017)); simulation.setBeamParameters( - 1.77*Units::angstrom, -0.4*Units::degree, 0.0*Units::degree); + 1.77*Units::angstrom, 0.4*Units::degree, 0.0*Units::degree); simulation.setBeamIntensity(8e12); ParameterPool *p_param_pool = simulation.createParameterTree(); diff --git a/App/src/TestMesoCrystal2.cpp b/App/src/TestMesoCrystal2.cpp index b1dca2f673af0f15c3d19f61b23fe9fbb3c53532..8ecb161b531399abef93da225ee27846d02459fb 100644 --- a/App/src/TestMesoCrystal2.cpp +++ b/App/src/TestMesoCrystal2.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestMesoCrystal2.cpp @@ -505,7 +505,7 @@ void TestMesoCrystal2::initializeSimulation(const OutputData<double> *output_dat m_simulation = new Simulation(mp_options); m_simulation->setSampleBuilder( m_sample_builder ); - m_simulation->setBeamParameters(1.77*Units::angstrom, -0.4*Units::degree, 0.0*Units::degree); + m_simulation->setBeamParameters(1.77*Units::angstrom, 0.4*Units::degree, 0.0*Units::degree); m_simulation->setBeamIntensity(8e12); m_simulation->setDetectorResolutionFunction(new ResolutionFunction2DSimple(0.0002, 0.0002)); diff --git a/App/src/TestMultiLayerRoughness.cpp b/App/src/TestMultiLayerRoughness.cpp index b8aab0b8390c76bfdc6204785bb9bb955a218f7f..9d8fabba5b04deaad696aa56580f927ca7160eb0 100644 --- a/App/src/TestMultiLayerRoughness.cpp +++ b/App/src/TestMultiLayerRoughness.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestMultiLayerRoughness.cpp @@ -52,7 +52,7 @@ void TestMultiLayerRoughness::execute() Simulation simulation(mp_options); simulation.setSample(*sample); simulation.setDetectorParameters(2, 0.0*Units::degree, 0.00001*Units::degree, npoints, 0.0*Units::degree, 2.0*Units::degree, false); - simulation.setBeamParameters(1.54*Units::angstrom, -alpha_i, 0.0*Units::degree); + simulation.setBeamParameters(1.54*Units::angstrom, alpha_i, 0.0*Units::degree); simulation.runSimulation(); diff --git a/App/src/TestPerformance.cpp b/App/src/TestPerformance.cpp index f7c790d5ff893e300ee0136b3211ca2811288eba..88b8a966fe32e17b229671b190a1392953db6089 100644 --- a/App/src/TestPerformance.cpp +++ b/App/src/TestPerformance.cpp @@ -218,7 +218,7 @@ void PerfTest_Pyramid::initialise(ProgramOptions *p_options) if(m_simulation) delete m_simulation; m_simulation = new Simulation(mp_options); m_simulation->setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - m_simulation->setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + m_simulation->setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); m_simulation->setSample(*m_sample); } @@ -243,7 +243,7 @@ void PerfTest_RotatedPyramid::initialise(ProgramOptions *p_options) if(m_simulation) delete m_simulation; m_simulation = new Simulation(p_options); m_simulation->setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - m_simulation->setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + m_simulation->setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); m_simulation->setSample(*m_sample); } @@ -267,7 +267,7 @@ void PerfTest_MesoCrystal::initialise(ProgramOptions *p_options) m_simulation = new Simulation(p_options); m_simulation->setSample(*m_sample); m_simulation->setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - m_simulation->setBeamParameters(0.77*Units::angstrom, -0.4*Units::degree, 0.0*Units::degree); + m_simulation->setBeamParameters(0.77*Units::angstrom, 0.4*Units::degree, 0.0*Units::degree); } diff --git a/App/src/TestRootTree.cpp b/App/src/TestRootTree.cpp index e8dcaabbfd8b79eabb34cc9b7e24c40af70af5f6..49480877efca930908dd82ac44ff974b8aca8536 100644 --- a/App/src/TestRootTree.cpp +++ b/App/src/TestRootTree.cpp @@ -1,5 +1,5 @@ // ************************************************************************** // -// +// // BornAgain: simulate and fit scattering at grazing incidence // //! @file App/src/TestRootTree.cpp @@ -115,7 +115,7 @@ void TestRootTree::complex_write() simulation.setDetectorParameters( nphi_f, phi_f_min, phi_f_max, nalpha_f , alpha_f_min, alpha_f_max); - simulation.setBeamParameters(1.77*Units::angstrom, -alpha_i, phi_i); + simulation.setBeamParameters(1.77*Units::angstrom, alpha_i, phi_i); simulation.setBeamIntensity(1e7); simulation.runSimulation(); simulation.normalize(); @@ -219,7 +219,7 @@ void TestRootTree::simple_write() 100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); mp_simulation->setBeamParameters( - 1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + 1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); mp_simulation->setSample(*mp_sample); // variables below will be written in the tree @@ -259,7 +259,7 @@ void TestRootTree::simple_write() for(int i_ev=0; i_ev<nTotalEvents; i_ev++) { if(i_ev%10 ==0 ) std::cout << "nevent:" << i_ev << std::endl; - alpha_i = -0.3 + 0.1*mr.Rndm(); // generating random alpha_i in the interval + alpha_i = 0.3 - 0.1*mr.Rndm(); // generating random alpha_i in the interval //phi_i = M_PI*2.*mr.Rndm(); // generating random phi_i in the interval phi_i = 0; nev = i_ev; diff --git a/Core/Algorithms/src/Beam.cpp b/Core/Algorithms/src/Beam.cpp index e697e1169e5014ce6a0bbb440be0854306f37a81..3a103764a4c1326351d867ecea7da14729a6927c 100644 --- a/Core/Algorithms/src/Beam.cpp +++ b/Core/Algorithms/src/Beam.cpp @@ -50,6 +50,7 @@ void Beam::setCentralK(const cvector_t& k_i) void Beam::setCentralK(double lambda, double alpha_i, double phi_i) { cvector_t k_i; + if (alpha_i >0) alpha_i = - alpha_i; k_i.setLambdaAlphaPhi(lambda, alpha_i, phi_i); m_central_k = k_i; } diff --git a/Core/Samples/inc/HomogeneousMagneticMaterial.h b/Core/Samples/inc/HomogeneousMagneticMaterial.h index 2e7d89d8b8f1c2528a74a76aba25e19dd71b2607..7709384693629396a834f52216f60c4712b0f081 100644 --- a/Core/Samples/inc/HomogeneousMagneticMaterial.h +++ b/Core/Samples/inc/HomogeneousMagneticMaterial.h @@ -31,6 +31,13 @@ public: const complex_t& refractive_index, const kvector_t& magnetic_field); + //! Constructs a material with _name_, refractive_index parameters and + //! _magnetic_field_ + HomogeneousMagneticMaterial(const std::string& name, + double refractive_index_delta, + double refractive_index_beta, + const kvector_t& magnetic_field); + //! Get the magnetic field (in Tesla) kvector_t getMagneticField() const { return m_magnetic_field; } diff --git a/Core/Samples/inc/HomogeneousMaterial.h b/Core/Samples/inc/HomogeneousMaterial.h index ff1d89edc235772e8c4bd405cbf12a5036cc65e3..fef46754b910c15b4db9a5a9716de1f9ae326df6 100644 --- a/Core/Samples/inc/HomogeneousMaterial.h +++ b/Core/Samples/inc/HomogeneousMaterial.h @@ -19,7 +19,7 @@ #include "IMaterial.h" #include "Types.h" -//! A homogeneous material with refraction index. +//! A homogeneous material with a refractive index. class HomogeneousMaterial : public IMaterial { @@ -29,13 +29,14 @@ class HomogeneousMaterial : public IMaterial const complex_t& refractive_index) : IMaterial(name), m_refractive_index(refractive_index) {} - //! Constructs a material with _name_ and refractive_index. + //! Constructs a material with _name_ and refractive_index parameters + //! delta and beta (n = 1 - delta + i*beta). HomogeneousMaterial(const std::string& name, - double refractive_index_real, - double refractive_index_imag ) + double refractive_index_delta, + double refractive_index_beta) : IMaterial(name), - m_refractive_index(complex_t(refractive_index_real, - refractive_index_imag)) {} + m_refractive_index(complex_t(1.0-refractive_index_delta, + refractive_index_beta)) {} virtual ~HomogeneousMaterial() {} diff --git a/Core/Samples/inc/MaterialManager.h b/Core/Samples/inc/MaterialManager.h index d1905f30ee478167de89429588a8359c1792c573..7ec7854806936277ec7e92fa10dc2d9d2d691266 100644 --- a/Core/Samples/inc/MaterialManager.h +++ b/Core/Samples/inc/MaterialManager.h @@ -50,10 +50,10 @@ class BA_CORE_API_ MaterialManager: public ISingleton<MaterialManager> //! Adds material to database. static const IMaterial *getHomogeneousMaterial( const std::string& name, - double refractive_index_real, - double refractive_index_imag) + double refractive_index_delta, + double refractive_index_beta) { return instance().this_getHomogeneousMaterial( - name, refractive_index_real, refractive_index_imag); } + name, refractive_index_delta, refractive_index_beta); } //! returns number of materials static int getNumberOfMaterials() { return instance().this_getNumberOfMaterials(); } @@ -96,7 +96,7 @@ class BA_CORE_API_ MaterialManager: public ISingleton<MaterialManager> const std::string& name, const complex_t& refractive_index); const IMaterial *this_getHomogeneousMaterial( const std::string& name, - double refractive_index_real, double refractive_index_imag); + double refractive_index_delta, double refractive_index_beta); int this_getNumberOfMaterials() const { return (int)m_materials.size(); } void check_refractive_index(const complex_t &index); diff --git a/Core/Samples/src/HomogeneousMagneticMaterial.cpp b/Core/Samples/src/HomogeneousMagneticMaterial.cpp index 107363fbbd2928ad821a036ce5e0dc64dce9a658..14ae68748004ac47c42091a52c3d0a256e7cbd23 100644 --- a/Core/Samples/src/HomogeneousMagneticMaterial.cpp +++ b/Core/Samples/src/HomogeneousMagneticMaterial.cpp @@ -27,6 +27,15 @@ HomogeneousMagneticMaterial::HomogeneousMagneticMaterial( initializePrivateMemebers(); } +HomogeneousMagneticMaterial::HomogeneousMagneticMaterial( + const std::string& name, double refractive_index_delta, + double refractive_index_beta, const kvector_t& magnetic_field) +: HomogeneousMaterial(name, refractive_index_delta, refractive_index_beta) +, m_magnetic_field(magnetic_field) +{ + initializePrivateMemebers(); +} + Eigen::Matrix2cd HomogeneousMagneticMaterial::getScatteringMatrix( const kvector_t& k) const { diff --git a/Core/Samples/src/MaterialManager.cpp b/Core/Samples/src/MaterialManager.cpp index 0d537f0518e7e8f0d50ca0981c4e83ad4e7817f4..6ab618451483b57c4587d1f4b5b4c8ac1876e6f8 100644 --- a/Core/Samples/src/MaterialManager.cpp +++ b/Core/Samples/src/MaterialManager.cpp @@ -83,11 +83,11 @@ const IMaterial *MaterialManager::this_getHomogeneousMaterial( const IMaterial *MaterialManager::this_getHomogeneousMaterial( const std::string& name, - double refractive_index_real, - double refractive_index_imag) + double refractive_index_delta, + double refractive_index_beta) { return getHomogeneousMaterial( - name, complex_t(refractive_index_real, refractive_index_imag)); + name, complex_t(1.0-refractive_index_delta, refractive_index_beta)); } //! Dump this to stream. diff --git a/Core/StandardSamples/IsGISAXS01Builder.cpp b/Core/StandardSamples/IsGISAXS01Builder.cpp index 813599b03164ab0bc22bb6065343d43f3319db05..f30e3d97622a99203017d7e5cc470277823f5449 100644 --- a/Core/StandardSamples/IsGISAXS01Builder.cpp +++ b/Core/StandardSamples/IsGISAXS01Builder.cpp @@ -34,9 +34,9 @@ ISample *IsGISAXS01Builder::buildSample() const { MultiLayer *multi_layer = new MultiLayer(); const IMaterial *p_air_material = - MaterialManager::getHomogeneousMaterial("Air", 1., 0.); + MaterialManager::getHomogeneousMaterial("Air", 0., 0.); const IMaterial *p_substrate_material = - MaterialManager::getHomogeneousMaterial("Substrate", 1-6e-6, 2e-8); + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; diff --git a/Core/StandardSamples/IsGISAXS02Builder.cpp b/Core/StandardSamples/IsGISAXS02Builder.cpp index 49f9d7047c60f1681984efdbc732c78a48b7ad5c..8a139788dc71ca23ec12e2df9b6899f3959623e8 100644 --- a/Core/StandardSamples/IsGISAXS02Builder.cpp +++ b/Core/StandardSamples/IsGISAXS02Builder.cpp @@ -41,7 +41,7 @@ ISample *IsGISAXS02Builder::buildSample() const { MultiLayer *multi_layer = new MultiLayer(); - const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); + const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); Layer air_layer; air_layer.setMaterial(p_air_material); diff --git a/Core/StandardSamples/IsGISAXS03Builder.cpp b/Core/StandardSamples/IsGISAXS03Builder.cpp index 3538fde234f70999b85c48a352326388adcca33e..524ad7b48f5619e3aa0a27863b96503c6f42e2c6 100644 --- a/Core/StandardSamples/IsGISAXS03Builder.cpp +++ b/Core/StandardSamples/IsGISAXS03Builder.cpp @@ -35,8 +35,10 @@ ISample *IsGISAXS03DWBABuilder::buildSample() const { MultiLayer *multi_layer = new MultiLayer(); - const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); - const IMaterial *p_substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + const IMaterial *p_air_material = + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); + const IMaterial *p_substrate_material = + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; @@ -76,8 +78,10 @@ ISample *IsGISAXS03BABuilder::buildSample() const { MultiLayer *multi_layer = new MultiLayer(); - const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); - const IMaterial *p_substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + const IMaterial *p_air_material = + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); + const IMaterial *p_substrate_material = + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; @@ -115,8 +119,10 @@ ISample *IsGISAXS03BASizeBuilder::buildSample() const { MultiLayer *multi_layer = new MultiLayer(); - const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); - const IMaterial *p_substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + const IMaterial *p_air_material = + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); + const IMaterial *p_substrate_material = + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; diff --git a/Core/StandardSamples/IsGISAXS04Builder.cpp b/Core/StandardSamples/IsGISAXS04Builder.cpp index ddf9dfa0e6ef72f39b5b924497e55f7ace7fdadc..e72f88d16441990ac80fafd70a1e2a72daeb6cd4 100644 --- a/Core/StandardSamples/IsGISAXS04Builder.cpp +++ b/Core/StandardSamples/IsGISAXS04Builder.cpp @@ -34,8 +34,10 @@ ISample *IsGISAXS04Para1DBuilder::buildSample() const MultiLayer *multi_layer = new MultiLayer(); complex_t n_particle(1.0-6e-4, 2e-8); - const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); - const IMaterial *p_substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + const IMaterial *p_air_material = + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); + const IMaterial *p_substrate_material = + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; @@ -84,8 +86,10 @@ ISample *IsGISAXS04Para2DBuilder::buildSample() const MultiLayer *multi_layer = new MultiLayer(); complex_t n_particle(1.0-6e-4, 2e-8); - const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); - const IMaterial *p_substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + const IMaterial *p_air_material = + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); + const IMaterial *p_substrate_material = + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; diff --git a/Core/StandardSamples/IsGISAXS06Builder.cpp b/Core/StandardSamples/IsGISAXS06Builder.cpp index 86803ae4c0bdf12b9f1a03e065df48be3685a793..4fc51f8676b4bd5208e94bf4b82b4425bded1f7d 100644 --- a/Core/StandardSamples/IsGISAXS06Builder.cpp +++ b/Core/StandardSamples/IsGISAXS06Builder.cpp @@ -23,9 +23,9 @@ ISample *IsGISAXS06Lattice1Builder::buildSample() const complex_t n_particle(1.0-6e-4, 2e-8); const IMaterial *p_air_material = - MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); const IMaterial *p_substrate_material = - MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; @@ -76,9 +76,9 @@ ISample *IsGISAXS06Lattice2Builder::buildSample() const complex_t n_particle(1.0-6e-4, 2e-8); const IMaterial *p_air_material = - MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); const IMaterial *p_substrate_material = - MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; @@ -131,9 +131,9 @@ ISample *IsGISAXS06Lattice3Builder::buildSample() const complex_t n_particle(1.0-6e-4, 2e-8); const IMaterial *p_air_material = - MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); const IMaterial *p_substrate_material = - MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; @@ -196,9 +196,9 @@ ISample *IsGISAXS06Lattice4Builder::buildSample() const MultiLayer *p_multi_layer = new MultiLayer(); complex_t n_particle(1.0-6e-4, 2e-8); const IMaterial *p_air_material = - MaterialManager::getHomogeneousMaterial("Air", 1.0,0.0); + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); const IMaterial *p_substrate_material = - MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; diff --git a/Core/StandardSamples/IsGISAXS09Builder.cpp b/Core/StandardSamples/IsGISAXS09Builder.cpp index 304d12696b04835001fc74b783cb7e86d830a980..961615b36fa0c60a7c37dfb2bc8b8d9c04c57438 100644 --- a/Core/StandardSamples/IsGISAXS09Builder.cpp +++ b/Core/StandardSamples/IsGISAXS09Builder.cpp @@ -35,9 +35,9 @@ ISample *IsGISAXS09Builder::buildSample() const MultiLayer *multi_layer = new MultiLayer(); const IMaterial *p_air_material = - MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); const IMaterial *p_substrate_material = - MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; @@ -86,9 +86,9 @@ ISample *IsGISAXS09RotatedBuilder::buildSample() const MultiLayer *multi_layer = new MultiLayer(); const IMaterial *p_air_material = - MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); const IMaterial *p_substrate_material = - MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; diff --git a/Examples/python/ex001_CylindersAndPrisms/CylindersAndPrisms.py b/Examples/python/ex001_CylindersAndPrisms/CylindersAndPrisms.py index c084fad503c973408a4812145162f1e3e1c1ec69..48c574c10eca8b8fe5a1e0e0064bfc24ed8ef164 100644 --- a/Examples/python/ex001_CylindersAndPrisms/CylindersAndPrisms.py +++ b/Examples/python/ex001_CylindersAndPrisms/CylindersAndPrisms.py @@ -16,8 +16,8 @@ from utils.show2d import PlotNumpyArray # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) cylinder_ff = FormFactorCylinder(5*nanometer, 5*nanometer) @@ -40,7 +40,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,-1.0*degree, 1.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() ## intensity data diff --git a/Examples/python/ex002_CylindersWithSizeDistribution/CylindersWithSizeDistribution.py b/Examples/python/ex002_CylindersWithSizeDistribution/CylindersWithSizeDistribution.py index 65ef02600ce60dbf34dd93bdd5ca7e5ffb3c3ecb..abc5e19adff66173523c82cd11cd8268cb12855e 100644 --- a/Examples/python/ex002_CylindersWithSizeDistribution/CylindersWithSizeDistribution.py +++ b/Examples/python/ex002_CylindersWithSizeDistribution/CylindersWithSizeDistribution.py @@ -15,7 +15,7 @@ from utils.show2d import PlotNumpyArray # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) radius1 = 5.0*nanometer @@ -58,7 +58,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100, 0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() diff --git a/Examples/python/ex003_CylinderFormfactor/CylinderFormfactorInBA.py b/Examples/python/ex003_CylinderFormfactor/CylinderFormfactorInBA.py index 178d46966ba790d9d088f82d4fb7f9f2d91f49e9..ae428e74d3eac6bc9beb10c3a9f3d1032e039a8e 100644 --- a/Examples/python/ex003_CylinderFormfactor/CylinderFormfactorInBA.py +++ b/Examples/python/ex003_CylinderFormfactor/CylinderFormfactorInBA.py @@ -17,8 +17,8 @@ from utils.show2d import PlotNumpyArray # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) cylinder_ff = FormFactorCylinder(5*nanometer, 5*nanometer) @@ -37,7 +37,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() return GetOutputData(simulation) diff --git a/Examples/python/ex003_CylinderFormfactor/CylinderFormfactorInBASize.py b/Examples/python/ex003_CylinderFormfactor/CylinderFormfactorInBASize.py index d05eb3d4ef16db5aa756ac6888db3c1b719f9fd9..b463f34d90380e20f088b459cacc88ed6ca50b34 100644 --- a/Examples/python/ex003_CylinderFormfactor/CylinderFormfactorInBASize.py +++ b/Examples/python/ex003_CylinderFormfactor/CylinderFormfactorInBASize.py @@ -17,8 +17,8 @@ from utils.show2d import PlotNumpyArray # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) multi_layer = MultiLayer() @@ -48,7 +48,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() return GetOutputData(simulation) diff --git a/Examples/python/ex003_CylinderFormfactor/CylinderFormfactorInDWBA.py b/Examples/python/ex003_CylinderFormfactor/CylinderFormfactorInDWBA.py index 17ba9723702d30940a7dea529cf3237d8de70ef4..51213dca37841a4aa890de3fe8f15bac8986e20c 100644 --- a/Examples/python/ex003_CylinderFormfactor/CylinderFormfactorInDWBA.py +++ b/Examples/python/ex003_CylinderFormfactor/CylinderFormfactorInDWBA.py @@ -18,8 +18,8 @@ from utils.show2d import PlotNumpyArray # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) cylinder_ff = FormFactorCylinder(5*nanometer, 5*nanometer) @@ -40,7 +40,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() diff --git a/Examples/python/ex004_CylindersParaCrystal/CylindersParaCrystal_1DDL.py b/Examples/python/ex004_CylindersParaCrystal/CylindersParaCrystal_1DDL.py index 7f45de5f82dea31e171301346b599840eeae9d7a..9a323852f71b6ba3d126264a3ac00b924fcef77b 100644 --- a/Examples/python/ex004_CylindersParaCrystal/CylindersParaCrystal_1DDL.py +++ b/Examples/python/ex004_CylindersParaCrystal/CylindersParaCrystal_1DDL.py @@ -16,8 +16,8 @@ from utils.show2d import PlotNumpyArray # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) cylinder_ff = FormFactorCylinder(5*nanometer, 5*nanometer) @@ -37,7 +37,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() ## intensity data diff --git a/Examples/python/ex004_CylindersParaCrystal/CylindersParaCrystal_2DDL.py b/Examples/python/ex004_CylindersParaCrystal/CylindersParaCrystal_2DDL.py index a6272baf3a02f1018a2fb96324c2f69df9943beb..1556da88dc585170f761679a0c125502a4ee27f0 100644 --- a/Examples/python/ex004_CylindersParaCrystal/CylindersParaCrystal_2DDL.py +++ b/Examples/python/ex004_CylindersParaCrystal/CylindersParaCrystal_2DDL.py @@ -16,8 +16,8 @@ from utils.show2d import PlotNumpyArray # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) @@ -43,7 +43,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() return GetOutputData(simulation) diff --git a/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder1.py b/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder1.py index e87a392b65d647882d518f8d4aa6a5f623530a29..4fdbd148cac6a66a56fd789f91519f3b7849e988 100644 --- a/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder1.py +++ b/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder1.py @@ -17,8 +17,8 @@ M_PI = numpy.pi # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles lattice_params = Lattice2DIFParameters() lattice_params.m_length_1 = 10.0*nanometer @@ -52,7 +52,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) sim_params= SimulationParameters() sim_params.me_framework = SimulationParameters.DWBA diff --git a/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder2.py b/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder2.py index 4864861f2c121535b572982b3d2c1762fe06af58..ca000cd9547cb4ae3426112491935235eb5cc6cc 100644 --- a/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder2.py +++ b/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder2.py @@ -17,8 +17,8 @@ M_PI = numpy.pi # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles lattice_params = Lattice2DIFParameters() lattice_params.m_length_1 = 10.0*nanometer @@ -57,7 +57,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) sim_params= SimulationParameters() sim_params.me_framework = SimulationParameters.DWBA diff --git a/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder3.py b/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder3.py index dcf2be0df5775fff83ee312b38831a02cbd32085..4d521e8a0cbd076e4251d265168060d830300360 100644 --- a/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder3.py +++ b/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder3.py @@ -17,8 +17,8 @@ M_PI = numpy.pi # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles lattice_params = Lattice2DIFParameters() lattice_params.m_length_1 = 10.0*nanometer @@ -52,7 +52,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) sim_params = SimulationParameters() sim_params.me_framework = SimulationParameters.DWBA diff --git a/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder4.py b/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder4.py index c4ffd295728eb8b785190f983aff7183a175a69f..126bf6551e431b6f73a1676fa0c993b66ea0dd8e 100644 --- a/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder4.py +++ b/Examples/python/ex006_LatticeWithDisorder/LatticeWithDisorder4.py @@ -20,7 +20,7 @@ def RunSimulation(): # building simulation simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) sim_params = SimulationParameters() sim_params.me_framework = SimulationParameters.DWBA @@ -52,8 +52,8 @@ def RunSimulation(): # IsGISAXS6 functional test sample builder for varying xi angle def buildSample(xi_value): n_particle = complex(1.0-6e-4, 2e-8) - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) air_layer = Layer(mAmbience) substrate_layer = Layer(mSubstrate) diff --git a/Examples/python/ex009_RotatedPyramids/Pyramids.py b/Examples/python/ex009_RotatedPyramids/Pyramids.py index 41df7496259f5e06fcc70dc2b7ffab1f720391db..8c8e1a90dbd4ff5454e6632671f9adf16abb6b45 100644 --- a/Examples/python/ex009_RotatedPyramids/Pyramids.py +++ b/Examples/python/ex009_RotatedPyramids/Pyramids.py @@ -16,8 +16,8 @@ from utils.show2d import PlotNumpyArray # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) pyramid_ff = FormFactorPyramid(5*nanometer, 5*nanometer, deg2rad(54.73 ) ) @@ -37,7 +37,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() ## intensity data diff --git a/Examples/python/ex009_RotatedPyramids/RotatedPyramids.py b/Examples/python/ex009_RotatedPyramids/RotatedPyramids.py index 4b11011737e98290be2ff9e13efc3fc591aa8c89..45cfccaec40d03f6ad26d13afc1622d050eae1b5 100644 --- a/Examples/python/ex009_RotatedPyramids/RotatedPyramids.py +++ b/Examples/python/ex009_RotatedPyramids/RotatedPyramids.py @@ -15,8 +15,8 @@ from utils.show2d import PlotNumpyArray # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) pyramid_ff = FormFactorPyramid(5*nanometer, 5*nanometer, deg2rad(54.73 ) ) @@ -41,7 +41,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() ## intensity data diff --git a/GUI/coregui/Views/Components/SampleDesigner/MaterialBrowser.cpp b/GUI/coregui/Views/Components/SampleDesigner/MaterialBrowser.cpp index 7c3bc39e49ed262ab30c7c34adfa8c1fef231d88..2c26e23de03cf77108fd0d45bd1cb0fafcb717c8 100644 --- a/GUI/coregui/Views/Components/SampleDesigner/MaterialBrowser.cpp +++ b/GUI/coregui/Views/Components/SampleDesigner/MaterialBrowser.cpp @@ -16,9 +16,9 @@ MaterialBrowser::MaterialBrowser(QWidget *parent) m_instance = this; // adding few default materials - MaterialManager::getHomogeneousMaterial("Air", 1., 0.); - MaterialManager::getHomogeneousMaterial("Substrate", 1-6e-6, 2e-8); - MaterialManager::getHomogeneousMaterial("Default", 1., 0.); + MaterialManager::getHomogeneousMaterial("Air", 0., 0.); + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); + MaterialManager::getHomogeneousMaterial("Default", 0., 0.); m_browserModel = new MaterialBrowserModel(0); } diff --git a/GUI/coregui/Views/Components/SampleDesigner/MaterialBrowserView.cpp b/GUI/coregui/Views/Components/SampleDesigner/MaterialBrowserView.cpp index 789d412ecbe945b06cc0f8361007e4491fd5c946..95f6cee4668c83ba77cea046b2bcd0774e72c172 100644 --- a/GUI/coregui/Views/Components/SampleDesigner/MaterialBrowserView.cpp +++ b/GUI/coregui/Views/Components/SampleDesigner/MaterialBrowserView.cpp @@ -126,7 +126,7 @@ void MaterialBrowserView::addMaterial() { QString name = QString("unnamed%1").arg(m_IndexOfUnnamed); std::cout << "MaterialBrowserView::addMaterial() -> " << name.toStdString() << std::endl; - MaterialManager::instance().getHomogeneousMaterial(name.toStdString(), 1.0, 0.0); + MaterialManager::instance().getHomogeneousMaterial(name.toStdString(), 0.0, 0.0); m_tableModel->UpdateMaterials(); m_tableView->scrollToBottom(); diff --git a/Tests/FunctionalTests/TestCore/IsGISAXS01/IsGISAXS01.cpp b/Tests/FunctionalTests/TestCore/IsGISAXS01/IsGISAXS01.cpp index 7363c010d5a75cca6588d839221b43691a231856..1d1c43dcc084fa70f9730e031a37ceec37b596be 100644 --- a/Tests/FunctionalTests/TestCore/IsGISAXS01/IsGISAXS01.cpp +++ b/Tests/FunctionalTests/TestCore/IsGISAXS01/IsGISAXS01.cpp @@ -25,7 +25,7 @@ void FunctionalTests::IsGISAXS01::run() 100,-1.0*Units::degree, 1.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); simulation.setBeamParameters( - 1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + 1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); // Run simulation simulation.setSample(*sample); diff --git a/Tests/FunctionalTests/TestCore/IsGISAXS02/IsGISAXS02.cpp b/Tests/FunctionalTests/TestCore/IsGISAXS02/IsGISAXS02.cpp index 28e8ba92de13c88fedacfe4f1f93946851f8dff2..3a30db7d255c40eb8213fac012c8307de214a253 100644 --- a/Tests/FunctionalTests/TestCore/IsGISAXS02/IsGISAXS02.cpp +++ b/Tests/FunctionalTests/TestCore/IsGISAXS02/IsGISAXS02.cpp @@ -22,8 +22,10 @@ void FunctionalTests::IsGISAXS02::run() ISample *sample = factory.createSample("isgisaxs02"); Simulation simulation; - simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation.setDetectorParameters(100, 0.0*Units::degree, + 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); simulation.setSample(*sample); simulation.runSimulation(); diff --git a/Tests/FunctionalTests/TestCore/IsGISAXS03/IsGISAXS03.cpp b/Tests/FunctionalTests/TestCore/IsGISAXS03/IsGISAXS03.cpp index b2b20d7dbd58e6d5f6a84baf4d10c381264ab19a..d5ce4285c6718af55925fcc5bfe7f0ed6b140cd3 100644 --- a/Tests/FunctionalTests/TestCore/IsGISAXS03/IsGISAXS03.cpp +++ b/Tests/FunctionalTests/TestCore/IsGISAXS03/IsGISAXS03.cpp @@ -30,8 +30,10 @@ void FunctionalTests::IsGISAXS03::runDWBA() // building simulation Simulation simulation; simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, - 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + 100, 0.0*Units::degree, 2.0*Units::degree, + true); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); // running simulation and copying data simulation.setSample(*sample); @@ -51,8 +53,10 @@ void FunctionalTests::IsGISAXS03::runBA() // building simulation Simulation simulation; simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, - 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + 100, 0.0*Units::degree, 2.0*Units::degree, + true); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); // running simulation and copying data simulation.setSample(*sample); @@ -72,8 +76,10 @@ void FunctionalTests::IsGISAXS03::runBA_Size() // building simulation Simulation simulation; simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, - 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + 100, 0.0*Units::degree, 2.0*Units::degree, + true); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); // running simulation and copying data simulation.setSample(*sample); diff --git a/Tests/FunctionalTests/TestCore/IsGISAXS04/IsGISAXS04.cpp b/Tests/FunctionalTests/TestCore/IsGISAXS04/IsGISAXS04.cpp index 809fed1647ee24d8e6fa486afbcc9a7f32c7c0aa..c616fca7312b3fb4a204b64eb440f788622727f0 100644 --- a/Tests/FunctionalTests/TestCore/IsGISAXS04/IsGISAXS04.cpp +++ b/Tests/FunctionalTests/TestCore/IsGISAXS04/IsGISAXS04.cpp @@ -20,7 +20,9 @@ FunctionalTests::IsGISAXS04::IsGISAXS04() FunctionalTests::IsGISAXS04::~IsGISAXS04() { - for(results_t::iterator it = m_results.begin(); it!=m_results.end(); ++it) delete (*it); + for(results_t::iterator it = m_results.begin(); it!=m_results.end(); ++it) { + delete (*it); + } } @@ -31,8 +33,10 @@ void FunctionalTests::IsGISAXS04::run1DDL() ISample *sample = factory.createSample("isgisaxs04_1DDL"); Simulation simulation; - simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, + 100, 0.0*Units::degree, 2.0*Units::degree, true); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); simulation.setSample(*sample); simulation.runSimulation(); m_results[kTest_1DDL] = simulation.getOutputDataClone(); @@ -49,8 +53,10 @@ void FunctionalTests::IsGISAXS04::run2DDL() // building simulation Simulation simulation; - simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, + 100, 0.0*Units::degree, 2.0*Units::degree, true); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); simulation.setSample(*sample); simulation.runSimulation(); m_results[kTest_2DDL] = simulation.getOutputDataClone(); diff --git a/Tests/FunctionalTests/TestCore/IsGISAXS06/IsGISAXS06.cpp b/Tests/FunctionalTests/TestCore/IsGISAXS06/IsGISAXS06.cpp index f8cd890f64c558ec5e70cde8598e81c34b1bf9d5..f73596b961692ef4d4ee9dafd3849470b8a8cebf 100644 --- a/Tests/FunctionalTests/TestCore/IsGISAXS06/IsGISAXS06.cpp +++ b/Tests/FunctionalTests/TestCore/IsGISAXS06/IsGISAXS06.cpp @@ -27,7 +27,8 @@ FunctionalTests::IsGISAXS06::IsGISAXS06() m_simulation.setDetectorParameters( 100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - m_simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + m_simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); SimulationParameters sim_params; sim_params.me_framework = SimulationParameters::DWBA; @@ -40,7 +41,9 @@ FunctionalTests::IsGISAXS06::IsGISAXS06() FunctionalTests::IsGISAXS06::~IsGISAXS06() { - for(results_t::iterator it = m_results.begin(); it!=m_results.end(); ++it) delete (*it); + for(results_t::iterator it = m_results.begin(); it!=m_results.end(); ++it) { + delete (*it); + } } @@ -118,7 +121,8 @@ void FunctionalTests::IsGISAXS06::runvariants() } -int FunctionalTests::IsGISAXS06::analyseResults(const std::string &path_to_executable) +int FunctionalTests::IsGISAXS06::analyseResults( + const std::string &path_to_executable) { const double threshold(2e-10); const char *reference_files[kNumberOfTests] = { @@ -132,7 +136,8 @@ int FunctionalTests::IsGISAXS06::analyseResults(const std::string &path_to_execu // retrieving reference data and generated examples for(size_t i_test=0; i_test<kNumberOfTests; ++i_test) { OutputData<double> *reference = - OutputDataIOFactory::getOutputData(path_to_executable + reference_files[i_test]); + OutputDataIOFactory::getOutputData(path_to_executable + + reference_files[i_test]); OutputData<double> *result = m_results[i_test]; // calculating average relative difference @@ -159,7 +164,8 @@ int FunctionalTests::IsGISAXS06::analyseResults(const std::string &path_to_execu std::string GetPathToData(int argc, char **argv) { if(argc == 2) return argv[1]; - return Utils::FileSystem::GetPathToExecutable(argv[0]) + "../../../ReferenceData/BornAgain/"; + return Utils::FileSystem::GetPathToExecutable(argv[0]) + + "../../../ReferenceData/BornAgain/"; } int main(int argc, char **argv) diff --git a/Tests/FunctionalTests/TestCore/IsGISAXS07/IsGISAXS07.cpp b/Tests/FunctionalTests/TestCore/IsGISAXS07/IsGISAXS07.cpp index 22cbdc33a9d8c192ab3d662a4150295df9d8ad0d..926c2c723a7a1ca6f8bfaae60d1a79bac9b65c75 100644 --- a/Tests/FunctionalTests/TestCore/IsGISAXS07/IsGISAXS07.cpp +++ b/Tests/FunctionalTests/TestCore/IsGISAXS07/IsGISAXS07.cpp @@ -24,7 +24,7 @@ void FunctionalTests::IsGISAXS07::run() { // building sample MultiLayer multi_layer; - const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); + const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); Layer air_layer; air_layer.setMaterial(p_air_material); diff --git a/Tests/FunctionalTests/TestCore/IsGISAXS08/IsGISAXS08.cpp b/Tests/FunctionalTests/TestCore/IsGISAXS08/IsGISAXS08.cpp index 5bd36b4ef1b68fd440c64159ad9082b4c2142390..e285ff511b413650f2f9507eb6aca51bbba0abcb 100644 --- a/Tests/FunctionalTests/TestCore/IsGISAXS08/IsGISAXS08.cpp +++ b/Tests/FunctionalTests/TestCore/IsGISAXS08/IsGISAXS08.cpp @@ -34,19 +34,25 @@ void FunctionalTests::IsGISAXS08::run2DDL() // building sample MultiLayer multi_layer; complex_t n_particle(1.0-6e-4, 2e-8); - const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); - const IMaterial *p_substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + const IMaterial *p_air_material = + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); + const IMaterial *p_substrate_material = + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; substrate_layer.setMaterial(p_substrate_material); - InterferenceFunction2DParaCrystal *p_interference_function = new InterferenceFunction2DParaCrystal(10.0*Units::nanometer, 10.0*Units::nanometer, M_PI/2.0, 0.0, 0.0); - p_interference_function->setDomainSizes(20.0*Units::micrometer, 20.0*Units::micrometer); + InterferenceFunction2DParaCrystal *p_interference_function = + new InterferenceFunction2DParaCrystal(10.0*Units::nanometer, + 10.0*Units::nanometer, M_PI/2.0, 0.0, 0.0); + p_interference_function->setDomainSizes(20.0*Units::micrometer, + 20.0*Units::micrometer); FTDistribution2DCauchy pdf1(0.5*Units::nanometer, 2.0*Units::nanometer); FTDistribution2DCauchy pdf2(0.5*Units::nanometer, 2.0*Units::nanometer); p_interference_function->setProbabilityDistributions(pdf1, pdf2); - ParticleDecoration particle_decoration( new Particle(n_particle, new FormFactorCylinder(5*Units::nanometer, 5*Units::nanometer))); + ParticleDecoration particle_decoration( new Particle(n_particle, + new FormFactorCylinder(5*Units::nanometer, 5*Units::nanometer))); particle_decoration.addInterferenceFunction(p_interference_function); LayerDecorator air_layer_decorator(air_layer, particle_decoration); @@ -55,8 +61,10 @@ void FunctionalTests::IsGISAXS08::run2DDL() // building simulation Simulation simulation; - simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, + 100, 0.0*Units::degree, 2.0*Units::degree, true); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); simulation.setSample(multi_layer); // running simulation and copying data @@ -71,19 +79,25 @@ void FunctionalTests::IsGISAXS08::run2DDL2() // building sample MultiLayer multi_layer; complex_t n_particle(1.0-6e-4, 2e-8); - const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); - const IMaterial *p_substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + const IMaterial *p_air_material = + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); + const IMaterial *p_substrate_material = + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; substrate_layer.setMaterial(p_substrate_material); - InterferenceFunction2DParaCrystal *p_interference_function = new InterferenceFunction2DParaCrystal(10.0*Units::nanometer, 10.0*Units::nanometer, M_PI/2.0, 0.0, 0.0); - p_interference_function->setDomainSizes(20.0*Units::micrometer, 20.0*Units::micrometer); + InterferenceFunction2DParaCrystal *p_interference_function = + new InterferenceFunction2DParaCrystal(10.0*Units::nanometer, + 10.0*Units::nanometer, M_PI/2.0, 0.0, 0.0); + p_interference_function->setDomainSizes(20.0*Units::micrometer, + 20.0*Units::micrometer); FTDistribution2DCauchy pdf1(0.5*Units::nanometer, 0.5*Units::nanometer); FTDistribution2DCauchy pdf2(0.5*Units::nanometer, 0.5*Units::nanometer); p_interference_function->setProbabilityDistributions(pdf1, pdf2); - ParticleDecoration particle_decoration( new Particle(n_particle, new FormFactorCylinder(5*Units::nanometer, 5*Units::nanometer))); + ParticleDecoration particle_decoration( new Particle(n_particle, + new FormFactorCylinder(5*Units::nanometer, 5*Units::nanometer))); particle_decoration.addInterferenceFunction(p_interference_function); LayerDecorator air_layer_decorator(air_layer, particle_decoration); @@ -92,8 +106,10 @@ void FunctionalTests::IsGISAXS08::run2DDL2() // building simulation Simulation simulation; - simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, + 100, 0.0*Units::degree, 2.0*Units::degree, true); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); // running simulation and copying data simulation.setSample(multi_layer); @@ -105,12 +121,15 @@ void FunctionalTests::IsGISAXS08::run2DDL2() int FunctionalTests::IsGISAXS08::analyseResults(const std::string &path_to_data) { const double threshold(2e-10); - const char *reference_files[kNumberOfTests] = {"isgisaxs08_reference_2DDL_lattice.ima.gz", "isgisaxs08_reference_2DDL_lattice2.ima.gz"}; + const char *reference_files[kNumberOfTests] = { + "isgisaxs08_reference_2DDL_lattice.ima.gz", + "isgisaxs08_reference_2DDL_lattice2.ima.gz"}; bool status_ok(true); // retrieving reference data and generated examples for(size_t i_test=0; i_test<kNumberOfTests; ++i_test) { - OutputData<double> *reference = OutputDataIOFactory::getOutputData(path_to_data + reference_files[i_test]); + OutputData<double> *reference = OutputDataIOFactory::getOutputData( + path_to_data + reference_files[i_test]); OutputData<double> *result = m_results[i_test]; // calculating average relative difference @@ -119,14 +138,16 @@ int FunctionalTests::IsGISAXS08::analyseResults(const std::string &path_to_data) delete reference; double diff(0); - for(OutputData<double>::const_iterator it=result->begin(); it!=result->end(); ++it) { + for(OutputData<double>::const_iterator it=result->begin(); + it!=result->end(); ++it) { diff+= std::fabs(*it); } diff /= result->getAllocatedSize(); if( diff > threshold || std::isnan(diff)) status_ok=false; } - std::cout << m_name << " " << m_description << " " << (status_ok ? "[OK]" : "[FAILED]") << std::endl; + std::cout << m_name << " " << m_description << " " << + (status_ok ? "[OK]" : "[FAILED]") << std::endl; return (status_ok ? 0 : 1); } @@ -135,7 +156,8 @@ int FunctionalTests::IsGISAXS08::analyseResults(const std::string &path_to_data) std::string GetPathToData(int argc, char **argv) { if(argc == 2) return argv[1]; - return Utils::FileSystem::GetPathToExecutable(argv[0]) + "../../../ReferenceData/BornAgain/"; + return Utils::FileSystem::GetPathToExecutable(argv[0]) + + "../../../ReferenceData/BornAgain/"; } int main(int argc, char **argv) diff --git a/Tests/FunctionalTests/TestCore/IsGISAXS09/IsGISAXS09.cpp b/Tests/FunctionalTests/TestCore/IsGISAXS09/IsGISAXS09.cpp index 35db9b35eb522d603cb6e0b0ea817bb00b30f9b0..9582c2c486f38b7e8570f9029f8655e46927cc4d 100644 --- a/Tests/FunctionalTests/TestCore/IsGISAXS09/IsGISAXS09.cpp +++ b/Tests/FunctionalTests/TestCore/IsGISAXS09/IsGISAXS09.cpp @@ -35,7 +35,7 @@ void FunctionalTests::IsGISAXS09::runpyramidZ0() 100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); simulation.setBeamParameters( - 1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + 1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); simulation.setSample(*sample); // running simulation @@ -58,7 +58,7 @@ void FunctionalTests::IsGISAXS09::runpyramidZ45() 100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); simulation.setBeamParameters( - 1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + 1.0*Units::angstrom, 0.2*Units::degree, 0.0*Units::degree); simulation.setSample(*sample); // running simulation diff --git a/Tests/FunctionalTests/TestCore/IsGISAXS10/IsGISAXS10.cpp b/Tests/FunctionalTests/TestCore/IsGISAXS10/IsGISAXS10.cpp index 3491d3b6db7abf0d277e2f8bb4ae6ae8cade8333..461fea1c6e3a71ad1271adba29b1067904050bee 100644 --- a/Tests/FunctionalTests/TestCore/IsGISAXS10/IsGISAXS10.cpp +++ b/Tests/FunctionalTests/TestCore/IsGISAXS10/IsGISAXS10.cpp @@ -25,16 +25,21 @@ void FunctionalTests::IsGISAXS10::run() { // building sample MultiLayer multi_layer; - const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air10", 1.0, 0.0); - const IMaterial *p_substrate_material = MaterialManager::getHomogeneousMaterial("Substrate10", 1.0-5e-6, 2e-8); + const IMaterial *p_air_material = + MaterialManager::getHomogeneousMaterial("Air10", 0.0, 0.0); + const IMaterial *p_substrate_material = + MaterialManager::getHomogeneousMaterial("Substrate10", 5e-6, 2e-8); Layer air_layer; air_layer.setMaterial(p_air_material); Layer substrate_layer; substrate_layer.setMaterial(p_substrate_material); - IInterferenceFunction *p_interference_function = new InterferenceFunction1DParaCrystal(20.0*Units::nanometer,7*Units::nanometer, 1e7*Units::nanometer); + IInterferenceFunction *p_interference_function = + new InterferenceFunction1DParaCrystal(20.0*Units::nanometer, + 7*Units::nanometer, 1e7*Units::nanometer); complex_t n_particle(1.0-5e-5, 2e-8); - ParticleDecoration particle_decoration(new Particle(n_particle, new FormFactorCylinder(5*Units::nanometer, 5*Units::nanometer))); + ParticleDecoration particle_decoration(new Particle(n_particle, + new FormFactorCylinder(5*Units::nanometer, 5*Units::nanometer))); particle_decoration.addInterferenceFunction(p_interference_function); LayerDecorator air_layer_decorator(air_layer, particle_decoration); @@ -44,8 +49,10 @@ void FunctionalTests::IsGISAXS10::run() // building simulation Simulation simulation; - simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, + 100, 0.0*Units::degree, 2.0*Units::degree, true); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); simulation.setSample(multi_layer); // running simulation and copying data @@ -68,7 +75,8 @@ int FunctionalTests::IsGISAXS10::analyseResults(const std::string &path_to_data) delete reference; double diff(0); - for(OutputData<double>::const_iterator it=m_result->begin(); it!=m_result->end(); ++it) { + for(OutputData<double>::const_iterator it=m_result->begin(); + it!=m_result->end(); ++it) { diff+= std::fabs(*it); } diff /= m_result->getAllocatedSize(); @@ -76,7 +84,8 @@ int FunctionalTests::IsGISAXS10::analyseResults(const std::string &path_to_data) bool status_ok(true); if( diff > threshold || std::isnan(diff)) status_ok=false; - std::cout << m_name << " " << m_description << " " << (status_ok ? "[OK]" : "[FAILED]") << std::endl; + std::cout << m_name << " " << m_description << " " << + (status_ok ? "[OK]" : "[FAILED]") << std::endl; return (status_ok ? 0 : 1); } @@ -85,7 +94,8 @@ int FunctionalTests::IsGISAXS10::analyseResults(const std::string &path_to_data) std::string GetPathToData(int argc, char **argv) { if(argc == 2) return argv[1]; - return Utils::FileSystem::GetPathToExecutable(argv[0]) + "../../../ReferenceData/BornAgain/"; + return Utils::FileSystem::GetPathToExecutable(argv[0]) + + "../../../ReferenceData/BornAgain/"; } int main(int argc, char **argv) diff --git a/Tests/FunctionalTests/TestCore/IsGISAXS11/IsGISAXS11.cpp b/Tests/FunctionalTests/TestCore/IsGISAXS11/IsGISAXS11.cpp index 64fe362b94fb5fcd8bc5bf6720ad4f9417e0b585..6eacd5a005806a64197fd9c77089948b22ad51c1 100644 --- a/Tests/FunctionalTests/TestCore/IsGISAXS11/IsGISAXS11.cpp +++ b/Tests/FunctionalTests/TestCore/IsGISAXS11/IsGISAXS11.cpp @@ -29,14 +29,17 @@ void FunctionalTests::IsGISAXS11::run() // building sample MultiLayer multi_layer; - const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); + const IMaterial *p_air_material = + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); Layer air_layer; air_layer.setMaterial(p_air_material); complex_t n_particle_shell(1.0-1e-4, 2e-8); complex_t n_particle_core(1.0-6e-5, 2e-8); - Particle shell_particle(n_particle_shell, new FormFactorParallelepiped(8*Units::nanometer, 8*Units::nanometer)); - Particle core_particle(n_particle_core, new FormFactorParallelepiped(7*Units::nanometer, 6*Units::nanometer)); + Particle shell_particle(n_particle_shell, new FormFactorParallelepiped( + 8*Units::nanometer, 8*Units::nanometer)); + Particle core_particle(n_particle_core, new FormFactorParallelepiped( + 7*Units::nanometer, 6*Units::nanometer)); kvector_t core_position(0.0, 0.0, 0.0); ParticleCoreShell particle(shell_particle, core_particle, core_position); ParticleDecoration particle_decoration(particle.clone()); @@ -47,8 +50,10 @@ void FunctionalTests::IsGISAXS11::run() // building simulation Simulation simulation; - simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, 100, 0.0*Units::degree, 2.0*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation.setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, + 100, 0.0*Units::degree, 2.0*Units::degree, true); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); simulation.setSample(multi_layer); // running simulation and copying data @@ -71,7 +76,8 @@ int FunctionalTests::IsGISAXS11::analyseResults(const std::string &path_to_data) delete reference; double diff(0); - for(OutputData<double>::const_iterator it=m_result->begin(); it!=m_result->end(); ++it) { + for(OutputData<double>::const_iterator it=m_result->begin(); + it!=m_result->end(); ++it) { diff+= std::fabs(*it); } diff /= m_result->getAllocatedSize(); @@ -79,7 +85,8 @@ int FunctionalTests::IsGISAXS11::analyseResults(const std::string &path_to_data) bool status_ok(true); if( diff > threshold || std::isnan(diff)) status_ok=false; - std::cout << m_name << " " << m_description << " " << (status_ok ? "[OK]" : "[FAILED]") << std::endl; + std::cout << m_name << " " << m_description << " " << + (status_ok ? "[OK]" : "[FAILED]") << std::endl; return (status_ok ? 0 : 1); } @@ -88,7 +95,8 @@ int FunctionalTests::IsGISAXS11::analyseResults(const std::string &path_to_data) std::string GetPathToData(int argc, char **argv) { if(argc == 2) return argv[1]; - return Utils::FileSystem::GetPathToExecutable(argv[0]) + "../../../ReferenceData/BornAgain/"; + return Utils::FileSystem::GetPathToExecutable(argv[0]) + + "../../../ReferenceData/BornAgain/"; } int main(int argc, char **argv) diff --git a/Tests/FunctionalTests/TestCore/IsGISAXS15/IsGISAXS15.cpp b/Tests/FunctionalTests/TestCore/IsGISAXS15/IsGISAXS15.cpp index 1f5c6edb2a0368263dfdf7552766f2249c704367..67adc58d08e621ba59a7cea74e61546f8bc7ebc1 100644 --- a/Tests/FunctionalTests/TestCore/IsGISAXS15/IsGISAXS15.cpp +++ b/Tests/FunctionalTests/TestCore/IsGISAXS15/IsGISAXS15.cpp @@ -29,23 +29,26 @@ void FunctionalTests::IsGISAXS15::run() // building sample MultiLayer multi_layer; complex_t n_particle(1.0-6e-4, 2e-8); - const IMaterial *p_air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); + const IMaterial *p_air_material = + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); Layer air_layer; air_layer.setMaterial(p_air_material); - InterferenceFunction1DParaCrystal *p_interference_function = new InterferenceFunction1DParaCrystal(15.0*Units::nanometer,5*Units::nanometer, 1e3*Units::nanometer); + InterferenceFunction1DParaCrystal *p_interference_function = + new InterferenceFunction1DParaCrystal(15.0*Units::nanometer, + 5*Units::nanometer, 1e3*Units::nanometer); p_interference_function->setKappa(4.02698); ParticleDecoration particle_decoration; - Particle particle_prototype(n_particle, new FormFactorCylinder(5.0*Units::nanometer, 5.0*Units::nanometer)); + Particle particle_prototype(n_particle, new FormFactorCylinder( + 5.0*Units::nanometer, 5.0*Units::nanometer)); StochasticDoubleGaussian sg(5.0*Units::nanometer, 1.25*Units::nanometer); StochasticSampledParameter stochastic_radius(sg,30, 2); ParticleBuilder particle_builder; - particle_builder.setPrototype(particle_prototype, "/Particle/FormFactorCylinder/radius", stochastic_radius); + particle_builder.setPrototype(particle_prototype, + "/Particle/FormFactorCylinder/radius", stochastic_radius); particle_builder.plantParticles(particle_decoration); // Set height of each particle to its radius (H/R fixed) ParameterPool *p_parameters = particle_decoration.createParameterTree(); - //int nbr_replacements = p_parameters->fixRatioBetweenParameters("height", "radius", 1.0); - //std::cout << "Number of replacements: " << nbr_replacements << std::endl; p_parameters->fixRatioBetweenParameters("height", "radius", 1.0); particle_decoration.addInterferenceFunction(p_interference_function); @@ -54,8 +57,10 @@ void FunctionalTests::IsGISAXS15::run() // building simulation Simulation simulation; - simulation.setDetectorParameters(150, 0.05*Units::degree, 1.5*Units::degree, 150, 0.05*Units::degree, 1.5*Units::degree, true); - simulation.setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation.setDetectorParameters(150, 0.05*Units::degree, 1.5*Units::degree, + 150, 0.05*Units::degree, 1.5*Units::degree, true); + simulation.setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); SimulationParameters sim_params; sim_params.me_if_approx = SimulationParameters::SSCA; simulation.setSimulationParameters(sim_params); @@ -81,7 +86,8 @@ int FunctionalTests::IsGISAXS15::analyseResults(const std::string &path_to_data) delete reference; double diff(0); - for(OutputData<double>::const_iterator it=m_result->begin(); it!=m_result->end(); ++it) { + for(OutputData<double>::const_iterator it=m_result->begin(); + it!=m_result->end(); ++it) { diff+= std::fabs(*it); } diff /= m_result->getAllocatedSize(); @@ -89,7 +95,8 @@ int FunctionalTests::IsGISAXS15::analyseResults(const std::string &path_to_data) bool status_ok(true); if( diff > threshold || std::isnan(diff)) status_ok=false; - std::cout << m_name << " " << m_description << " " << (status_ok ? "[OK]" : "[FAILED]") << std::endl; + std::cout << m_name << " " << m_description << " " << + (status_ok ? "[OK]" : "[FAILED]") << std::endl; return (status_ok ? 0 : 1); } @@ -98,7 +105,8 @@ int FunctionalTests::IsGISAXS15::analyseResults(const std::string &path_to_data) std::string GetPathToData(int argc, char **argv) { if(argc == 2) return argv[1]; - return Utils::FileSystem::GetPathToExecutable(argv[0]) + "../../../ReferenceData/BornAgain/"; + return Utils::FileSystem::GetPathToExecutable(argv[0]) + + "../../../ReferenceData/BornAgain/"; } int main(int argc, char **argv) diff --git a/Tests/FunctionalTests/TestCore/MesoCrystal1/MesoCrystal1.cpp b/Tests/FunctionalTests/TestCore/MesoCrystal1/MesoCrystal1.cpp index a74b81f51d6c5e72f32ee749e289f190503db613..831bbded7e4e155dd69fa7c4c1ed71ad4f7aa659 100644 --- a/Tests/FunctionalTests/TestCore/MesoCrystal1/MesoCrystal1.cpp +++ b/Tests/FunctionalTests/TestCore/MesoCrystal1/MesoCrystal1.cpp @@ -44,9 +44,11 @@ void MesoCrystal1::MesoCrystal1::run(const std::string &path_to_data) Simulation *MesoCrystal1::createSimulation() { Simulation *simulation = new Simulation(); - simulation->setBeamParameters(1.77*Units::angstrom, -0.4*Units::degree, 0.0*Units::degree); + simulation->setBeamParameters(1.77*Units::angstrom, 0.4*Units::degree, + 0.0*Units::degree); simulation->setBeamIntensity(5.0090e+12); - simulation->setDetectorResolutionFunction(new ResolutionFunction2DSimple(0.0002, 0.0002)); + simulation->setDetectorResolutionFunction( + new ResolutionFunction2DSimple(0.0002, 0.0002)); return simulation; } @@ -60,7 +62,8 @@ int MesoCrystal1::analyseResults() *m_result /= *m_reference; double diff(0); - for(OutputData<double>::const_iterator it=m_result->begin(); it!=m_result->end(); ++it) { + for(OutputData<double>::const_iterator it=m_result->begin(); + it!=m_result->end(); ++it) { diff+= std::fabs(*it); } diff /= m_result->getAllocatedSize(); @@ -69,7 +72,8 @@ int MesoCrystal1::analyseResults() if( diff > threshold || std::isnan(diff)) status_ok=false; std::cout << " diff " << diff << std::endl; - std::cout << m_name << " " << m_description << " " << (status_ok ? "[OK]" : "[FAILED]") << std::endl; + std::cout << m_name << " " << m_description << " " << + (status_ok ? "[OK]" : "[FAILED]") << std::endl; return (status_ok ? 0 : 1); } @@ -79,7 +83,8 @@ int MesoCrystal1::analyseResults() std::string GetPathToData(int argc, char **argv) { if(argc == 2) return argv[1]; - return Utils::FileSystem::GetPathToExecutable(argv[0]) + "../../../ReferenceData/BornAgain/"; + return Utils::FileSystem::GetPathToExecutable(argv[0]) + + "../../../ReferenceData/BornAgain/"; } int main(int argc, char **argv) diff --git a/Tests/FunctionalTests/TestFit/TestFit01/TestFit01.cpp b/Tests/FunctionalTests/TestFit/TestFit01/TestFit01.cpp index ed06f7e1ba7ce4eeb3db5ceeb512d18b64be3745..a9f223cd5955be00a029a73138bbdec50c8b3375 100644 --- a/Tests/FunctionalTests/TestFit/TestFit01/TestFit01.cpp +++ b/Tests/FunctionalTests/TestFit/TestFit01/TestFit01.cpp @@ -43,25 +43,31 @@ TestFit01::~TestFit01() // run several minimization rounds using different minimizers int TestFit01::run() { - std::cout << "**********************************************************************" <<std::endl; - std::cout << "* Starting TestFit01 *" <<std::endl; - std::cout << "**********************************************************************" <<std::endl; + std::cout << "*************************************" + "*********************************" <<std::endl; + std::cout << "* Starting TestFit01 " + " *" <<std::endl; + std::cout << "*************************************" + "*********************************" <<std::endl; bool status_ok(true); for(size_t i=0; i<m_minimizers.size(); ++i ) { - std::cout << boost::format("Test %1%: %|5t| %2%(%3%)\n") % i % m_minimizers[i].name % m_minimizers[i].algorithm; + std::cout << boost::format("Test %1%: %|5t| %2%(%3%)\n") % i % + m_minimizers[i].name % m_minimizers[i].algorithm; bool result = run_fitting(m_minimizers[i].name, m_minimizers[i].algorithm); status_ok &= result; } - std::cout << m_test_name << " " << m_test_description << " " << (status_ok ? "[OK]" : "[FAILED]") << std::endl; + std::cout << m_test_name << " " << m_test_description << " " << + (status_ok ? "[OK]" : "[FAILED]") << std::endl; return (status_ok ? 0 : 1); } // run fitting using dedicated minimizer, return true in the case of success -bool TestFit01::run_fitting(const std::string &minimizer_name, const std::string &minimizer_algorithm) +bool TestFit01::run_fitting(const std::string &minimizer_name, + const std::string &minimizer_algorithm) { TBenchmark mb; mb.Start("test"); @@ -76,9 +82,12 @@ bool TestFit01::run_fitting(const std::string &minimizer_name, const std::string // setting fitting FitSuite *fitSuite = new FitSuite(); - fitSuite->setMinimizer( MinimizerFactory::createMinimizer(minimizer_name, minimizer_algorithm) ); - fitSuite->addFitParameter("*height", 4.*Units::nanometer, 0.04*Units::nanometer, AttLimits::lowerLimited(0.01) ); - fitSuite->addFitParameter("*radius", 6.*Units::nanometer, 0.06*Units::nanometer, AttLimits::lowerLimited(0.01) ); + fitSuite->setMinimizer( MinimizerFactory::createMinimizer( + minimizer_name, minimizer_algorithm) ); + fitSuite->addFitParameter("*height", 4.*Units::nanometer, + 0.04*Units::nanometer, AttLimits::lowerLimited(0.01) ); + fitSuite->addFitParameter("*radius", 6.*Units::nanometer, + 0.06*Units::nanometer, AttLimits::lowerLimited(0.01) ); fitSuite->addSimulationAndRealData(*simulation, *real_data); // run fit @@ -90,11 +99,16 @@ bool TestFit01::run_fitting(const std::string &minimizer_name, const std::string double radius_diff = std::fabs(radius_found - m_cylinder_radius)/m_cylinder_radius; mb.Stop("test"); - std::cout << boost::format("%|12t| %-10s : %-6.3f \n") % "RealTime" % mb.GetRealTime("test"); - std::cout << boost::format("%|12t| %-10s : %-6.3f \n") % "CpuTime" % mb.GetCpuTime("test"); - std::cout << boost::format("%|12t| %-10s : %-4d \n") % "NCalls" % fitSuite->getNCalls(); - std::cout << boost::format("%|12t| %-10s : %-6.4f (diff %6.4g) \n") % "Par1" % height_found % height_diff; - std::cout << boost::format("%|12t| %-10s : %-6.4f (diff %6.4g) \n") % "Par2" % radius_found % radius_diff; + std::cout << boost::format("%|12t| %-10s : %-6.3f \n") % "RealTime" % + mb.GetRealTime("test"); + std::cout << boost::format("%|12t| %-10s : %-6.3f \n") % "CpuTime" % + mb.GetCpuTime("test"); + std::cout << boost::format("%|12t| %-10s : %-4d \n") % "NCalls" % + fitSuite->getNCalls(); + std::cout << boost::format("%|12t| %-10s : %-6.4f (diff %6.4g) \n") % + "Par1" % height_found % height_diff; + std::cout << boost::format("%|12t| %-10s : %-6.4f (diff %6.4g) \n") % + "Par2" % radius_found % radius_diff; delete sample; delete simulation; @@ -112,10 +126,12 @@ bool TestFit01::run_fitting(const std::string &minimizer_name, const std::string ISample *TestFit01::buildSample() { MultiLayer *multi_layer = new MultiLayer(); - const IMaterial *air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); + const IMaterial *air_material = + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); Layer air_layer(air_material); complex_t n_particle(1.0-6e-4, 2e-8); - ParticleDecoration particle_decoration( new Particle(n_particle, new FormFactorCylinder(m_cylinder_height, m_cylinder_radius))); + ParticleDecoration particle_decoration( new Particle(n_particle, + new FormFactorCylinder(m_cylinder_height, m_cylinder_radius))); particle_decoration.addInterferenceFunction(new InterferenceFunctionNone()); LayerDecorator air_layer_decorator(air_layer, particle_decoration); multi_layer->addLayer(air_layer_decorator); @@ -127,8 +143,10 @@ ISample *TestFit01::buildSample() Simulation *TestFit01::createSimulation() { Simulation *simulation = new Simulation(); - simulation->setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree,100 , 0.0*Units::degree, 2.0*Units::degree); - simulation->setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation->setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, + 100 , 0.0*Units::degree, 2.0*Units::degree); + simulation->setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); simulation->setBeamIntensity(1e10); return simulation; } diff --git a/Tests/FunctionalTests/TestFit/TestFit02/SampleBuilder.cpp b/Tests/FunctionalTests/TestFit/TestFit02/SampleBuilder.cpp index 067d42e973514686e93f17caea4fa501f5854cfb..1317e42b505fc8f5f9172a201408ec4334627dcb 100644 --- a/Tests/FunctionalTests/TestFit/TestFit02/SampleBuilder.cpp +++ b/Tests/FunctionalTests/TestFit/TestFit02/SampleBuilder.cpp @@ -42,8 +42,10 @@ void SampleBuilder::init_parameters() ISample *SampleBuilder::buildSample() const { MultiLayer *multi_layer = new MultiLayer(); - const IMaterial *air_material = MaterialManager::getHomogeneousMaterial("Air", 1.0, 0.0); - const IMaterial *substrate_material = MaterialManager::getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8); + const IMaterial *air_material = + MaterialManager::getHomogeneousMaterial("Air", 0.0, 0.0); + const IMaterial *substrate_material = + MaterialManager::getHomogeneousMaterial("Substrate", 6e-6, 2e-8); Layer air_layer(air_material); Layer substrate_layer(substrate_material); diff --git a/Tests/FunctionalTests/TestFit/TestFit02/TestFit02.cpp b/Tests/FunctionalTests/TestFit/TestFit02/TestFit02.cpp index c7642155a3b8d7f9364a9921881674db6adb4542..e7b7f3705aa6ba9ffb6fcac3c62ab4e52653d014 100644 --- a/Tests/FunctionalTests/TestFit/TestFit02/TestFit02.cpp +++ b/Tests/FunctionalTests/TestFit/TestFit02/TestFit02.cpp @@ -47,15 +47,24 @@ int TestFit02::run() // setting up fitting FitSuite *fitSuite = new FitSuite(); - fitSuite->setMinimizer( MinimizerFactory::createMinimizer("Minuit2", "Combined") ); + fitSuite->setMinimizer( MinimizerFactory::createMinimizer("Minuit2", + "Combined") ); fitSuite->initPrint(10); - fitSuite->addFitParameter("*SampleBuilder/cylinder_height", 4*Units::nanometer, 0.01*Units::nanometer, AttLimits::lowerLimited(0.01) ); - fitSuite->addFitParameter("*SampleBuilder/cylinder_radius", 6*Units::nanometer, 0.01*Units::nanometer, AttLimits::lowerLimited(0.01) ); - fitSuite->addFitParameter("*SampleBuilder/prism3_half_side", 4*Units::nanometer, 0.01*Units::nanometer, AttLimits::lowerLimited(0.01) ); - fitSuite->addFitParameter("*SampleBuilder/prism3_height", 6*Units::nanometer, 0.01*Units::nanometer, AttLimits::lowerLimited(0.01) ); - fitSuite->addFitParameter("*SampleBuilder/cylinder_ratio", 0.2, 0.1, AttLimits::fixed()); - //fitSuite->addFitParameter("*Normalizer/scale", 1, 0.01*Units::nanometer, AttLimits::limited(0.9,1.1) ); + fitSuite->addFitParameter("*SampleBuilder/cylinder_height", + 4*Units::nanometer, 0.01*Units::nanometer, + AttLimits::lowerLimited(0.01) ); + fitSuite->addFitParameter("*SampleBuilder/cylinder_radius", + 6*Units::nanometer, 0.01*Units::nanometer, + AttLimits::lowerLimited(0.01) ); + fitSuite->addFitParameter("*SampleBuilder/prism3_half_side", + 4*Units::nanometer, 0.01*Units::nanometer, + AttLimits::lowerLimited(0.01) ); + fitSuite->addFitParameter("*SampleBuilder/prism3_height", + 6*Units::nanometer, 0.01*Units::nanometer, + AttLimits::lowerLimited(0.01) ); + fitSuite->addFitParameter("*SampleBuilder/cylinder_ratio", 0.2, 0.1, + AttLimits::fixed()); ChiSquaredModule chiModule; chiModule.setChiSquaredFunction( SquaredFunctionWithSystematicError() ); @@ -71,7 +80,6 @@ int TestFit02::run() // --------------------------------------------------------------- // analysing fit results // --------------------------------------------------------------- - //fitSuite->getFitParameters()->getParameter("*SampleBuilder/cylinder_height")->getValue() << std::endl; std::vector<double > initialParameters; initialParameters.push_back(cylinder_height); initialParameters.push_back(cylinder_radius); @@ -82,11 +90,13 @@ int TestFit02::run() const double threshold = 1.0e-02; bool isSuccess = true; for(size_t i=0; i<results.size(); ++i) { - double diff = std::fabs(results[i] - initialParameters[i])/initialParameters[i]; + double diff = std::fabs(results[i] - initialParameters[i])/ + initialParameters[i]; if(diff > threshold) isSuccess=false; } - std::cout << m_test_name << " " << m_test_description << " " << (isSuccess ? "[OK]" : "[FAILED]") << std::endl; + std::cout << m_test_name << " " << m_test_description << " " << + (isSuccess ? "[OK]" : "[FAILED]") << std::endl; return (isSuccess ? 0 : 1); } @@ -95,8 +105,10 @@ int TestFit02::run() Simulation *TestFit02::createSimulation() { Simulation *simulation = new Simulation(); - simulation->setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree,100 , 0.0*Units::degree, 2.0*Units::degree); - simulation->setBeamParameters(1.0*Units::angstrom, -0.2*Units::degree, 0.0*Units::degree); + simulation->setDetectorParameters(100, 0.0*Units::degree, 2.0*Units::degree, + 100 , 0.0*Units::degree, 2.0*Units::degree); + simulation->setBeamParameters(1.0*Units::angstrom, 0.2*Units::degree, + 0.0*Units::degree); return simulation; } diff --git a/Tests/FunctionalTests/TestPyCore/isgisaxs01.py b/Tests/FunctionalTests/TestPyCore/isgisaxs01.py index 97562a98960e1bb9e776cdd1c23267ab9e9c96f7..1d1612e848aefad8b2502acde4c94193f09364b3 100644 --- a/Tests/FunctionalTests/TestPyCore/isgisaxs01.py +++ b/Tests/FunctionalTests/TestPyCore/isgisaxs01.py @@ -16,8 +16,8 @@ from libBornAgainCore import * # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) cylinder_ff = FormFactorCylinder(5*nanometer, 5*nanometer) @@ -40,7 +40,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,-1.0*degree, 1.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() ## intensity data diff --git a/Tests/FunctionalTests/TestPyCore/isgisaxs02.py b/Tests/FunctionalTests/TestPyCore/isgisaxs02.py index 8742eb660d9f4f78c2c4959555fd60e4b9791e4c..a12939931ac9240131b4cd628912e871c1797d83 100644 --- a/Tests/FunctionalTests/TestPyCore/isgisaxs02.py +++ b/Tests/FunctionalTests/TestPyCore/isgisaxs02.py @@ -17,9 +17,9 @@ from libBornAgainCore import * # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) # collection of particles - n_particle = complex(1.0-6e-4, 2e-8) + n_particle = complex(6e-4, 2e-8) radius1 = 5.0*nanometer radius2 = 10.0*nanometer height1 = radius1 @@ -60,7 +60,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100, 0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() diff --git a/Tests/FunctionalTests/TestPyCore/isgisaxs03.py b/Tests/FunctionalTests/TestPyCore/isgisaxs03.py index 727349846b71ea0118a210622c3844ba5d7abf9c..410b667468dc6d7252ce0895c070b7e77612074e 100644 --- a/Tests/FunctionalTests/TestPyCore/isgisaxs03.py +++ b/Tests/FunctionalTests/TestPyCore/isgisaxs03.py @@ -16,8 +16,8 @@ from libBornAgainCore import * def RunSimulationDWBA(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) cylinder_ff = FormFactorCylinder(5*nanometer, 5*nanometer) @@ -38,7 +38,7 @@ def RunSimulationDWBA(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() # intensity data @@ -50,8 +50,8 @@ def RunSimulationDWBA(): # ---------------------------------- def RunSimulationBA(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) cylinder_ff = FormFactorCylinder(5*nanometer, 5*nanometer) @@ -70,7 +70,7 @@ def RunSimulationBA(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() return GetOutputData(simulation) @@ -81,8 +81,8 @@ def RunSimulationBA(): # ---------------------------------- def RunSimulationBA_Size(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) multi_layer = MultiLayer() @@ -112,7 +112,7 @@ def RunSimulationBA_Size(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() return GetOutputData(simulation) diff --git a/Tests/FunctionalTests/TestPyCore/isgisaxs04.py b/Tests/FunctionalTests/TestPyCore/isgisaxs04.py index 30d996b68f609c994e0136fde6ff02c2eff4978a..bb161e3c5d3ca634a76418bfbcc4d7f720483a08 100644 --- a/Tests/FunctionalTests/TestPyCore/isgisaxs04.py +++ b/Tests/FunctionalTests/TestPyCore/isgisaxs04.py @@ -15,8 +15,8 @@ from libBornAgainCore import * # ---------------------------------- def RunSimulation1(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) cylinder_ff = FormFactorCylinder(5*nanometer, 5*nanometer) @@ -36,7 +36,7 @@ def RunSimulation1(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() ## intensity data @@ -48,8 +48,8 @@ def RunSimulation1(): # ---------------------------------- def RunSimulation2(): # # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) @@ -75,7 +75,7 @@ def RunSimulation2(): #gsl_set_error_handler_off() simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() return GetOutputData(simulation) diff --git a/Tests/FunctionalTests/TestPyCore/isgisaxs06.py b/Tests/FunctionalTests/TestPyCore/isgisaxs06.py index 03c698f52ab7cd3f810bd860d5086a9b0fe362cd..605be3d7855533e4ed180eeec81e469c4d0cde04 100644 --- a/Tests/FunctionalTests/TestPyCore/isgisaxs06.py +++ b/Tests/FunctionalTests/TestPyCore/isgisaxs06.py @@ -17,8 +17,8 @@ M_PI = numpy.pi # ---------------------------------- def RunSimulation_lattice(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles lattice_params = Lattice2DIFParameters() lattice_params.m_length_1 = 10.0*nanometer @@ -52,7 +52,7 @@ def RunSimulation_lattice(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) sim_params= SimulationParameters() sim_params.me_framework = SimulationParameters.DWBA @@ -70,8 +70,8 @@ def RunSimulation_lattice(): # ---------------------------------- def RunSimulation_centered(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles lattice_params = Lattice2DIFParameters() lattice_params.m_length_1 = 10.0*nanometer @@ -110,7 +110,7 @@ def RunSimulation_centered(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) sim_params= SimulationParameters() sim_params.me_framework = SimulationParameters.DWBA @@ -128,8 +128,8 @@ def RunSimulation_centered(): # ---------------------------------- def RunSimulation_rotated(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles lattice_params = Lattice2DIFParameters() lattice_params.m_length_1 = 10.0*nanometer @@ -163,7 +163,7 @@ def RunSimulation_rotated(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) sim_params = SimulationParameters() sim_params.me_framework = SimulationParameters.DWBA @@ -184,7 +184,7 @@ def RunSimulation_variants(): # building simulation simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) sim_params = SimulationParameters() sim_params.me_framework = SimulationParameters.DWBA @@ -216,8 +216,8 @@ def RunSimulation_variants(): # IsGISAXS6 functional test sample builder for varying xi angle def buildSample(xi_value): n_particle = complex(1.0-6e-4, 2e-8) - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) air_layer = Layer(mAmbience) substrate_layer = Layer(mSubstrate) diff --git a/Tests/FunctionalTests/TestPyCore/isgisaxs07.py b/Tests/FunctionalTests/TestPyCore/isgisaxs07.py index 4f2b1d5ff6def5ef42d2d64556618dec9b40f8a7..384f43118b0f27d1cb5fb495cc210e7cb652884c 100644 --- a/Tests/FunctionalTests/TestPyCore/isgisaxs07.py +++ b/Tests/FunctionalTests/TestPyCore/isgisaxs07.py @@ -16,7 +16,7 @@ from libBornAgainCore import * # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) particle_decoration = ParticleDecoration() diff --git a/Tests/FunctionalTests/TestPyCore/isgisaxs08.py b/Tests/FunctionalTests/TestPyCore/isgisaxs08.py index 91e561e2d32531cbd0a8ee802d8f4f03a1c1186c..0449a0669bd3ef5ab2f442465d070f0ff9344405 100644 --- a/Tests/FunctionalTests/TestPyCore/isgisaxs08.py +++ b/Tests/FunctionalTests/TestPyCore/isgisaxs08.py @@ -16,8 +16,8 @@ M_PI = numpy.pi # ---------------------------------- def RunSimulation1(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) cylinder_ff = FormFactorCylinder(5*nanometer, 5*nanometer) @@ -42,7 +42,7 @@ def RunSimulation1(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() ## intensity data @@ -54,8 +54,8 @@ def RunSimulation1(): # ---------------------------------- def RunSimulation2(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) cylinder_ff = FormFactorCylinder(5*nanometer, 5*nanometer) @@ -80,7 +80,7 @@ def RunSimulation2(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() return GetOutputData(simulation) diff --git a/Tests/FunctionalTests/TestPyCore/isgisaxs09.py b/Tests/FunctionalTests/TestPyCore/isgisaxs09.py index 2692b76cb885fe6096b711136e2ed795dff317e7..29f71aecbb514f9bdf77890b2501be70bf4bc412 100644 --- a/Tests/FunctionalTests/TestPyCore/isgisaxs09.py +++ b/Tests/FunctionalTests/TestPyCore/isgisaxs09.py @@ -15,8 +15,8 @@ from libBornAgainCore import * # ---------------------------------- def RunSimulation1(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) pyramid_ff = FormFactorPyramid(5*nanometer, 5*nanometer, deg2rad(54.73 ) ) @@ -36,7 +36,7 @@ def RunSimulation1(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() ## intensity data @@ -48,8 +48,8 @@ def RunSimulation1(): # ---------------------------------- def RunSimulation2(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) pyramid_ff = FormFactorPyramid(5*nanometer, 5*nanometer, deg2rad(54.73 ) ) @@ -74,7 +74,7 @@ def RunSimulation2(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() ## intensity data diff --git a/Tests/FunctionalTests/TestPyCore/isgisaxs10.py b/Tests/FunctionalTests/TestPyCore/isgisaxs10.py index a5dc5835583e6d604b757473628c3a7513bf80ad..c83888e98e9361d9af7c4b9ff728821b6db55b93 100644 --- a/Tests/FunctionalTests/TestPyCore/isgisaxs10.py +++ b/Tests/FunctionalTests/TestPyCore/isgisaxs10.py @@ -16,8 +16,8 @@ from libBornAgainCore import * # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) - mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-5e-6, 2e-8 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) + mSubstrate = MaterialManager.getHomogeneousMaterial("Substrate", 5e-6, 2e-8 ) # collection of particles n_particle = complex(1.0-5e-5, 2e-8) cylinder_ff = FormFactorCylinder(5*nanometer, 5*nanometer) @@ -36,7 +36,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() return GetOutputData(simulation) diff --git a/Tests/FunctionalTests/TestPyCore/isgisaxs11.py b/Tests/FunctionalTests/TestPyCore/isgisaxs11.py index 68b61315b025ea8171c07803e179bac73bb25027..efa5ad14c6f3b09dfe3832121d599cac8b3bb1e1 100644 --- a/Tests/FunctionalTests/TestPyCore/isgisaxs11.py +++ b/Tests/FunctionalTests/TestPyCore/isgisaxs11.py @@ -16,7 +16,7 @@ from libBornAgainCore import * # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) # collection of particles n_particle_shell = complex(1.0-1e-4, 2e-8) @@ -41,7 +41,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(100,0.0*degree, 2.0*degree, 100, 0.0*degree, 2.0*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) simulation.setSample(multi_layer) simulation.runSimulation() ## intensity data diff --git a/Tests/FunctionalTests/TestPyCore/isgisaxs15.py b/Tests/FunctionalTests/TestPyCore/isgisaxs15.py index 2c7f223fccfd68d7443d0b40eefd16abf212bf88..6fcae8df89ebedfe52ce28c46efcf24de3636e31 100644 --- a/Tests/FunctionalTests/TestPyCore/isgisaxs15.py +++ b/Tests/FunctionalTests/TestPyCore/isgisaxs15.py @@ -15,7 +15,7 @@ from libBornAgainCore import * # ---------------------------------- def RunSimulation(): # defining materials - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) # collection of particles n_particle = complex(1.0-6e-4, 2e-8) @@ -43,7 +43,7 @@ def RunSimulation(): # build and run experiment simulation = Simulation() simulation.setDetectorParameters(150,0.05*degree, 1.5*degree, 150, 0.05*degree, 1.5*degree, True) - simulation.setBeamParameters(1.0*angstrom, -0.2*degree, 0.0*degree) + simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) sim_params = SimulationParameters() sim_params.me_if_approx = SimulationParameters.SSCA diff --git a/Tests/FunctionalTests/TestPyCore/mesocrystal1.py b/Tests/FunctionalTests/TestPyCore/mesocrystal1.py index d5650003dae8d27279d14836ec6f411dc39a84ab..c87d27eb8c35b0c78c74bc4bda76d099d7af0719 100644 --- a/Tests/FunctionalTests/TestPyCore/mesocrystal1.py +++ b/Tests/FunctionalTests/TestPyCore/mesocrystal1.py @@ -197,7 +197,7 @@ def GetDifference(data, reference): # create simulation def createSimulation(): simulation = Simulation() - simulation.setBeamParameters(1.77*angstrom, -0.4*degree, 0.0*degree) + simulation.setBeamParameters(1.77*angstrom, 0.4*degree, 0.0*degree) simulation.setBeamIntensity(5.0090e+12) simulation.setDetectorResolutionFunction(ResolutionFunction2DSimple(0.0002, 0.0002)) return simulation diff --git a/Tests/FunctionalTests/TestPyFit/testfit01.py b/Tests/FunctionalTests/TestPyFit/testfit01.py index f0e2306d3f0aee013866bfea7db303aced6cd6fe..c3ad27e7f266f40c575633748b9ea6558db9ae33 100644 --- a/Tests/FunctionalTests/TestPyFit/testfit01.py +++ b/Tests/FunctionalTests/TestPyFit/testfit01.py @@ -109,7 +109,7 @@ def buildSample(): particle_decoration.addParticle(cylinder) particle_decoration.addInterferenceFunction(interference) - mAmbience = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0 ) + mAmbience = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0 ) air_layer = Layer(mAmbience) air_layer_decorator = LayerDecorator(air_layer, particle_decoration) multi_layer = MultiLayer() diff --git a/Tests/FunctionalTests/TestPyFit/testfit02.py b/Tests/FunctionalTests/TestPyFit/testfit02.py index fa749b2c19a4458ddc83de409c36c846b7987a77..3e14d7767eae5f045efd92a9b49d95f6145e10cb 100644 --- a/Tests/FunctionalTests/TestPyFit/testfit02.py +++ b/Tests/FunctionalTests/TestPyFit/testfit02.py @@ -122,8 +122,8 @@ class MySampleBuilder(ISampleBuilder): # constructs the sample for current values of parameters def buildSample(self): multi_layer = MultiLayer() - air_material = MaterialManager.getHomogeneousMaterial("Air", 1.0, 0.0) - substrate_material = MaterialManager.getHomogeneousMaterial("Substrate", 1.0-6e-6, 2e-8) + air_material = MaterialManager.getHomogeneousMaterial("Air", 0.0, 0.0) + substrate_material = MaterialManager.getHomogeneousMaterial("Substrate", 6e-6, 2e-8) air_layer = Layer(air_material) substrate_layer = Layer(substrate_material) diff --git a/Tests/UnitTests/TestCore/InstrumentTest.h b/Tests/UnitTests/TestCore/InstrumentTest.h index 1821d7be9004495dfdbc5fbacc882a9a04d7a582..b5c9fc02bd1110af95cd46ae30c81344789aa88c 100644 --- a/Tests/UnitTests/TestCore/InstrumentTest.h +++ b/Tests/UnitTests/TestCore/InstrumentTest.h @@ -32,7 +32,7 @@ TEST_F(InstrumentTest, InstrumentInitialState) TEST_F(InstrumentTest, BeamManipulation) { - double lambda(1), alpha(1), phi(1); + double lambda(1), alpha(-1), phi(1); double k = 2.*M_PI/lambda; double x = k*std::cos(alpha) * std::cos(phi); double y = k*std::cos(alpha) * std::sin(phi); diff --git a/ThirdParty/gtest/gtest-1.6.0/src/gtest-internal-inl.h b/ThirdParty/gtest/gtest-1.6.0/src/gtest-internal-inl.h index 28e8ecd85b738cfbe9760eb3e72bc9e94c6fd76f..dd9347eb41b56e8ea0024d5a6916a4d2961cbc66 100644 --- a/ThirdParty/gtest/gtest-1.6.0/src/gtest-internal-inl.h +++ b/ThirdParty/gtest/gtest-1.6.0/src/gtest-internal-inl.h @@ -203,7 +203,7 @@ class GTestFlagSaver { bool list_tests_; String output_; bool print_time_; - bool pretty_; +// bool pretty_; internal::Int32 random_seed_; internal::Int32 repeat_; bool shuffle_;