diff --git a/.gitignore b/.gitignore index 284e9fe8..0c6a51db 100644 --- a/.gitignore +++ b/.gitignore @@ -18,5 +18,3 @@ test/* !test/issues/data_3960/VisIt_volume *.egg-info *.py# -mfem/common/bilininteg_ext.i -mfem/common/lininteg_ext.i \ No newline at end of file diff --git a/mfem/common/bilininteg_ext.i b/mfem/common/bilininteg_ext.i new file mode 100644 index 00000000..99821135 --- /dev/null +++ b/mfem/common/bilininteg_ext.i @@ -0,0 +1,309 @@ +namespace mfem { +%pythonappend BilinearFormIntegrator::BilinearFormIntegrator %{ + self._coeff = args +%} + +%pythonappend TransposeIntegrator::TransposeIntegrator %{ + if own_bfi_ == 1: bfi_.thisown = 0 +%} + +%pythonappend LumpedIntegrator::LumpedIntegrator %{ + if own_bfi_ == 1: bfi_.thisown = 0 +%} + +%pythonappend InverseIntegrator::InverseIntegrator %{ + if own_integ == 1: integ.thisown = 0 +%} + +%pythonappend SumIntegrator::SumIntegrator %{ + self.own_integs = own_integs +%} + +%pythonappend MixedScalarIntegrator::MixedScalarIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedVectorIntegrator::MixedVectorIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedScalarVectorIntegrator::MixedScalarVectorIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedScalarMassIntegrator::MixedScalarMassIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedVectorProductIntegrator::MixedVectorProductIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedScalarDerivativeIntegrator::MixedScalarDerivativeIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedScalarWeakDerivativeIntegrator::MixedScalarWeakDerivativeIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedScalarDivergenceIntegrator::MixedScalarDivergenceIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedVectorDivergenceIntegrator::MixedVectorDivergenceIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedScalarWeakGradientIntegrator::MixedScalarWeakGradientIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedScalarCurlIntegrator::MixedScalarCurlIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedScalarWeakCurlIntegrator::MixedScalarWeakCurlIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedVectorMassIntegrator::MixedVectorMassIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedCrossProductIntegrator::MixedCrossProductIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedDotProductIntegrator::MixedDotProductIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedWeakGradDotIntegrator::MixedWeakGradDotIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedWeakDivCrossIntegrator::MixedWeakDivCrossIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedGradGradIntegrator::MixedGradGradIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedCrossGradGradIntegrator::MixedCrossGradGradIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedCurlCurlIntegrator::MixedCurlCurlIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedCrossCurlCurlIntegrator::MixedCrossCurlCurlIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedCrossCurlGradIntegrator::MixedCrossCurlGradIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedCrossGradCurlIntegrator::MixedCrossGradCurlIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedWeakCurlCrossIntegrator::MixedWeakCurlCrossIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedScalarWeakCurlCrossIntegrator::MixedScalarWeakCurlCrossIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedCrossGradIntegrator::MixedCrossGradIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedCrossCurlIntegrator::MixedCrossCurlIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedScalarCrossCurlIntegrator::MixedScalarCrossCurlIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedScalarCrossGradIntegrator::MixedScalarCrossGradIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedScalarCrossProductIntegrator::MixedScalarCrossProductIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedScalarWeakCrossProductIntegrator::MixedScalarWeakCrossProductIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedDirectionalDerivativeIntegrator::MixedDirectionalDerivativeIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedGradDivIntegrator::MixedGradDivIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedDivGradIntegrator::MixedDivGradIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedScalarWeakDivergenceIntegrator::MixedScalarWeakDivergenceIntegrator %{ + self._coeff = vq +%} + +%pythonappend MixedVectorGradientIntegrator::MixedVectorGradientIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedVectorCurlIntegrator::MixedVectorCurlIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedVectorWeakCurlIntegrator::MixedVectorWeakCurlIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedVectorWeakDivergenceIntegrator::MixedVectorWeakDivergenceIntegrator %{ + self._coeff = args +%} + +%pythonappend GradientIntegrator::GradientIntegrator %{ + self._coeff = args +%} + +%pythonappend DiffusionIntegrator::DiffusionIntegrator %{ + self._coeff = args +%} + +%pythonappend MassIntegrator::MassIntegrator %{ + self._coeff = args +%} + +%pythonappend BoundaryMassIntegrator::BoundaryMassIntegrator %{ + self._coeff = q +%} + +%pythonappend ConvectionIntegrator::ConvectionIntegrator %{ + self._coeff = q +%} + +%pythonappend ConservativeConvectionIntegrator::ConservativeConvectionIntegrator %{ + self._coeff = q +%} + +%pythonappend GroupConvectionIntegrator::GroupConvectionIntegrator %{ + self._coeff = q +%} + +%pythonappend VectorMassIntegrator::VectorMassIntegrator %{ + self._coeff = args +%} + +%pythonappend VectorFEDivergenceIntegrator::VectorFEDivergenceIntegrator %{ + self._coeff = args +%} + +%pythonappend VectorFEWeakDivergenceIntegrator::VectorFEWeakDivergenceIntegrator %{ + self._coeff = args +%} + +%pythonappend VectorFECurlIntegrator::VectorFECurlIntegrator %{ + self._coeff = args +%} + +%pythonappend DerivativeIntegrator::DerivativeIntegrator %{ + self._coeff = q +%} + +%pythonappend CurlCurlIntegrator::CurlCurlIntegrator %{ + self._coeff = args +%} + +%pythonappend VectorCurlCurlIntegrator::VectorCurlCurlIntegrator %{ + self._coeff = args +%} + +%pythonappend MixedCurlIntegrator::MixedCurlIntegrator %{ + self._coeff = args +%} + +%pythonappend VectorFEMassIntegrator::VectorFEMassIntegrator %{ + self._coeff = args +%} + +%pythonappend VectorDivergenceIntegrator::VectorDivergenceIntegrator %{ + self._coeff = args +%} + +%pythonappend DivDivIntegrator::DivDivIntegrator %{ + self._coeff = args +%} + +%pythonappend VectorDiffusionIntegrator::VectorDiffusionIntegrator %{ + self._coeff = args +%} + +%pythonappend ElasticityIntegrator::ElasticityIntegrator %{ + self._coeff = args +%} + +%pythonappend ElasticityComponentIntegrator::ElasticityComponentIntegrator %{ + self._coeff = parent_ +%} + +%pythonappend DGTraceIntegrator::DGTraceIntegrator %{ + self._coeff = args +%} + +%pythonappend NonconservativeDGTraceIntegrator::NonconservativeDGTraceIntegrator %{ + self._coeff = args +%} + +%pythonappend DGDiffusionIntegrator::DGDiffusionIntegrator %{ + self._coeff = args +%} + +%pythonappend DGDiffusionBR2Integrator::DGDiffusionBR2Integrator %{ + self._coeff = args +%} + +%pythonappend DGElasticityIntegrator::DGElasticityIntegrator %{ + self._coeff = args +%} + +%pythonappend ScalarProductInterpolator::ScalarProductInterpolator %{ + self._coeff = sc +%} + +%pythonappend ScalarVectorProductInterpolator::ScalarVectorProductInterpolator %{ + self._coeff = sc +%} + +%pythonappend VectorScalarProductInterpolator::VectorScalarProductInterpolator %{ + self._coeff = vc +%} + +%pythonappend ScalarCrossProductInterpolator::ScalarCrossProductInterpolator %{ + self._coeff = vc +%} + +%pythonappend VectorCrossProductInterpolator::VectorCrossProductInterpolator %{ + self._coeff = vc +%} + +%pythonappend VectorInnerProductInterpolator::VectorInnerProductInterpolator %{ + self._coeff = vc +%} + +%pythonappend SumIntegrator::AddIntegrator %{ + if self.own_integs == 1: integ.thisown = 0 +%} +} diff --git a/mfem/common/lininteg_ext.i b/mfem/common/lininteg_ext.i new file mode 100644 index 00000000..4c3643fc --- /dev/null +++ b/mfem/common/lininteg_ext.i @@ -0,0 +1,68 @@ +namespace mfem { +%pythonappend LinearFormIntegrator::LinearFormIntegrator %{ + self._coeff = args +%} +%pythonappend DeltaLFIntegrator::DeltaLFIntegrator %{ + self._coeff = args +%} +%pythonappend DomainLFIntegrator::DomainLFIntegrator %{ + self._coeff = args +%} +%pythonappend DomainLFGradIntegrator::DomainLFGradIntegrator %{ + self._coeff = QF +%} +%pythonappend BoundaryLFIntegrator::BoundaryLFIntegrator %{ + self._coeff = QG +%} +%pythonappend BoundaryNormalLFIntegrator::BoundaryNormalLFIntegrator %{ + self._coeff = QG +%} +%pythonappend BoundaryTangentialLFIntegrator::BoundaryTangentialLFIntegrator %{ + self._coeff = QG +%} +%pythonappend VectorDomainLFIntegrator::VectorDomainLFIntegrator %{ + self._coeff = QF +%} +%pythonappend VectorDomainLFGradIntegrator::VectorDomainLFGradIntegrator %{ + self._coeff = QF +%} +%pythonappend VectorBoundaryLFIntegrator::VectorBoundaryLFIntegrator %{ + self._coeff = QG +%} +%pythonappend VectorFEDomainLFIntegrator::VectorFEDomainLFIntegrator %{ + self._coeff = F +%} +%pythonappend VectorFEDomainLFCurlIntegrator::VectorFEDomainLFCurlIntegrator %{ + self._coeff = F +%} +%pythonappend VectorFEDomainLFDivIntegrator::VectorFEDomainLFDivIntegrator %{ + self._coeff = QF +%} +%pythonappend VectorBoundaryFluxLFIntegrator::VectorBoundaryFluxLFIntegrator %{ + self._coeff = (f, ir) +%} +%pythonappend VectorFEBoundaryFluxLFIntegrator::VectorFEBoundaryFluxLFIntegrator %{ + self._coeff = args +%} +%pythonappend VectorFEBoundaryTangentLFIntegrator::VectorFEBoundaryTangentLFIntegrator %{ + self._coeff = QG +%} +%pythonappend BoundaryFlowIntegrator::BoundaryFlowIntegrator %{ + self._coeff = args +%} +%pythonappend DGDirichletLFIntegrator::DGDirichletLFIntegrator %{ + self._coeff = args +%} +%pythonappend DGElasticityDirichletLFIntegrator::DGElasticityDirichletLFIntegrator %{ + self._coeff = uD_ +%} +%pythonappend WhiteGaussianNoiseDomainLFIntegrator::WhiteGaussianNoiseDomainLFIntegrator %{ + self._coeff = QG +%} +%pythonappend VectorQuadratureLFIntegrator::VectorQuadratureLFIntegrator %{ + self._coeff = (vqfc, ir) +%} +%pythonappend QuadratureLFIntegrator::QuadratureLFIntegrator %{ + self._coeff = (qfc, ir) +%} +} \ No newline at end of file