- Thank you received: 0
Use of Other raises exception
- pumpkinpieter
- Topic Author
- Offline
- New Member
Less
More
2 years 10 months ago #4167
by pumpkinpieter
Use of Other raises exception was created by pumpkinpieter
Hi there,
As part of a bilinear form, am hoping to compute an integral along a curve interior to the domain, and on this curve I want to integrate the product of a coefficient function (which has different values on both sides of the curve) and an expression involving proxy functions. Here's an example:
When I run this code, I get the exception
Any help getting it so that I can do this integral would be much appreciated.
Thanks,
Pieter
As part of a bilinear form, am hoping to compute an integral along a curve interior to the domain, and on this curve I want to integrate the product of a coefficient function (which has different values on both sides of the curve) and an expression involving proxy functions. Here's an example:
Code:
import ngsolve as ng
import netgen.geom2d as geom2d
# Double triangle
geo = geom2d.SplineGeometry()
ptlist = [(0,0), (1,0), (2,0), (1,1)]
pts = [geo.AppendPoint(*p) for p in ptlist]
geo.Append(['line', pts[0], pts[1]], bc='bt_l', leftdomain=1)
geo.Append(['line', pts[1], pts[2]], bc='bt_r', leftdomain=2)
geo.Append(['line', pts[2], pts[3]], bc='r_side', leftdomain=2)
geo.Append(['line', pts[3], pts[0]], bc='l_side', leftdomain=1)
geo.Append(['line', pts[3], pts[1]], bc='mid', leftdomain=2, rightdomain=1);
geo.SetMaterial(1, 'left_material')
geo.SetMaterial(2, 'right_material')
mesh = ng.Mesh(geo.GenerateMesh(maxh=1))
fes = ng.H1(mesh, order=1, dgjumps=True)
n = ng.specialcf.normal(mesh.dim)
K = ng.CoefficientFunction([1,2])
dr = ng.ds(definedon=mesh.Boundaries('l_side|mid|bt_l'), skeleton=1)
u,v = fes.TnT()
A0 = ng.BilinearForm(fes, check_unused=False)
A0 += v * (ng.grad(u)* K - ng.grad(u.Other()) * K.Other()) * n * dr
When I run this code, I get the exception
Code:
---------------------------------------------------------------------------
NgException Traceback (most recent call last)
<ipython-input-475-f418f38f1ba8> in <module>
----> 1 A0.Assemble(), A1.Assemble()
NgException: other mir not set, pls report to developersin Assemble BilinearForm 'biform_from_py'
Any help getting it so that I can do this integral would be much appreciated.
Thanks,
Pieter
Time to create page: 0.097 seconds