poisolv : "Must only use Dirichlet boundary conditions." Why ?
3 次查看(过去 30 天)
显示 更早的评论
I'm trying to use poisolv on a rectangular domain. I orignally wanted to apply non constant boundary conditions (with no luck...) using a pdebound function but even if I just put :
applyBoundaryCondition(pdem,'Edge',1:4,'g',0) ;
I get the error on the title that says that I can only use Dirichlet boundary conditions, can somebody explain why and a possible workaround to that ? Thank you.
0 个评论
采纳的回答
Walter Roberson
2015-8-2
.... because that is what the function is designed to do?
u = poisolv(b,p,e,t,f) solves Poisson's equation with Dirichlet boundary conditions on a regular rectangular grid. A combination of sine transforms and tridiagonal solutions is used for increased performance.
The boundary conditions b must specify Dirichlet conditions for all boundary points."
In other words, in the special case where your boundary has Dirichlet boundary conditions, there is a formulation that can solve Poisson's equations faster, and this is a routine for that special case.
Workaround: use assempde if necessary.
0 个评论
更多回答(1 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!