예제 #1
0
    def test_direct_steer(self):
        fdm = CreateFDM(self.sandbox)
        fdm.load_model('c172r')
        aircraft_path = self.sandbox.path_to_jsbsim_file('aircraft')
        fdm.load_ic(os.path.join(aircraft_path, 'c172r', 'reset00'), False)
        fdm.run_ic()
        self.assertAlmostEqual(fdm['fcs/steer-cmd-norm'], 0.0)
        self.assertAlmostEqual(fdm['fcs/steer-pos-deg'], 0.0)

        # Should be part of a unit test in C++ ?
        fpectl.turnon_sigfpe()

        grndreact = fdm.get_ground_reactions()
        for i in xrange(grndreact.get_num_gear_units()):
            gear = grndreact.get_gear_unit(i)
            self.assertEqual(gear.get_steer_norm(), 0.0)

        fpectl.turnoff_sigfpe()

        fdm['fcs/steer-pos-deg'] = 5.0
        self.assertAlmostEqual(fdm['fcs/steer-pos-deg'], 5.0)
        fdm.run()
        self.assertAlmostEqual(fdm['fcs/steer-cmd-norm'], 0.0)
        fdm['fcs/steer-cmd-norm'] = 1.0
        self.assertAlmostEqual(fdm['fcs/steer-cmd-norm'], 1.0)
        fdm.run()
        self.assertAlmostEqual(fdm['fcs/steer-cmd-norm'], 1.0)
        self.assertAlmostEqual(fdm['fcs/steer-pos-deg'], 10.0)
예제 #2
0
    def test_direct_steer(self):
        fdm = self.create_fdm()
        fdm.load_model('c172r')
        aircraft_path = self.sandbox.path_to_jsbsim_file('aircraft')
        fdm.load_ic(os.path.join(aircraft_path, 'c172r', 'reset00'), False)
        fdm.run_ic()
        self.assertAlmostEqual(fdm['fcs/steer-cmd-norm'], 0.0)
        self.assertAlmostEqual(fdm['fcs/steer-pos-deg'], 0.0)

        # Should be part of a unit test in C++ ?
        fpectl.turnon_sigfpe()

        grndreact = fdm.get_ground_reactions()
        for i in range(grndreact.get_num_gear_units()):
            gear = grndreact.get_gear_unit(i)
            self.assertEqual(gear.get_steer_norm(), 0.0)

        fpectl.turnoff_sigfpe()

        fdm['fcs/steer-pos-deg'] = 5.0
        self.assertAlmostEqual(fdm['fcs/steer-pos-deg'], 5.0)
        fdm.run()
        self.assertAlmostEqual(fdm['fcs/steer-cmd-norm'], 0.0)
        fdm['fcs/steer-cmd-norm'] = 1.0
        self.assertAlmostEqual(fdm['fcs/steer-cmd-norm'], 1.0)
        fdm.run()
        self.assertAlmostEqual(fdm['fcs/steer-cmd-norm'], 1.0)
        self.assertAlmostEqual(fdm['fcs/steer-pos-deg'], 10.0)
예제 #3
0
    def test_direct_steer(self):
        fdm = self.create_fdm()
        fdm.load_model('c172r')
        fdm.load_ic('reset00', True)
        fdm.run_ic()
        self.assertAlmostEqual(fdm['fcs/steer-cmd-norm'], 0.0)
        self.assertAlmostEqual(fdm['fcs/steer-pos-deg'], 0.0)

        # Should be part of a unit test in C++ ?
        fpectl.turnon_sigfpe()

        grndreact = fdm.get_ground_reactions()
        for i in range(grndreact.get_num_gear_units()):
            gear = grndreact.get_gear_unit(i)
            self.assertEqual(gear.get_steer_norm(), 0.0)

        fpectl.turnoff_sigfpe()

        fdm['fcs/steer-pos-deg'] = 5.0
        self.assertAlmostEqual(fdm['fcs/steer-pos-deg'], 5.0)
        fdm.run()
        self.assertAlmostEqual(fdm['fcs/steer-cmd-norm'], 0.0)
        fdm['fcs/steer-cmd-norm'] = 1.0
        self.assertAlmostEqual(fdm['fcs/steer-cmd-norm'], 1.0)
        fdm.run()
        self.assertAlmostEqual(fdm['fcs/steer-cmd-norm'], 1.0)
        self.assertAlmostEqual(fdm['fcs/steer-pos-deg'], 10.0)
예제 #4
0
    def testModule(self):
        # Check that FP exceptions are not caught by default
        fpectl.test_sigfpe()

        # Check that once fpectl is turned on, a Python exception is raised when
        # a floating point error occurs.
        with self.assertRaises(FloatingPointError):
            fpectl.turnon_sigfpe()
            fpectl.test_sigfpe()
예제 #5
0
    def testScripts(self):
        fpectl.turnon_sigfpe()

        for s in self.script_list(['737_cruise_steady_turn_simplex.xml']):
            fdm = self.create_fdm()
            try:
                self.assertTrue(fdm.load_script(s),
                                msg="Failed to load script %s" % (s, ))

                fdm.run_ic()
                ExecuteUntil(fdm, 30.)

            except Exception as e:
                self.fail("Script %s failed:\n%s" % (s, e.args[0]))
예제 #6
0
    def testScripts(self):
        fpectl.turnon_sigfpe()

        for s in self.script_list(['737_cruise_steady_turn_simplex.xml']):
            fdm = CreateFDM(self.sandbox)
            try:
                self.assertTrue(fdm.load_script(s),
                                msg="Failed to load script %s" % (s,))

                fdm.run_ic()
                ExecuteUntil(fdm, 30.)

            except Exception as e:
                self.fail("Script %s failed:\n%s" % (s, e.args[0]))

            del fdm
예제 #7
0
    def testNorthPoleInitialization(self):
        script_path = self.sandbox.path_to_jsbsim_file('scripts/ball.xml')
        tree, aircraft_name, _ = CopyAircraftDef(script_path, self.sandbox)
        tree.write(
            self.sandbox('aircraft', aircraft_name, aircraft_name + '.xml'))
        # Alter the initial conditions XML file to force the initial latitude
        # to 90 degrees.
        _, IC_tree, IC_file = self.getElementTrees(script_path)
        IC_root = IC_tree.getroot()
        lat_tag = IC_root.find('latitude')
        lat_tag.text = '90.0'
        IC_tree.write(os.path.join('aircraft', aircraft_name, IC_file))

        fdm = self.create_fdm()
        fdm.set_aircraft_path('aircraft')

        fpectl.turnon_sigfpe()
        self.load_script('ball.xml')
        fdm.run_ic()
        self.assertAlmostEqual(fdm['ic/lat-gc-deg'], 90.)

        while fdm['simulation/sim-time-sec'] < 1.:
            fdm.run()
        fpectl.turnoff_sigfpe()
예제 #8
0
from analyzer import analyzeAllSpectralShape
from analyzer import analyzeAllZeroCrossingRate
from analyzer import analyzeMFCCSubset
from analyzer import analyzePitchSubset
from analyzer import analyzeEnergySubset
from analyzer import analyzeZeroCrossingRateSubset
import pymongo
import subprocess
import synthesizer
import urllib

appPath = "/mnt/DataBaby/SoundPlagiarism/"
downloadFiles = ["chorus.txt", "hip-hop.txt", "latin.txt", "orchestra.txt", "pop.txt", "rock.txt", "country.txt", "jazz.txt", "opera.txt", "piano.txt", "reggae.txt", "techno.txt"]
downloadsPath = appPath + "Downloads/"

fpectl.turnon_sigfpe()
logging.basicConfig(filename='processingLog.log',level=logging.DEBUG)

downloadFile = ""


for i in downloadFiles:
    num_lines = sum(1 for line in open(downloadsPath + i))
    if num_lines > 0:
        downloadFile = i
        break
    else: 
        if i == "techno.txt":
            print("Done processing all genres") 
            sys.exit()
filename = appPath + downloadFile[:-4] + "tmpDownload.mp3"
예제 #9
0
import math
import fpectl

print 'Control off:', math.exp(1000)
fpectl.turnon_sigfpe()
print 'Control on:', math.exp(1000)
예제 #10
0
def test_verbose():
    fpectl.turnon_sigfpe()
    suite = unittest.TestLoader().loadTestsFromTestCase(TestBoostedMLP)
    suite = unittest.TestLoader().loadTestsFromTestCase(TestStackedMLP)
    unittest.TextTestRunner(verbosity=1).run(suite)