evaluateCGradient Does not work when there is response-dependent c coefficient

1 view (last 30 days)
Dear All,
I have a problem in getting the flux for a simple case, where I have the "c" coefficient as a function of response "u". My Matlab code is as shown below.
Any Help appreciated.
Thanks
Length = 235; Height = 33;
D0 = 0.736; w0 = 0.00; wmax = 0.27; nw = 6;
model = createpde(1);
gd = [3 4 0 Height Height 0 0 0 Length Length]';
g = decsg(gd, 'R', 'R');
geometryFromEdges(model, g);
D = @(~, state) D0*exp(nw*(state.u - w0)/wmax); specifyCoefficients(model,'m', 0, 'd', 1, 'c', D, 'a', 0, 'f', 0);
applyBoundaryCondition(model, 'dirichlet', 'edge', 1, 'u', wmax);
setInitialConditions(model, w0);
generateMesh(model);
tlist = 0:5:300; results = solvepde(model, tlist);
evaluateCGradient(results, [0, Height], [0, 0], [1, 2])

Answers (0)

Community Treasure Hunt

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

Start Hunting!