コード例 #1
0
ファイル: online.py プロジェクト: luca-heltai/EZyRB
    def write_file(self, filename, infile):
        """
		This method writes out the solution in the proper format. In this way, you can view the results
		with the viewer you like.
		
		:param string filename: name of the output file.
		:param string infile: name of the input file. For the mat file this is simply necessary for the parse function.
			for the vtk is necessary for having the correct grid for the new output field.
		
		"""
        __, file_ext = os.path.splitext(filename)

        if file_ext == '.mat':
            mat_handler = mh.MatlabHandler()
            mat_handler.parse(infile, self.output_name)
            mat_handler.write(self.output, filename)
        elif file_ext == '.vtk':
            vtk_handler = vh.VtkHandler()
            vtk_handler.parse(infile, self.output_name)
            vtk_handler.write(self.output,
                              filename,
                              output_name=self.output_name)
        else:
            raise NotImplementedError(
                file_ext + " file extension is not implemented yet.")
コード例 #2
0
ファイル: pod.py プロジェクト: luca-heltai/EZyRB
    def __init__(self, output_name, weights_name, namefile_prefix,
                 file_format):
        self.output_name = output_name
        self.weights_name = weights_name
        self.namefile_prefix = namefile_prefix
        self.file_format = file_format
        self.mu_values = None
        self.pod_basis = None

        self.file_handler = vh.VtkHandler()

        if self.file_format == '.vtk':
            self.file_handler = vh.VtkHandler()
        elif self.file_format == '.mat':
            self.file_handler = mh.MatlabHandler()

        aux_snapshot = self.file_handler.parse(
            self.namefile_prefix + '0' + self.file_format, self.output_name)
        self.snapshots = aux_snapshot.reshape(aux_snapshot.shape[0], 1)
        self.weights = None
        self.cvt_handler = None
コード例 #3
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_write_comparison_ascii(self):
		import vtk
		vtk_handler = vh.VtkHandler()
		output = vtk_handler.parse('tests/test_datasets/matlab_field_test_ascii.vtk', 'Pressure')
		output[0] = [1.1]
		output[1] = [1.1]
		output[2] = [1.1]
		output[11] = [1.1]
		output[12] = [1.1]
		output[13] = [1.1]
		output[30] = [1.1]
		output[31] = [1.1]
		output[32] = [1.1]

		outfilename = 'tests/test_datasets/matlab_field_test_out_ascii.vtk'

		if vtk.VTK_MAJOR_VERSION <= 5:
			outfilename_expected = 'tests/test_datasets/matlab_field_test_out_true_ascii_version5.vtk'
		else:
			outfilename_expected = 'tests/test_datasets/matlab_field_test_out_true_ascii_version6.vtk'
		
		vtk_handler.write(output, outfilename, 'Pressure')
		self.assertTrue(filecmp.cmp(outfilename, outfilename_expected))
		os.remove(outfilename)
コード例 #4
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_parse_check_data_format_2(self):
		vtk_handler = vh.VtkHandler()
		output = vtk_handler.parse('tests/test_datasets/openfoam_output_test.vtk', 'p')
		assert vtk_handler.cell_data == True
コード例 #5
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_parse_check_data_format_1(self):
		vtk_handler = vh.VtkHandler()
		output = vtk_handler.parse('tests/test_datasets/matlab_field_test_bin.vtk', 'Pressure')
		assert vtk_handler.cell_data == False
コード例 #6
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_parse_shape(self):
		vtk_handler = vh.VtkHandler()
		output = vtk_handler.parse('tests/test_datasets/matlab_field_test_bin.vtk', 'Pressure')
		assert output.shape == (2500, 1)
コード例 #7
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_parse_infile(self):
		vtk_handler = vh.VtkHandler()
		output = vtk_handler.parse('tests/test_datasets/matlab_field_test_bin.vtk', 'Pressure')
		assert vtk_handler.infile == 'tests/test_datasets/matlab_field_test_bin.vtk'
コード例 #8
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_parse_failing_check_extension(self):
		vtk_handler = vh.VtkHandler()
		with self.assertRaises(ValueError):
			output = vtk_handler.parse('tests/test_datasets/matlab_output_test.mat')
コード例 #9
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_write_failing_check_extension(self):
		vtk_handler = vh.VtkHandler()
		output = vtk_handler.parse('tests/test_datasets/matlab_field_test_bin.vtk', 'Pressure')
		with self.assertRaises(ValueError):
			vtk_handler.write(output, 'tests/test_datasets/matlab_output_test_out.mat')
コード例 #10
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_default_extension_member(self):
		vtk_handler = vh.VtkHandler()
		assert vtk_handler.extension == '.vtk'
コード例 #11
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_default_infile_member(self):
		vtk_handler = vh.VtkHandler()
		assert vtk_handler.infile == None
コード例 #12
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_instantiation(self):
		vtk_handler = vh.VtkHandler()
コード例 #13
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_write_default_output_name(self):
		vtk_handler = vh.VtkHandler()
		output = vtk_handler.parse('tests/test_datasets/matlab_field_test_bin.vtk', 'Pressure')
		outfilename = 'tests/test_datasets/matlab_field_test_out_bin.vtk'
		vtk_handler.write(output, outfilename, write_bin=True)
		os.remove(outfilename)
コード例 #14
0
ファイル: test_vtkhandler.py プロジェクト: zhucer2003/EZyRB
 def test_vtk_instantiation(self):
     vtk_handler = vh.VtkHandler(vtk_file)
     assert (isinstance(vtk_handler, vh.VtkHandler))
コード例 #15
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_parse_coords_2(self):
		vtk_handler = vh.VtkHandler()
		output = vtk_handler.parse('tests/test_datasets/matlab_field_test_bin.vtk', 'Pressure')
		np.testing.assert_almost_equal(output[0][0], 8.2308226)	
コード例 #16
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_write_failing_filename_type(self):
		vtk_handler = vh.VtkHandler()
		output = vtk_handler.parse('tests/test_datasets/matlab_field_test_bin.vtk', 'Pressure')
		with self.assertRaises(TypeError):
			vtk_handler.write(output, 4.)
コード例 #17
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_parse_failing_filename_type(self):
		vtk_handler = vh.VtkHandler()
		with self.assertRaises(TypeError):
			output = vtk_handler.parse(5.2)
コード例 #18
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_write_failing_infile_instantiation(self):
		vtk_handler = vh.VtkHandler()
		output = np.zeros((40, 3))
		with self.assertRaises(RuntimeError):
 			vtk_handler.write(output, 'tests/test_datasets/matlab_field_test_out.vtk')
コード例 #19
0
ファイル: test_vtkhandler.py プロジェクト: luca-heltai/EZyRB
	def test_vtk_parse_failing_output_name_type(self):
		vtk_handler = vh.VtkHandler()
		with self.assertRaises(TypeError):
			output = vtk_handler.parse('tests/test_datasets/matlab_output_test.mat', 5.2)