From 7c76d935fdecd275de1d7f00a062ab52b7647003 Mon Sep 17 00:00:00 2001 From: Dominic Kempf <dominic.kempf@iwr.uni-heidelberg.de> Date: Wed, 15 May 2019 16:17:33 +0200 Subject: [PATCH] Use a different template parameter for the linearization point --- python/dune/codegen/pdelab/argument.py | 4 ++++ python/dune/codegen/pdelab/signatures.py | 10 +++++++--- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/python/dune/codegen/pdelab/argument.py b/python/dune/codegen/pdelab/argument.py index 5124c776..dc1acd66 100644 --- a/python/dune/codegen/pdelab/argument.py +++ b/python/dune/codegen/pdelab/argument.py @@ -117,6 +117,10 @@ def type_coefficientcontainer(): return "X" +def type_linearizationpointcontainer(): + return "Z" + + def name_jacobian(restriction1, restriction2): # Restrictions may only differ if NONE if (restriction1 == Restriction.NONE) or (restriction2 == Restriction.NONE): diff --git a/python/dune/codegen/pdelab/signatures.py b/python/dune/codegen/pdelab/signatures.py index 09b832ac..34acea22 100644 --- a/python/dune/codegen/pdelab/signatures.py +++ b/python/dune/codegen/pdelab/signatures.py @@ -9,6 +9,7 @@ from dune.codegen.pdelab.argument import (name_accumulation_variable, name_coefficientcontainer, type_coefficientcontainer, name_applycontainer, + type_linearizationpointcontainer, ) from dune.codegen.pdelab.spaces import (name_testfunctionspace, type_testfunctionspace, @@ -293,8 +294,9 @@ def nonlinear_jacobian_apply_volume_templates(): lfsut = type_trialfunctionspace() lfsvt = type_testfunctionspace() cct = type_coefficientcontainer() + lpt = type_linearizationpointcontainer() avt = type_accumulation_variable() - return (geot, lfsut, cct, cct, lfsvt, avt) + return (geot, lfsut, cct, lpt, lfsvt, avt) def nonlinear_jacobian_apply_volume_args(): @@ -312,8 +314,9 @@ def nonlinear_jacobian_apply_boundary_templates(): lfsut = type_trialfunctionspace() lfsvt = type_testfunctionspace() cct = type_coefficientcontainer() + lpt = type_linearizationpointcontainer() avt = type_accumulation_variable() - return (geot, lfsut, cct, cct, lfsvt, avt) + return (geot, lfsut, cct, lpt, lfsvt, avt) def nonlinear_jacobian_apply_boundary_args(): @@ -331,8 +334,9 @@ def nonlinear_jacobian_apply_skeleton_templates(): lfsut = type_trialfunctionspace() lfsvt = type_testfunctionspace() cct = type_coefficientcontainer() + lpt = type_linearizationpointcontainer() avt = type_accumulation_variable() - return (geot, lfsut, cct, cct, lfsvt, lfsut, cct, cct, lfsvt, avt, avt) + return (geot, lfsut, cct, lpt, lfsvt, lfsut, cct, lpt, lfsvt, avt, avt) def nonlinear_jacobian_apply_skeleton_args(): -- GitLab