Ejemplo n.º 1
0
                    'Spe10Example_3dYaspGrid_pdelab_eigen')
        if HAVE_ALUGRID:
            add_example(AluGridConform3d, space_backend_pdelab,
                        la_backend_eigen,
                        'Spe10Example_3dAluConformGrid_pdelab_eigen')
    if HAVE_DUNE_FEM and HAVE_DUNE_ISTL:
        add_example(YaspGrid3d, space_backend_fem, la_backend_istl,
                    'Spe10Example_3dYaspGrid_fem_istl')
        if HAVE_ALUGRID:
            add_example(AluGridConform3d, space_backend_fem, la_backend_istl,
                        'Spe10Example_3dAluConformGrid_fem_istl')
    if HAVE_DUNE_FEM and HAVE_EIGEN:
        add_example(YaspGrid3d, space_backend_fem, la_backend_eigen,
                    'Spe10Example_3dYaspGrid_fem_eigen')
        if HAVE_ALUGRID:
            add_example(AluGridConform3d, space_backend_fem, la_backend_eigen,
                        'Spe10Example_3dAluConformGrid_fem_eigen')


if __name__ == '__main__':
    # prepare the module
    module, pybindgen_filename, config_h_filename = prepare_python_bindings(
        sys.argv[1:])
    # add all of libdunepymor and libdunestuff
    module, exceptions, interfaces, CONFIG_H = inject_lib_dune_pymor(
        module, config_h_filename)
    # add example code (see above)
    inject_Example(module, exceptions, interfaces, CONFIG_H)
    # and finally write the pybindgen .cc file
    finalize_python_bindings(module, pybindgen_filename)
                           is_const=True, throw=exceptions)
        Example.add_method('visualize_on_coarse_grid',
                           None,
                           [param('const std::vector< double >&', 'vector'),
                            param('const std::string&', 'filename'),
                            param('const std::string&', 'name')],
                           is_const=True, throw=exceptions)
        Example.add_method('alpha',
                           retval(RangeFieldType),
                           [param('const Dune::Pymor::Parameter&', 'mu_1'),
                            param('const Dune::Pymor::Parameter&', 'mu_2')],
                           is_const=True, throw=exceptions)
        Example.add_method('gamma',
                           retval(RangeFieldType),
                           [param('const Dune::Pymor::Parameter&', 'mu_1'),
                            param('const Dune::Pymor::Parameter&', 'mu_2')],
                           is_const=True, throw=exceptions)
    add_example('OS2015MultiscaleExample')
    add_example('OS2015AcademicExample')


if __name__ == '__main__':
    # prepare the module
    module, pybindgen_filename, config_h_filename = prepare_python_bindings(sys.argv[1:])
    # add all of libdunepymor
    module, exceptions, interfaces, CONFIG_H = inject_lib_dune_pymor(module, config_h_filename)
    # add example user code (see above)
    inject_Example(module, exceptions, interfaces, CONFIG_H)
    # and finally write the pybindgen .cc file
    finalize_python_bindings(module, pybindgen_filename)