how to solve diffusion equation using pde toolbox
Mostrar comentarios más antiguos
I have ficks diffusion equation need to solved in pde toolbox and the result of which used in another differential equation to find the resultant parameter can any help on this! Thanks for the attention
Respuestas (1)
Ravi Kumar
el 14 de Feb. de 2018
You can solve diffusion equation in PDE Toolbox. Check this example:
% Create a model.
model = createpde(1);
% Create geometry and assign it to the model
R1 = [3;4;-1;1;1;-1;-1;-1;1;1];
C1 = [1;0;0;0.4];
C1 = [C1;zeros(length(R1) - length(C1),1)];
gd = [R1,C1];
sf = 'R1+C1';
ns = char('R1','C1')';
g = decsg(gd,sf,ns);
geometryFromEdges(model,g);
figure
pdegplot(model,'EdgeLabels','on','FaceLabels','on')
% Specify coefficients, diffusion coefficient as c and source as f
% Assign zero source and a diffusion coefficient, c = 1
specifyCoefficients(model,'Face',1,'m',0,'d',1,'c',1,'a',0,'f',0);
% Assign non-zero source and a different diffusion coefficient c = 2 on inner
% circle
specifyCoefficients(model,'Face',2,'m',0,'d',1,'c',2,'a',0,'f',1);
% Set initial condition
setInitialConditions(model,0);
setInitialConditions(model,1,'Face',2);
% Generate mesh and solve.
generateMesh(model)
tlist = linspace(0,0.1,20);
result = solvepde(model,tlist)
% Plot results of last time-step.
figure
pdeplot(model,'XYData',result.NodalSolution(:,end))

3 comentarios
SUDALAI MANIKANDAN
el 14 de Feb. de 2018
Ravi Kumar
el 14 de Feb. de 2018
Can you post a picture of 3-D geometry you have? How many sub-domains does it have?
SUDALAI MANIKANDAN
el 16 de Feb. de 2018
Categorías
Más información sobre General PDEs en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!