Hi,
I would like to know the reasoning behind the rotation tensor.
My problem is the following: I have a domain with holes, and gmsh creates
some sharp triangles between holes. I don't really want to refine to avoid
many unkowns.
Using a normal
self.eq = TransientTerm() == DiffusionTerm(coeff = self.diffusiont
leads to large unstability (solution blows up, oscillation between cells
appears). This is due to the rotationtensor.
If I change the current value:
rotationTensor[:, 0] = self._getNormals(mesh)
into
rotationTensor[:, 0] = mesh._getFaceNormals()
all problems go away and I obtain a physical solution.
I see now that DiffusionTermNoCorrection has this above change, but no
documentation. Is it possible to point to some references on how to handle
this, or some documentation about the use-case?
I see a pointer here:
http://www.ctcms.nist.gov/fipy/documentation/numerical/discret.html about
this problem, but not about how fipy handles it.
I see there a reference to
http://www.ctcms.nist.gov/fipy/documentation/refs.bib_cited.html#croftphd,
but don't find access to that from my university.
Greetings,
Benny