Defining non-constant Neumann Boundary Conditon
7 ビュー (過去 30 日間)
古いコメントを表示
I am a little unsure if I am using the correct syntax for defining my non-constant neumann boundary condition for a time-dependent PDE.
specifyCoefficients(model,'Face',2,'m',0,'d',1,'c',Da,'a',0,'f',0);
specifyCoefficients(model,'Face',3,'m',0,'d',1,'c',Dg,'a',0,'f',0);
applyBoundaryCondition(model,'neumann','Edge',8,'q',0,'g',@gcoeff2);
function f = gcoeff2(~,state)
rhog = 1250;
rhoa = 1.150;
Da = 2.82*10^-4;
f = (Da.*rhoa./rhog).*(state.ux+state.uy);
end
Esentially I have two areas occupied by different substances, which share a common edge, Edge 8. I want to apply the equal flux boundary condition at edge 8 such that
Is the code for my function correct? Is it necessary for me to add in locations even though the gradient is defined by "state.ux" and "state.uy"? Also, since it is a time dependent PDE do I need to multiply everything by state.time?
0 件のコメント
回答 (1 件)
Ravi Kumar
2020 年 1 月 22 日
You do not need to model the interface BC explicitly. This condition should be automatically satisfied in the solution.
Regards,
Ravi
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!