Skip to content
Snippets Groups Projects
Commit 36d072dd authored by Wuttke, Joachim's avatar Wuttke, Joachim
Browse files

test_performance.py: start modernization

parent 17a9ee76
Branches
Tags
1 merge request!325remove performance tests
......@@ -76,30 +76,13 @@ class CustomFormFactor(IBornFF):
# class for performance test, constructed using sample factories
class FactoryTest:
def __init__(self, name, simulation_name, sample_builder,
nrepetitions):
def __init__(self, name, simulation, nrepetitions):
self.m_test_name = name
self.m_simulation_name = simulation_name
self.m_sample_builder_name = sample_builder
self.m_simulation = simulation
self.m_nrepetitions = nrepetitions
self.m_cpu_time = 0.0
self.m_wall_time = 0.0
self.m_sample = None
if simulation_name != None and sample_builder != None:
self.m_sample_factory = SampleBuilderFactory()
self.m_simulation_factory = SimulationFactory()
self.m_simulation = self.m_simulation_factory.createItem(
self.m_simulation_name)
self.m_sample = self.m_sample_factory.createSampleByName(
self.m_sample_builder_name)
else:
self.m_sample_factory = None
self.m_simulation_factory = None
self.m_simulation = None
self.m_sample = None
def prepare(self):
pass
......@@ -107,7 +90,6 @@ class FactoryTest:
def run_loop(self):
# actual work is done here
for i in range(self.m_nrepetitions):
self.m_simulation.setSample(self.m_sample)
self.m_simulation.runSimulation()
def run(self):
......@@ -145,13 +127,11 @@ class CustomTest(FactoryTest):
self.m_simulation = None
def prepare(self):
self.m_sample = self.get_sample()
self.m_simulation = self.get_simulation()
self.m_simulation = self.get_simulation(self.get_sample())
# do the actual work
def run_loop(self):
for i in range(self.m_nrepetitions):
self.m_simulation.setSample(self.m_sample)
self.m_simulation.runSimulation()
def get_sample(self):
......@@ -178,7 +158,7 @@ class CustomTest(FactoryTest):
multi_layer.addLayer(substrate_layer)
return multi_layer
def get_simulation(self):
def get_simulation(self, sample):
"""
Create and return GISAXS simulation with beam and detector defined
IMPORTANT NOTE:
......@@ -189,6 +169,7 @@ class CustomTest(FactoryTest):
simulation.setDetectorParameters(100, phi_min*deg, phi_max*deg,
100, alpha_min*deg, alpha_max*deg)
simulation.setBeamParameters(1*angstrom, 0.2*deg, 0)
simulation.setSample(sample)
return simulation
......@@ -202,6 +183,7 @@ class PerformanceTests:
self.m_pyversion = ""
self.m_filename = filename
# TODO: directly add simulation
self.add("MultiLayer", "MaxiGISAS",
"MultiLayerWithRoughnessBuilder", 1)
self.add("CylindersInDWBA", "MaxiGISAS", "CylindersInDWBABuilder",
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment