本文整理汇总了Python中JSBSim_utils.CreateFDM.set_output_filename方法的典型用法代码示例。如果您正苦于以下问题:Python CreateFDM.set_output_filename方法的具体用法?Python CreateFDM.set_output_filename怎么用?Python CreateFDM.set_output_filename使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类JSBSim_utils.CreateFDM
的用法示例。
在下文中一共展示了CreateFDM.set_output_filename方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_initial_latitude
# 需要导入模块: from JSBSim_utils import CreateFDM [as 别名]
# 或者: from JSBSim_utils.CreateFDM import set_output_filename [as 别名]
def test_initial_latitude(self):
Output_file = self.sandbox.path_to_jsbsim_file('tests', 'output.xml')
GEODETIC, ELEVATION, ALTITUDE = (1, 2, 4)
for v in ('', '_v2'):
IC_file = self.sandbox.path_to_jsbsim_file('aircraft', 'ball',
'reset00'+v+'.xml')
for i in xrange(8):
for latitude_pos in xrange(4):
IC_tree = et.parse(IC_file)
IC_root = IC_tree.getroot()
if v:
position_tag = IC_root.find('position')
latitude_tag = et.SubElement(position_tag, 'latitude')
latitude_tag.attrib['unit'] = 'DEG'
else:
position_tag = IC_root
latitude_tag = IC_root.find('latitude')
latitude_tag.text = str(latitude_pos*30.)
if i & GEODETIC:
latitude_tag.attrib['type'] = 'geod'
if i & ELEVATION:
elevation_tag = et.SubElement(IC_root, 'elevation')
elevation_tag.text = '1000.'
if i & ALTITUDE:
if v:
altitude_tag = position_tag.find('altitudeMSL')
altitude_tag.tag = 'altitudeAGL'
else:
altitude_tag = position_tag.find('altitude')
altitude_tag.tag = 'altitudeMSL'
IC_tree.write('IC.xml')
fdm = CreateFDM(self.sandbox)
fdm.load_model('ball')
fdm.set_output_directive(Output_file)
fdm.set_output_filename(1, 'check_csv_values.csv')
fdm.load_ic('IC.xml', False)
fdm.run_ic()
self.CheckICValues(self.GetVariables(latitude_tag),
'IC%d' % (i,), fdm, position_tag)
del fdm
示例2: ExecuteUntil
# 需要导入模块: from JSBSim_utils import CreateFDM [as 别名]
# 或者: from JSBSim_utils.CreateFDM import set_output_filename [as 别名]
#
# Reset the simulation and check that iteration number is correctly appended to
# the filename.
#
fdm.reset_to_initial_conditions(1)
ExecuteUntil(fdm, 1.0)
if not sandbox.exists('JSBout172B_0.csv'):
print "Reset: the file 'JSBout172B_0.csv' should exist."
sys.exit(-1) # 'make test' will report the test failed.
#
# Change the output filename and check that the naming logic is reset (e.g. that
# no iteration number is appended to the filename
#
fdm.set_output_filename(0, 'dummy.csv')
fdm.reset_to_initial_conditions(1)
ExecuteUntil(fdm, 1.0)
if not sandbox.exists('dummy.csv'):
print "Output name renaming: the file 'dummy.csv' should exist."
sys.exit(-1) # 'make test' will report the test failed.
#
# Call FGFDMExec::SetOutputFileName() after the simulation is reset. And verify
# that the new output file name is ignored until the next call to
# FGOutput::SetStartNewOutput(). This should be so according to the
# documentation of FGOutput::SetOutputName().
#
fdm.reset_to_initial_conditions(1)
fdm.set_output_filename(0, 'dummyx.csv')
示例3: test_reset_output_files
# 需要导入模块: from JSBSim_utils import CreateFDM [as 别名]
# 或者: from JSBSim_utils.CreateFDM import set_output_filename [as 别名]
def test_reset_output_files(self):
#
# Regular run that checks the correct CSV file is created
# We are just checking its existence, not its content. To accelerate the
# test execution, the simulation is interrupted after 1.0sec of simulated
# time.
#
fdm = CreateFDM(self.sandbox)
fdm.load_script(self.sandbox.path_to_jsbsim_file('scripts', 'c1722.xml'))
fdm.run_ic()
ExecuteUntil(fdm, 1.0)
self.assertTrue(self.sandbox.exists('JSBout172B.csv'),
msg="Standard run: the file 'JSBout172B.csv' should exist.")
#
# Reset the simulation and check that iteration number is correctly
# appended to the filename.
#
fdm.reset_to_initial_conditions(1)
ExecuteUntil(fdm, 1.0)
self.assertTrue(self.sandbox.exists('JSBout172B_0.csv'),
msg="Reset: the file 'JSBout172B_0.csv' should exist.")
#
# Change the output filename and check that the naming logic is reset
# (e.g. that no iteration number is appended to the filename)
#
fdm.set_output_filename(0, 'dummy.csv')
fdm.reset_to_initial_conditions(1)
ExecuteUntil(fdm, 1.0)
self.assertTrue(self.sandbox.exists('dummy.csv'),
msg="Output name renaming: the file 'dummy.csv' should exist.")
#
# Call FGFDMExec::SetOutputFileName() after the simulation is reset. And
# verify that the new output file name is ignored until the next call to
# FGOutput::SetStartNewOutput(). This should be so according to the
# documentation of FGOutput::SetOutputName().
#
fdm.reset_to_initial_conditions(1)
fdm.set_output_filename(0, 'dummyx.csv')
ExecuteUntil(fdm, 1.0)
self.assertTrue(not self.sandbox.exists('dummyx.csv'),
msg="Late renaming: 'dummyx.csv' should not exist.")
self.assertTrue(self.sandbox.exists('dummy_0.csv'),
msg="Late renaming: 'dummy_0.csv' should exist.")
#
# Check that the new filename is taken into account when the simulation is
# reset.
#
fdm.reset_to_initial_conditions(1)
ExecuteUntil(fdm, 1.0)
self.assertTrue(self.sandbox.exists('dummyx.csv'),
msg="Reset after late renaming: 'dummyx.csv' should exist.")
#
# Check against multiple calls to FGFDMExec::SetOutputFileName()
#
fdm.set_output_filename(0, 'this_one.csv')
fdm.set_output_filename(0, 'that_one.csv')
fdm.reset_to_initial_conditions(1)
ExecuteUntil(fdm, 1.0)
self.assertTrue(not self.sandbox.exists('this_one.csv'),
msg="Output name overwritten: 'this_one.csv' should not exist.")
self.assertTrue(self.sandbox.exists('that_one.csv'),
msg="Output name overwritten: 'that_one.csv' should exist.")
#
# Check again on a brand new FDM
#
self.sandbox.delete_csv_files()
# Because JSBSim internals use static pointers, we cannot rely on Python
# garbage collector to decide when the FDM is destroyed otherwise we can
# get dangling pointers.
del fdm
fdm = CreateFDM(self.sandbox)
fdm.load_script(self.sandbox.path_to_jsbsim_file('scripts', 'c1722.xml'))
fdm.run_ic()
fdm.set_output_filename(0,'oops.csv') # Oops!! Changed my mind
ExecuteUntil(fdm, 1.0)
self.assertTrue(not self.sandbox.exists('oops.csv'),
msg="New FDM: 'oops.csv' should not exist.")
self.assertTrue(self.sandbox.exists('JSBout172B.csv'),
msg="New FDM: 'JSBout172B.csv' should exist.")
#
# The new file name 'oops.csv' has been ignored.
# Check if it is now taken into account.
#.........这里部分代码省略.........