From 83e16610cd8c1a11aeb1e62ccf9fb852455dd097 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20He=C3=9F?= <rene@debian> Date: Tue, 27 Sep 2016 17:22:13 +0200 Subject: [PATCH] Remove symbol --- python/dune/perftool/generation/__init__.py | 1 - python/dune/perftool/generation/cache.py | 2 +- python/dune/perftool/generation/cpp.py | 1 - python/dune/perftool/loopy/transformer.py | 1 - python/dune/perftool/pdelab/__init__.py | 4 +- python/dune/perftool/pdelab/argument.py | 25 ++----- python/dune/perftool/pdelab/basis.py | 7 -- python/dune/perftool/pdelab/driver.py | 71 ++------------------ python/dune/perftool/pdelab/geometry.py | 18 ----- python/dune/perftool/pdelab/localoperator.py | 3 - python/dune/perftool/pdelab/parameter.py | 3 - python/dune/perftool/pdelab/quadrature.py | 7 -- python/dune/perftool/pdelab/signatures.py | 10 --- 13 files changed, 14 insertions(+), 139 deletions(-) diff --git a/python/dune/perftool/generation/__init__.py b/python/dune/perftool/generation/__init__.py index 6496c2ca..934208c8 100644 --- a/python/dune/perftool/generation/__init__.py +++ b/python/dune/perftool/generation/__init__.py @@ -19,7 +19,6 @@ from dune.perftool.generation.cpp import (base_class, pre_include, preamble, post_include, - symbol, template_parameter, ) diff --git a/python/dune/perftool/generation/cache.py b/python/dune/perftool/generation/cache.py index d204d8cc..5c2b6cc8 100644 --- a/python/dune/perftool/generation/cache.py +++ b/python/dune/perftool/generation/cache.py @@ -153,7 +153,7 @@ def generator_factory(**factory_kwargs): # define a decorator 'cached', which may be used as a standard decorator, if no further # magic is to be added to the caching mechanism -cached = generator_factory(item_tags="default_cached") +cached = generator_factory(item_tags=("default_cached",)) class _ConditionDict(dict): diff --git a/python/dune/perftool/generation/cpp.py b/python/dune/perftool/generation/cpp.py index 06934dfc..166dc9fe 100644 --- a/python/dune/perftool/generation/cpp.py +++ b/python/dune/perftool/generation/cpp.py @@ -6,7 +6,6 @@ are commonly needed for code generation from dune.perftool.generation import generator_factory from dune.perftool.cgen.clazz import AccessModifier -symbol = generator_factory(item_tags=("symbol",)) preamble = generator_factory(item_tags=("preamble",), counted=True) diff --git a/python/dune/perftool/loopy/transformer.py b/python/dune/perftool/loopy/transformer.py index 2e0f3e19..ad12bb57 100644 --- a/python/dune/perftool/loopy/transformer.py +++ b/python/dune/perftool/loopy/transformer.py @@ -15,7 +15,6 @@ from dune.perftool.generation import (domain, globalarg, iname, instruction, - symbol, temporary_variable, valuearg, ) diff --git a/python/dune/perftool/pdelab/__init__.py b/python/dune/perftool/pdelab/__init__.py index be3efaf4..51d625d9 100644 --- a/python/dune/perftool/pdelab/__init__.py +++ b/python/dune/perftool/pdelab/__init__.py @@ -1,12 +1,12 @@ """ The pdelab specific parts of the code generation process """ from dune.perftool.generation import (preamble, - symbol, + cached, ) # Now define some commonly used generators that do not fall into a specific category -@symbol +@cached def name_index(index): from ufl.classes import MultiIndex, Index if isinstance(index, Index): diff --git a/python/dune/perftool/pdelab/argument.py b/python/dune/perftool/pdelab/argument.py index dc3a508b..7bba657e 100644 --- a/python/dune/perftool/pdelab/argument.py +++ b/python/dune/perftool/pdelab/argument.py @@ -1,6 +1,12 @@ """ Generator functions related to trial and test functions and the accumulation loop""" -from dune.perftool.generation import domain, iname, pymbolic_expr, symbol, globalarg, valuearg, get_global_context_value +from dune.perftool.generation import (domain, + iname, + pymbolic_expr, + globalarg, + valuearg, + get_global_context_value + ) from dune.perftool.ufl.modified_terminals import ModifiedArgumentDescriptor from dune.perftool.pdelab import (name_index, restricted_name, @@ -18,12 +24,10 @@ from pymbolic.primitives import Call, Subscript, Variable import loopy -@symbol def name_testfunction_gradient(element, restriction): return name_basis_gradient(element, restriction) -@symbol def name_testfunction(element, restriction): it = get_global_context_value("integral_type") if it == 'exterior_facet': @@ -31,7 +35,6 @@ def name_testfunction(element, restriction): return name_basis(element, restriction) -@symbol def name_trialfunction_gradient(element, restriction, component): rawname = "gradu" + "_".join(str(c) for c in component) name = restricted_name(rawname, restriction) @@ -40,7 +43,6 @@ def name_trialfunction_gradient(element, restriction, component): return name -@symbol def name_trialfunction(element, restriction, component): rawname = "u" + "_".join(str(c) for c in component) name = restricted_name(rawname, restriction) @@ -49,7 +51,6 @@ def name_trialfunction(element, restriction, component): return name -@symbol def name_apply_function_gradient(element, restriction, component): rawname = "gradz_func" + "_".join(str(c) for c in component) name = restricted_name(rawname, restriction) @@ -58,7 +59,6 @@ def name_apply_function_gradient(element, restriction, component): return name -@symbol def name_apply_function(element, restriction, component): rawname = "z_func" + "_".join(str(c) for c in component) name = restricted_name(rawname, restriction) @@ -67,33 +67,27 @@ def name_apply_function(element, restriction, component): return name -@symbol def name_testfunctionspace(restriction): return restricted_name("lfsv", restriction) -@symbol def name_trialfunctionspace(restriction): return restricted_name("lfsu", restriction) -@symbol def type_testfunctionspace(): return "LFSV" -@symbol def type_trialfunctionspace(): return "LFSU" -@symbol def name_coefficientcontainer(restriction): name = restricted_name("x", restriction) return name -@symbol def name_applycontainer(restriction): name = restricted_name("z", restriction) return name @@ -114,7 +108,6 @@ def pymbolic_coefficient(container, lfs, index): return Call(CoefficientAccess(container), (lfs, Variable(index),)) -@symbol def type_coefficientcontainer(): return "X" @@ -143,7 +136,6 @@ def name_argument(ma): assert False -@symbol def name_jacobian(restriction1, restriction2): # Restrictions may only differ if NONE if (restriction1 == Restriction.NONE) or (restriction2 == Restriction.NONE): @@ -151,17 +143,14 @@ def name_jacobian(restriction1, restriction2): return restricted_name(restricted_name("jac", restriction1), restriction2) -@symbol def type_jacobian(): return "J" -@symbol def name_residual(restriction): return restricted_name("r", restriction) -@symbol def type_residual(): return "R" diff --git a/python/dune/perftool/pdelab/basis.py b/python/dune/perftool/pdelab/basis.py index ff7af690..23f0a430 100644 --- a/python/dune/perftool/pdelab/basis.py +++ b/python/dune/perftool/pdelab/basis.py @@ -8,7 +8,6 @@ from dune.perftool.generation import (cached, include_file, instruction, preamble, - symbol, temporary_variable, ) from dune.perftool.pdelab.quadrature import (name_quadrature_position_in_cell, @@ -28,7 +27,6 @@ from pymbolic.primitives import Product, Subscript, Variable from loopy import Reduction -@symbol def type_localbasis_cache(element): return "LocalBasisCacheWithoutReferences<{}>".format(type_gfs(element)) @@ -40,7 +38,6 @@ def define_localbasis_cache(element, name): return "{} {};".format(t, name) -@symbol def name_localbasis_cache(element): name = "cache_{}".format(FEM_name_mangling(element)) define_localbasis_cache(element, name) @@ -52,7 +49,6 @@ def define_lfs_bound(lfs, bound): return 'auto {} = {}.size();'.format(bound, lfs) -@symbol def name_lfs_bound(lfs): # LFS might either be given by an UFL element or by a string describig its name from ufl import FiniteElementBase @@ -256,7 +252,6 @@ def evaluate_basis(leaf_element, name, restriction): ) -@symbol def name_basis(leaf_element, restriction): assert leaf_element.num_sub_elements() == 0 # TODO name mangling! @@ -285,7 +280,6 @@ def evaluate_reference_gradient(leaf_element, name, restriction): ) -@symbol def name_reference_gradient(leaf_element, restriction): assert leaf_element.num_sub_elements() == 0 name = "js_{}".format(FEM_name_mangling(leaf_element)) @@ -337,7 +331,6 @@ def evaluate_basis_gradient(leaf_element, name, restriction): forced_iname_deps_is_final=True) -@symbol def name_basis_gradient(leaf_element, restriction): assert leaf_element.num_sub_elements() == 0 name = "gradphi_{}".format(FEM_name_mangling(leaf_element)) diff --git a/python/dune/perftool/pdelab/driver.py b/python/dune/perftool/pdelab/driver.py index f413b1f2..119a13d4 100644 --- a/python/dune/perftool/pdelab/driver.py +++ b/python/dune/perftool/pdelab/driver.py @@ -8,7 +8,7 @@ gained there. """ from dune.perftool.generation import (generator_factory, include_file, - symbol, + cached, preamble, ) from dune.perftool.options import get_option @@ -142,7 +142,6 @@ def FEM_name_mangling(fem): raise NotImplementedError("FEM NAME MANGLING") -@symbol def name_inifile(): # TODO pass some other option here. return "argv[1]" @@ -156,7 +155,6 @@ def parse_initree(varname): return ["Dune::ParameterTree initree;", "Dune::ParameterTreeParser::readINITree({}, {});".format(filename, varname)] -@symbol def name_initree(): parse_initree("initree") # TODO we can get some other ini file here. @@ -168,7 +166,6 @@ def define_dimension(name): return "static const int {} = {};".format(name, _driver_data['form'].ufl_cell().geometric_dimension()) -@symbol def name_dimension(): define_dimension("dim") return "dim" @@ -195,7 +192,6 @@ def typedef_grid(name): return "typedef {} {};".format(gridt, name) -@symbol def type_grid(): typedef_grid("Grid") return "Grid" @@ -210,7 +206,6 @@ def define_grid(name): "std::shared_ptr<{}> grid = factory.getGrid();".format(_type)] -@symbol def name_grid(): define_grid("grid") return "grid" @@ -222,7 +217,6 @@ def typedef_leafview(name): return "typedef {}::LeafGridView {};".format(grid, name) -@symbol def type_leafview(): typedef_leafview("GV") return "GV" @@ -235,7 +229,6 @@ def define_leafview(name): return "{} {} = {}->leafGridView();".format(_type, name, grid) -@symbol def name_leafview(): define_leafview("gv") return "gv" @@ -248,7 +241,6 @@ def typedef_vtkwriter(name): return "typedef Dune::SubsamplingVTKWriter<{}> {};".format(gv, name) -@symbol def type_vtkwriter(): typedef_vtkwriter("VTKWriter") return "VTKWriter" @@ -260,7 +252,6 @@ def define_subsamplinglevel(name): return "int {} = {}.get<int>(\"vtk.subsamplinglevel\", 0);".format(name, ini) -@symbol def name_subsamplinglevel(): define_subsamplinglevel("sublevel") return "sublevel" @@ -274,7 +265,6 @@ def define_vtkwriter(name): return "{} {}({}, {});".format(_type, name, gv, subsamp) -@symbol def name_vtkwriter(): define_vtkwriter("vtkwriter") return "vtkwriter" @@ -286,7 +276,6 @@ def typedef_domainfield(name): return "typedef {}::ctype {};".format(gridt, name) -@symbol def type_domainfield(): typedef_domainfield("DF") return "DF" @@ -297,7 +286,6 @@ def typedef_range(name): return "typedef double {};".format(name) -@symbol def type_range(): typedef_range("R") return "R" @@ -328,7 +316,6 @@ def typedef_fem(expr, name): raise NotImplementedError("FEM not implemented in dune-perftool") -@symbol def type_fem(expr): name = "{}_FEM".format(FEM_name_mangling(expr).upper()) typedef_fem(expr, name) @@ -345,7 +332,6 @@ def define_fem(expr, name): return "{} {}({});".format(femtype, name, gv) -@symbol def name_fem(expr): name = "{}_fem".format(FEM_name_mangling(expr).lower()) define_fem(expr, name) @@ -358,13 +344,11 @@ def typedef_vectorbackend(name): return "typedef Dune::PDELab::istl::VectorBackend<Dune::PDELab::istl::Blocking::none, 1> {};".format(name) -@symbol def type_vectorbackend(): typedef_vectorbackend("VectorBackend") return "VectorBackend" -@symbol def type_orderingtag(): return "Dune::PDELab::LexicographicOrderingTag" @@ -380,7 +364,6 @@ def typedef_no_constraintsassembler(name): return "typedef Dune::PDELab::NoConstraints {};".format(name) -@symbol def type_constraintsassembler(dirichlet): if dirichlet[1]: typedef_dirichlet_constraintsassembler("DirichletConstraintsAssember") @@ -397,7 +380,6 @@ def typedef_constraintscontainer(element, name): return "typedef {}::ConstraintsContainer<{}>::Type {};".format(gfs, r, name) -@symbol def type_constraintscontainer(element): name = "{}_cc".format(FEM_name_mangling(element)).upper() typedef_constraintscontainer(element, name) @@ -428,7 +410,6 @@ def define_intersection_lambda(expression, name): return "auto {} = [&](const auto& is, const auto& x){{ {} }};".format(name, expression.c_expr[0]) -@symbol def name_bctype_lambda(name, dirichlet): name = name + "_lambda" define_intersection_lambda(dirichlet, name) @@ -460,8 +441,7 @@ def define_compositegfs_constraints(name, *children): ', '.join(c for c in children) ) - -@symbol +@cached def name_bctype_function(expr): from ufl import MixedElement, VectorElement, TensorElement if isinstance(expr, (VectorElement, TensorElement)): @@ -500,7 +480,6 @@ def assemble_constraints(name, expr): ) -@symbol def name_assembled_constraints(expr): name = name_constraintscontainer(expr) if has_constraints(expr): @@ -582,7 +561,6 @@ def define_dofestimate(name): "int {} = {}.get<int>(\"istl.number_of_nnz\", generic_dof_estimate);".format(name, ini)] -@symbol def name_dofestimate(): define_dofestimate("dofestimate") return "dofestimate" @@ -594,7 +572,6 @@ def typedef_matrixbackend(name): return "typedef Dune::PDELab::istl::BCRSMatrixBackend<> {};".format(name) -@symbol def type_matrixbackend(): typedef_matrixbackend("MatrixBackend") return "MatrixBackend" @@ -607,13 +584,11 @@ def define_matrixbackend(name): return "{} {}({});".format(mbtype, name, dof) -@symbol def name_matrixbackend(): define_matrixbackend("mb") return "mb" -@symbol def type_parameters(formdata): from dune.perftool.generation import get_global_context_value data = get_global_context_value("data") @@ -628,7 +603,6 @@ def define_parameters(name, formdata): return "{} {};".format(partype, name) -@symbol def name_parameters(formdata): name = form_name_suffix("params", formdata) define_parameters(name, formdata) @@ -651,7 +625,6 @@ def typedef_localoperator(name, formdata): return "using {} = {}<{}, {}>;".format(name, lopname, ugfs, vgfs) -@symbol def type_localoperator(formdata): name = form_name_suffix("LOP", formdata).upper() typedef_localoperator(name, formdata) @@ -666,7 +639,6 @@ def define_localoperator(name, formdata): return "{} {}({}, {});".format(loptype, name, ini, params) -@symbol def name_localoperator(formdata): name = form_name_suffix("lop", formdata) define_localoperator(name, formdata) @@ -687,7 +659,6 @@ def typedef_gridoperator(name, formdata): return "typedef Dune::PDELab::GridOperator<{}, {}, {}, {}, {}, {}, {}, {}, {}> {};".format(ugfs, vgfs, lop, mb, df, r, r, ucc, vcc, name) -@symbol def type_gridoperator(formdata): name = form_name_suffix("GO", formdata).upper() typedef_gridoperator(name, formdata) @@ -709,7 +680,6 @@ def define_gridoperator(name, formdata): "std::cout << \"cc with \" << {}.size() << \" dofs generated \"<< std::endl;".format(ucc)] -@symbol def name_gridoperator(formdata): name = form_name_suffix("go", formdata) define_gridoperator(name, formdata) @@ -722,7 +692,6 @@ def typedef_vector(name, formdata): return "typedef {}::Traits::Domain {};".format(go_type, name) -@symbol def type_vector(formdata): name = form_name_suffix("V", formdata).upper() typedef_vector(name, formdata) @@ -746,7 +715,6 @@ def define_boundary_lambda(boundary, name): return "auto {} = [&](const auto& e, const auto& x){{ {} }};".format(name, boundary.c_expr[0]) -@symbol def name_boundary_lambda(boundary, name): define_boundary_lambda(boundary, name + "lambda") return name + "lambda" @@ -785,7 +753,7 @@ def expression_splitter(expr, length): return split_expression(expr) -@symbol +@cached def _name_boundary_function(element, boundary, name=None): from ufl import MixedElement, VectorElement, TensorElement if isinstance(element, (VectorElement, TensorElement)): @@ -815,7 +783,7 @@ def name_boundary_function(expr): return _name_boundary_function(element, boundary) -@symbol +@cached def name_solution_function(tree_path=()): from dune.perftool.generation import get_global_context_value expr = get_global_context_value("data").object_by_name[get_option("exact_solution_expression")] @@ -869,14 +837,12 @@ def maybe_interpolate_vector(name, formdata): define_vector(name, formdata) -@symbol def name_vector(formdata): name = form_name_suffix("x", formdata) maybe_interpolate_vector(name, formdata) return name -@symbol def name_vector_from_solution_expression(): interpolate_solution_expression("solution") return "solution" @@ -888,7 +854,6 @@ def typedef_linearsolver(name): return "typedef Dune::PDELab::ISTLBackend_SEQ_UMFPack {};".format(name) -@symbol def type_linearsolver(): typedef_linearsolver("LinearSolver") return "LinearSolver" @@ -900,7 +865,6 @@ def define_linearsolver(name): return "{} {}(false);".format(lstype, name) -@symbol def name_linearsolver(): define_linearsolver("ls") return "ls" @@ -912,7 +876,6 @@ def define_reduction(name): return "double {} = {}.get<double>(\"reduction\", 1e-12);".format(name, ini) -@symbol def name_reduction(): define_reduction("reduction") return "reduction" @@ -927,7 +890,6 @@ def typedef_stationarylinearproblemsolver(name): return "typedef Dune::PDELab::StationaryLinearProblemSolver<{}, {}, {}> {};".format(gotype, lstype, xtype, name) -@symbol def type_stationarylinearproblemsolver(): typedef_stationarylinearproblemsolver("SLP") return "SLP" @@ -944,7 +906,6 @@ def define_stationarylinearproblemsolver(name): return "{} {}({}, {}, {}, {});".format(slptype, name, go, ls, x, red) -@symbol def name_stationarylinearproblemsolver(): define_stationarylinearproblemsolver("slp") return "slp" @@ -958,7 +919,6 @@ def typedef_stationarynonlinearproblemsolver(name, go_type): return "typedef Dune::PDELab::Newton<{}, {}, {}> {};".format(go_type, ls_type, x_type, name) -@symbol def type_stationarynonlinearproblemssolver(go_type): typedef_stationarynonlinearproblemsolver("SNP", go_type) return "SNP" @@ -972,7 +932,6 @@ def define_stationarynonlinearproblemsolver(name, go_type, go): return "{} {}({}, {}, {});".format(snptype, name, go, x, ls) -@symbol def name_stationarynonlinearproblemsolver(go_type, go): define_stationarynonlinearproblemsolver("snp", go_type, go) return "snp" @@ -988,7 +947,6 @@ def typedef_timesteppingmethod(name): return "typedef Dune::PDELab::OneStepThetaParameter<{}> {};".format(r_type, name) -@symbol def type_timesteppingmethod(): typedef_timesteppingmethod("TSM") return "TSM" @@ -1004,7 +962,6 @@ def define_timesteppingmethod(name): return "{} {}(1.0);".format(tsm_type, name) -@symbol def name_timesteppingmethod(): define_timesteppingmethod("tsm") return "tsm" @@ -1022,7 +979,6 @@ def typedef_instationarygridoperator(name): return "typedef Dune::PDELab::OneStepGridOperator<{},{}> {};".format(go_type, mass_go_type, name) -@symbol def type_instationarygridoperator(): typedef_instationarygridoperator("IGO") return "IGO" @@ -1036,7 +992,6 @@ def define_instationarygridoperator(name): return "{} {}({}, {});".format(igo_type, name, go, mass_go) -@symbol def name_instationarygridoperator(): define_instationarygridoperator("igo") return "igo" @@ -1051,7 +1006,6 @@ def typedef_onestepmethod(name): return "typedef Dune::PDELab::OneStepMethod<{}, {}, {}, {}, {}> {};".format(r_type, igo_type, snp_type, vector_type, vector_type, name) -@symbol def type_onestepmethod(): typedef_onestepmethod("OSM") return "OSM" @@ -1067,7 +1021,6 @@ def define_onestepmethod(name): return "{} {}({},{},{});".format(ilptype, name, tsm, igo, snp) -@symbol def name_onestepmethod(): define_onestepmethod("osm") return "osm" @@ -1082,7 +1035,6 @@ def typedef_explicitonestepmethod(name): return "typedef Dune::PDELab::ExplicitOneStepMethod<{}, {}, {}, {}> {};".format(r_type, igo_type, ls_type, vector_type, name) -@symbol def type_explicitonestepmethod(): typedef_explicitonestepmethod("EOSM") return "EOSM" @@ -1097,7 +1049,6 @@ def define_explicitonestepmethod(name): return "{} {}({}, {}, {});".format(eosm_type, name, tsm, igo, ls) -@symbol def name_explicitonestepmethod(): define_explicitonestepmethod("eosm") return "eosm" @@ -1114,7 +1065,6 @@ def define_timing_stream(name): ] -@symbol def name_timing_stream(): name = "timestream" define_timing_stream(name) @@ -1181,7 +1131,6 @@ def define_vtkfile(name): return "std::string {} = {}.get<std::string>(\"wrapper.vtkcompare.name\", \"output\");".format(name, ini) -@symbol def name_vtkfile(): define_vtkfile("vtkfile") return "vtkfile" @@ -1205,7 +1154,6 @@ def compare_dofs(): " {} = true;".format(fail)] -@symbol def type_discrete_grid_function(gfs): return "DGF_{}".format(gfs.upper()) @@ -1217,14 +1165,12 @@ def define_discrete_grid_function(gfs, vector_name, dgf_name): "{} {}({},{});".format(dgf_type, dgf_name, gfs, vector_name)] -@symbol def name_discrete_grid_function(gfs, vector_name): dgf_name = gfs + "_dgf" define_discrete_grid_function(gfs, vector_name, dgf_name) return dgf_name -@symbol def type_subgfs(element, tree_path): include_file('dune/pdelab/gridfunctionspace/subspace.hh', filetag='driver') gfs = type_gfs(element) @@ -1239,7 +1185,6 @@ def define_subgfs(name, element, tree_path): return '{} {}({});'.format(t, name, gfs) -@symbol def name_subgfs(element, tree_path): gfs = name_gfs(element) if len(tree_path) == 0: @@ -1263,7 +1208,6 @@ def typedef_difference_squared_adapter(name, tree_path): return 'typedef DifferenceSquaredAdapter<decltype({}), decltype({})> {};'.format(solution_function, dgf, name) -@symbol def type_difference_squared_adapter(tree_path): t = 'DifferenceSquared_{}'.format('_'.join(tree_path)) typedef_difference_squared_adapter(t, tree_path) @@ -1329,7 +1273,6 @@ def define_accumulated_L2_error(name): return "double {}(0.0);".format(name) -@symbol def name_accumulated_L2_error(): name = 'l2error' define_accumulated_L2_error(name) @@ -1352,7 +1295,6 @@ def define_test_fail_variable(name): return 'bool {}(false);'.format(name) -@symbol def name_test_fail_variable(): name = "testfail" define_test_fail_variable(name) @@ -1409,7 +1351,6 @@ def define_gfs_name(element, prefix=()): return "{}.name(\"data_{}\");".format(gfs, "_".join(str(p) for p in prefix)) -@symbol def type_predicate(): include_file("dune/perftool/vtkpredicate.hh", filetag="driver") return "CuttingPredicate" @@ -1421,7 +1362,6 @@ def define_predicate(name): return "{} {};".format(t, name) -@symbol def name_predicate(): define_predicate("predicate") return "predicate" @@ -1456,7 +1396,6 @@ def define_time(name): return "double {} = 0.0;".format(name) -@symbol def name_time(): define_time("time") return "time" @@ -1469,7 +1408,6 @@ def typedef_vtk_sequence_writer(name): return "typedef Dune::VTKSequenceWriter<{}> {};".format(gv_type, name) -@symbol def type_vtk_sequence_writer(): typedef_vtk_sequence_writer("VTKSW") return "VTKSW" @@ -1484,7 +1422,6 @@ def define_vtk_sequence_writer(name): return "{} {}(std::make_shared<{}>({}), {});".format(vtksw_type, name, vtkw_type, vtkw, vtkfile) -@symbol def name_vtk_sequence_writer(): define_vtk_sequence_writer("vtkSequenceWriter") return "vtkSequenceWriter" diff --git a/python/dune/perftool/pdelab/geometry.py b/python/dune/perftool/pdelab/geometry.py index 33d6e88a..8a27c2e1 100644 --- a/python/dune/perftool/pdelab/geometry.py +++ b/python/dune/perftool/pdelab/geometry.py @@ -4,7 +4,6 @@ from dune.perftool.generation import (domain, get_global_context_value, iname, preamble, - symbol, temporary_variable, ) from dune.perftool.pdelab.quadrature import (name_quadrature_position, @@ -59,22 +58,18 @@ def dimension_iname(context='', count=0): return _dimension_iname(context, count) -@symbol def name_element_geometry_wrapper(): return 'eg' -@symbol def type_element_geometry_wrapper(): return 'EG' -@symbol def name_intersection_geometry_wrapper(): return 'ig' -@symbol def type_intersection_geometry_wrapper(): return 'IG' @@ -113,7 +108,6 @@ def define_restricted_cell(name, restriction): ) -@symbol def name_cell(restriction): if restriction == Restriction.NONE: eg = name_element_geometry_wrapper() @@ -133,14 +127,12 @@ def define_cell_geometry(name, restriction): ) -@symbol def name_cell_geometry(restriction): name = restricted_name("cell_geo", restriction) define_cell_geometry(name, restriction) return name -@symbol def type_cell_geometry(restriction): if restriction == Restriction.NONE: eg = type_element_geometry_wrapper() @@ -158,13 +150,11 @@ def define_intersection_geometry(name): ) -@symbol def name_intersection_geometry(): define_intersection_geometry("is_geo") return "is_geo" -@symbol def name_intersection(): ig = name_intersection_geometry_wrapper() return "{}.intersection()".format(ig) @@ -192,7 +182,6 @@ def define_in_cell_geometry(restriction, name): ) -@symbol def name_in_cell_geometry(restriction): assert restriction is not Restriction.NONE @@ -212,7 +201,6 @@ def apply_in_cell_transformation(name, local, restriction): ) -@symbol def name_in_cell_coordinates(local, basename, restriction): name = "{}_in_{}side".format(basename, "in" if restriction is Restriction.NEGATIVE else "out") temporary_variable(name, shape=(name_dimension(),), shape_impl=("fv",)) @@ -233,7 +221,6 @@ def define_dimension(name): return 'const int {} = {}::Entity::dimension;'.format(name, geo) -@symbol def name_dimension(): define_dimension("dim") return "dim" @@ -245,7 +232,6 @@ def define_intersection_dimension(name): return "const int {} = {}::Geometry::mydimension;".format(name, geo) -@symbol def name_intersection_dimension(): define_intersection_dimension("idim") return "idim" @@ -266,7 +252,6 @@ def declare_normal(name, shape, shape_impl): return "auto {} = {}.centerUnitOuterNormal();".format(name, ig) -@symbol def name_unit_outer_normal(): name = "outer_normal" temporary_variable(name, shape=(name_dimension(),), decl_method=declare_normal) @@ -282,7 +267,6 @@ def evaluate_unit_inner_normal(name): ) -@symbol def name_unit_inner_normal(): name = "inner_normal" temporary_variable(name, shape=(name_dimension(),), decl_method=declare_normal) @@ -290,7 +274,6 @@ def name_unit_inner_normal(): return "inner_normal" -@symbol def type_jacobian_inverse_transposed(restriction): geo = type_cell_geometry(restriction) return "typename {}::JacobianInverseTransposed".format(geo) @@ -320,7 +303,6 @@ def define_jacobian_inverse_transposed(name, restriction): ) -@symbol def name_jacobian_inverse_transposed(restriction): name = restricted_name("jit", restriction) define_jacobian_inverse_transposed(name, restriction) diff --git a/python/dune/perftool/pdelab/localoperator.py b/python/dune/perftool/pdelab/localoperator.py index e926b4a8..c0bd10ef 100644 --- a/python/dune/perftool/pdelab/localoperator.py +++ b/python/dune/perftool/pdelab/localoperator.py @@ -12,7 +12,6 @@ from dune.perftool.generation import (base_class, initializer_list, post_include, retrieve_cache_items, - symbol, template_parameter, ) from dune.perftool.cgen.clazz import (AccessModifier, @@ -71,7 +70,6 @@ def lop_template_gfs(ma): assert False -@symbol def name_initree_constructor_param(): return "iniParams" @@ -125,7 +123,6 @@ def enum_alpha(): return _enum_alpha(ufl_measure_to_pdelab_measure(integral_type)) -@symbol def name_initree_member(): define_initree("_iniParams") return "_iniParams" diff --git a/python/dune/perftool/pdelab/parameter.py b/python/dune/perftool/pdelab/parameter.py index 624f82db..a15f52a1 100644 --- a/python/dune/perftool/pdelab/parameter.py +++ b/python/dune/perftool/pdelab/parameter.py @@ -7,7 +7,6 @@ from dune.perftool.generation import (cached, generator_factory, initializer_list, preamble, - symbol, temporary_variable ) from dune.perftool.pdelab.geometry import (name_cell, @@ -37,7 +36,6 @@ def define_parameterclass(name): return "const {}& {};".format(t, name) -@symbol def name_paramclass(): define_parameterclass("param") return "param" @@ -49,7 +47,6 @@ def define_time(name): return "double {};".format(name) -@symbol def name_time(): define_time("t") return "t" diff --git a/python/dune/perftool/pdelab/quadrature.py b/python/dune/perftool/pdelab/quadrature.py index cf1d2bea..464251fe 100644 --- a/python/dune/perftool/pdelab/quadrature.py +++ b/python/dune/perftool/pdelab/quadrature.py @@ -4,7 +4,6 @@ from dune.perftool.generation import (cached, iname, include_file, instruction, - symbol, temporary_variable, ) @@ -19,7 +18,6 @@ def quadrature_preamble(code, **kw): return instruction(inames=quadrature_iname(), code=code, **kw) -@symbol def name_quadrature_point(): return "qp" @@ -31,7 +29,6 @@ def define_quadrature_position(name): ) -@symbol def name_quadrature_position(): name = "pos" # To determine the shape, I do query global information here for lack of good alternatives @@ -47,7 +44,6 @@ def name_quadrature_position(): return name -@symbol def name_quadrature_position_in_cell(restriction): if restriction == Restriction.NONE: return name_quadrature_position() @@ -56,7 +52,6 @@ def name_quadrature_position_in_cell(restriction): return to_cell_coordinates(name_quadrature_position(), name_quadrature_point(), restriction) -@symbol def name_quadrature_weight(): qp = name_quadrature_point() return "{}.weight()".format(qp) @@ -78,14 +73,12 @@ def define_quadrature_factor(fac): ) -@symbol def name_factor(): temporary_variable("fac", shape=()) define_quadrature_factor("fac") return "fac" -@symbol def name_order(): # TODO how to determine integration order in a generic fashion here? # Or maybe just read it from the ini file? Or define some mapping from the diff --git a/python/dune/perftool/pdelab/signatures.py b/python/dune/perftool/pdelab/signatures.py index e778b595..43ac5373 100644 --- a/python/dune/perftool/pdelab/signatures.py +++ b/python/dune/perftool/pdelab/signatures.py @@ -1,7 +1,6 @@ """ Signatures for PDELab local opreator assembly functions """ from dune.perftool import Restriction -from dune.perftool.generation import symbol from dune.perftool.pdelab.geometry import (name_geometry_wrapper, type_geometry_wrapper, ) @@ -17,7 +16,6 @@ from dune.perftool.pdelab.argument import (name_accumulation_variable, ) -@symbol def alpha_volume_signature(): geot = type_geometry_wrapper() geo = name_geometry_wrapper() @@ -49,7 +47,6 @@ def alpha_volume_signature(): ] -@symbol def alpha_boundary_signature(): geot = type_geometry_wrapper() geo = name_geometry_wrapper() @@ -81,7 +78,6 @@ def alpha_boundary_signature(): ] -@symbol def alpha_skeleton_signature(): geot = type_geometry_wrapper() geo = name_geometry_wrapper() @@ -125,7 +121,6 @@ def alpha_skeleton_signature(): ] -@symbol def jacobian_volume_signature(): geot = type_geometry_wrapper() geo = name_geometry_wrapper() @@ -157,7 +152,6 @@ def jacobian_volume_signature(): ] -@symbol def jacobian_boundary_signature(): geot = type_geometry_wrapper() geo = name_geometry_wrapper() @@ -189,7 +183,6 @@ def jacobian_boundary_signature(): ] -@symbol def jacobian_skeleton_signature(): geot = type_geometry_wrapper() geo = name_geometry_wrapper() @@ -239,7 +232,6 @@ def jacobian_skeleton_signature(): ] -@symbol def jacobian_apply_volume_signature(): geot = type_geometry_wrapper() geo = name_geometry_wrapper() @@ -271,7 +263,6 @@ def jacobian_apply_volume_signature(): ] -@symbol def jacobian_apply_boundary_signature(): geot = type_geometry_wrapper() geo = name_geometry_wrapper() @@ -303,7 +294,6 @@ def jacobian_apply_boundary_signature(): ] -@symbol def jacobian_apply_skeleton_signature(): geot = type_geometry_wrapper() geo = name_geometry_wrapper() -- GitLab