how to solve diffusion equation using pde toolbox

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

Answers (1)

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 Comments

Thanks Ravi I have my model as 3D geometry which was imported from STL file how could i specify the regions of my model
Can you post a picture of 3-D geometry you have? How many sub-domains does it have?
It is a rectangular geometry with the following specifications i would like to know how to specify the boundary conditions
Nodes: [3×19797 double] Elements: [10×13170 double] MaxElementSize: 0.8718 MinElementSize: 0.4359 MeshGradation: 1.5000 GeometricOrder: 'quadratic'

Sign in to comment.

Asked:

on 13 Feb 2018

Community Treasure Hunt

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

Start Hunting!