Пример #1
0
    def test_PnPn2_Parallel(self):
        from lib.nekBinRun import run_neknek
        from re import sub

        cls = self.__class__
        cwd = os.path.join(self.examples_root, cls.example_subdir)

        self.run_genmap(rea_file='inside',tol='0.2')

        self.build_nek()
        run_neknek(
            cwd = cwd,
            inside = 'inside',
            outside = 'inside',
            np_inside = 1,
            np_outside = 1,
            coupled = False,
            log_suffix = self.log_suffix,
            verbose = self.verbose,
        )

        logfile = os.path.join(cwd, '{inside}{np_in}.{outside}{np_out}.log{sfx}'.format(
            inside = 'inside',
            outside = 'inside',
            np_in = 1,
            np_out = 1,
            sfx = self.log_suffix
        ))

        phrase = self.get_phrase_from_log('gs_op_ms test PASSED',logfile=logfile)
        self.assertIsNotNullDelayed(phrase, label='gs_op_ms test PASSED')
Пример #2
0
    def test_PnPn2_Parallel(self):
        from lib.nekBinRun import run_neknek
        from re import sub

        cls = self.__class__
        cwd = os.path.join(self.examples_root, cls.example_subdir)

        self.size_params['lx2'] = 'lx1-2'
        self.config_size()
        self.build_nek()
        run_neknek(
            cwd = cwd,
            inside = 'inside',
            outside = 'inside',
            np_inside = 1,
            np_outside = 1,
            coupled = False,
            log_suffix = self.log_suffix,
            verbose = self.verbose,
        )

        logfile = os.path.join(cwd, '{inside}{np_in}.{outside}{np_out}.log{sfx}'.format(
            inside = 'inside',
            outside = 'inside',
            np_in = 1,
            np_out = 1,
            sfx = self.log_suffix
        ))

        phrase = self.get_phrase_from_log('gs_op_ms test PASSED',logfile=logfile)
        self.assertAlmostEqualDelayed(phrase, label='gs_op_ms test PASSED')

        self.assertDelayedFailures()
Пример #3
0
    def test_PnPn2_Parallel(self):
        from lib.nekBinRun import run_neknek
        from re import sub

        cls = self.__class__
        cwd = os.path.join(self.examples_root, cls.example_subdir)

        self.run_genmap(rea_file='inside',tol='0.2')

        self.build_nek()
        run_neknek(
            cwd = cwd,
            inside = 'inside',
            outside = 'inside',
            np_inside = 1,
            np_outside = 1,
            coupled = False,
            log_suffix = self.log_suffix,
            verbose = self.verbose,
        )

        logfile = os.path.join(cwd, '{inside}{np_in}.{outside}{np_out}.log{sfx}'.format(
            inside = 'inside',
            outside = 'inside',
            np_in = 1,
            np_out = 1,
            sfx = self.log_suffix
        ))

        phrase = self.get_phrase_from_log('ms_gs_op test PASSED',logfile=logfile)
        self.assertIsNotNullDelayed(phrase, label='ms_gs_op test PASSED')
Пример #4
0
    def test_PnPn2_Parallel(self):
        from lib.nekBinRun import run_neknek
        from re import sub

        cls = self.__class__
        cwd = os.path.join(self.examples_root, cls.example_subdir)

        # Tweak the .rea files and run genmap
        for rea_file in ('inside', 'outside'):
            rea_path = os.path.join(cwd, rea_file + '.rea')
            with open(rea_path, 'r') as f:
                lines = [sub(r'^.*DIVERGENCE$', '      1.0000000E-11     p21 DIVERGENCE', l) for l in f]
            with open(rea_path, 'w') as f:
                f.writelines(lines)
            self.run_genmap(os.path.join(cwd, rea_file),tol='0.2')

        self.size_params['lx2'] = 'lx1-2'
        self.config_size()
        self.build_nek()
        run_neknek(
            cwd = cwd,
            inside = 'inside',
            outside = 'outside',
            np_inside = 1,
            np_outside = 1,
            step_limit = 1000,
            coupled = True,
            log_suffix = self.log_suffix,
            verbose = self.verbose,
        )

        logfile  = os.path.join(cwd, '{inside}{np_in}.{outside}{np_out}.log{sfx}'.format(
            inside = 'inside',
            outside = 'outside',
            np_in = 1,
            np_out = 1,
            sfx = self.log_suffix
        ))

        xerr_inside = self.get_value_from_log('X err  inside', logfile=logfile, column=-7, row=-1)
        self.assertAlmostEqualDelayed(xerr_inside, target_val=7.431657E-04, delta=1E-04, label='X err  inside')

        xerr_global = self.get_value_from_log('X err   global', logfile=logfile, column=-7, row=-1)
        self.assertAlmostEqualDelayed(xerr_global, target_val=8.696332E-04, delta=1E-04, label='X err   global')

        xerr_outside = self.get_value_from_log('X err  outside', logfile=logfile, column=-7, row=-1)
        self.assertAlmostEqualDelayed(xerr_outside, target_val=8.696332E-04, delta=1E-05, label='X err  outside')

        yerr_inside = self.get_value_from_log('Y err  inside', logfile=logfile, column=-7, row=-1)
        self.assertAlmostEqualDelayed(yerr_inside, target_val=9.250194E-04, delta=1E-04, label='Y err  inside')

        yerr_global = self.get_value_from_log('Y err   global', logfile=logfile, column=-7, row=-1)
        self.assertAlmostEqualDelayed(yerr_global, target_val=9.878329E-04, delta=1E-04, label='Y err   global')

        yerr_outside = self.get_value_from_log('Y err  outside', logfile=logfile, column=-7, row=-1)
        self.assertAlmostEqualDelayed(yerr_outside, target_val=9.878329E-04, delta=1E-05, label='Y err  outside')

        self.assertDelayedFailures()