/[ascend]/trunk/pygtk/test.py
ViewVC logotype

Diff of /trunk/pygtk/test.py

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 990 by johnpye, Thu Dec 21 07:12:58 2006 UTC revision 991 by johnpye, Thu Dec 21 10:44:32 2006 UTC
# Line 249  class TestIDA(Ascend): Line 249  class TestIDA(Ascend):
249          assert abs(M.R - 832) < 1.0          assert abs(M.R - 832) < 1.0
250          assert abs(M.F - 21.36) < 0.1          assert abs(M.F - 21.36) < 0.1
251    
252        def testlotkaDENSE(self):
253            self.L.load('johnpye/lotka.a4c')
254            M = self.L.findType('lotka').getSimulation('sim')
255            M.setSolver(ascpy.Solver("QRSlv"))
256            I = ascpy.Integrator(M)
257            I.setEngine('IDA')
258            I.setReporter(ascpy.IntegratorReporterConsole(I))
259            I.setLinearTimesteps(ascpy.Units("s"), 0, 200, 5);
260            I.setParameter('linsolver','DENSE')
261            I.setParameter('rtol',1e-8);
262            I.analyse()
263            assert I.getNumVars()==2
264            assert abs(M.R - 1000) < 1e-300
265            I.solve()
266            assert I.getNumObservedVars() == 3;
267            assert abs(M.R - 832) < 1.0
268            assert abs(M.F - 21.36) < 0.1
269    
270      def testzill(self):      def testzill(self):
271          self.L.load('johnpye/zill.a4c')          self.L.load('johnpye/zill.a4c')
272          T = self.L.findType('zill')          T = self.L.findType('zill')
# Line 303  class TestIDA(Ascend): Line 321  class TestIDA(Ascend):
321          I.setParameter('atolvect',False)          I.setParameter('atolvect',False)
322          I.setParameter('calcic',True)          I.setParameter('calcic',True)
323          I.analyse()          I.analyse()
324          I.setLogTimesteps(ascpy.Units("s"), 0.01, 10.24, 10);          I.setLogTimesteps(ascpy.Units("s"), 0.01, 10.24, 11);
325          I.solve()          I.solve()
326          assert abs(M.u[2][2].getValue()) < 1e-5          assert abs(M.u[2][2].getValue()) < 1e-5
327    
328      def testdenxSPGMR(self):      def testdenxSPGMR(self):
329          self.L.load('johnpye/idadenx.a4c')          self.L.load('johnpye/idadenx.a4c')
330          M = self.L.findType('idadenx').getSimulation('sim')          M = self.L.findType('idadenx').getSimulation('sim')
331            M.setSolver(ascpy.Solver('QRSlv'))
332          I = ascpy.Integrator(M)          I = ascpy.Integrator(M)
333          I.setEngine('IDA')          I.setEngine('IDA')
334          I.setReporter(ascpy.IntegratorReporterConsole(I))          I.setReporter(ascpy.IntegratorReporterConsole(I))
# Line 320  class TestIDA(Ascend): Line 339  class TestIDA(Ascend):
339          I.setParameter('autodiff',True)          I.setParameter('autodiff',True)
340          I.setParameter('linsolver','SPGMR')          I.setParameter('linsolver','SPGMR')
341          I.setParameter('gsmodified',False)          I.setParameter('gsmodified',False)
342            I.setParameter('maxncf',10)
343          I.analyse()          I.analyse()
344          I.solve()          I.solve()
345          assert abs(float(M.y1) - 5.1091e-08) < 1e-10;          assert abs(float(M.y1) - 5.1091e-08) < 1e-10;
346          assert abs(float(M.y2) - 2.0437e-13) < 1e-15;          assert abs(float(M.y2) - 2.0437e-13) < 1e-15;
347          assert abs(float(M.y3) - 1.0) < 1e-5;          assert abs(float(M.y3) - 1.0) < 1e-5;
348    
349      def testkryxSPGMR(self):      def testkryx(self):
350          self.L.load('johnpye/idakryx.a4c')          self.L.load('johnpye/idakryx.a4c')
351          M = self.L.findType('idakryx').getSimulation('sim')          M = self.L.findType('idakryx').getSimulation('sim')
352          M.build()          M.build()
353          I = ascpy.Integrator(M)          I = ascpy.Integrator(M)
354          I.setEngine('IDA')          I.setEngine('IDA')
355          I.setReporter(ascpy.IntegratorReporterConsole(I))          I.setReporter(ascpy.IntegratorReporterConsole(I))
356          I.setParameter('linsolver','SPGMR')          I.setParameter('linsolver','SPTFQMR')
357          I.setParameter('maxl',8)          I.setParameter('maxl',8)
358          I.setParameter('gsmodified',False)          I.setParameter('gsmodified',False)
359          I.setParameter('autodiff',True)          I.setParameter('autodiff',True)

Legend:
Removed from v.990  
changed lines
  Added in v.991

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22