From 6987eed1b8e2b3035f23195358870aeda6572121 Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de> Date: Tue, 9 Aug 2016 13:18:17 +0200 Subject: [PATCH] rm montecarlo_integration.py, covered by ex04_ComplexShapes/LargeParticlesFormFactor.py --- .../PyCore/legacy/montecarlo_integration.py | 87 ------------------- 1 file changed, 87 deletions(-) delete mode 100644 Tests/Functional/PyCore/legacy/montecarlo_integration.py diff --git a/Tests/Functional/PyCore/legacy/montecarlo_integration.py b/Tests/Functional/PyCore/legacy/montecarlo_integration.py deleted file mode 100644 index 10cb9ae31ce..00000000000 --- a/Tests/Functional/PyCore/legacy/montecarlo_integration.py +++ /dev/null @@ -1,87 +0,0 @@ -# Functional test: Monte-Carlo integration functional test -# The reference file should be generated without integration -from __future__ import print_function -import sys -import os -import numpy -from utils import get_reference_data - -from libBornAgainCore import * - -phi_min, phi_max = -0.5, 0.5 -alpha_min, alpha_max = 0.0, 0.5 -default_cylinder_radius = 5*nanometer -default_cylinder_height = 5*nanometer -scale = 1 - - -def get_sample(cylinder_radius, cylinder_height): - """ - Build and return the sample to calculate cylinder formfactor in Distorted Wave Born Approximation - for given cylinder_radius and cylinder_height - """ - # defining materials - m_ambience = HomogeneousMaterial("Air", 0.0, 0.0) - m_substrate = HomogeneousMaterial("Substrate", 6e-6, 2e-8) - m_particle = HomogeneousMaterial("Particle", 6e-4, 2e-8) - - # collection of particles - cylinder_ff = FormFactorCylinder(cylinder_radius, cylinder_height) - cylinder = Particle(m_particle, cylinder_ff) - particle_layout = ParticleLayout() - particle_layout.addParticle(cylinder, 1.0) - - air_layer = Layer(m_ambience) - air_layer.addLayout(particle_layout) - substrate_layer = Layer(m_substrate) - - multi_layer = MultiLayer() - multi_layer.addLayer(air_layer) - multi_layer.addLayer(substrate_layer) - return multi_layer - - -def get_simulation(): - """ - Create and return GISAXS simulation with beam and detector defined. - """ - simulation = GISASSimulation() - simulation.setDetectorParameters(50, phi_min*degree, phi_max*degree, 50, alpha_min*degree, alpha_max*degree) - simulation.setBeamParameters(1.0*angstrom, 0.2*degree, 0.0*degree) - simulation.getOptions().setMonteCarloIntegration(True, 50) - return simulation - - - -def run_simulation(): - """ - Run simulation and plot results - """ - sample = get_sample(default_cylinder_radius*scale, default_cylinder_height*scale) - simulation = get_simulation() - simulation.setSample(sample) - simulation.runSimulation() - result = simulation.getIntensityData() - # plot_intensity_data(simulation.getDetectorIntensity()) - return result - - -def run_test(): - """ - run test and analyse test results - """ - result = run_simulation() - # IntensityDataIOFactory.writeIntensityData(result, 'montecarlo_integration.int') - reference = get_reference_data('montecarlo_integration.int.gz') - diff = IntensityDataFunctions.getRelativeDifference(result, reference) - status = "OK" - if diff > 2e-2 or numpy.isnan(diff): - status = "FAILED" - return "MonteCarloIntegration", "Test of Monte-Carlo integration", diff, status - - -if __name__ == '__main__': - name, description, diff, status = run_test() - print(name, description, diff, status) - if "FAILED" in status: - exit(1) -- GitLab