Defining non-constant Neumann Boundary Conditon

7 ビュー (過去 30 日間)
Andrew Ferguson
Andrew Ferguson 2020 年 1 月 21 日
回答済み: Ravi Kumar 2020 年 1 月 22 日
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?

回答 (1 件)

Ravi Kumar
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

製品


リリース

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by