function pdemodel
pdeinit;
pde_fig=gcf;
ax=gca;
pdetool('appl_cb',1);
set(ax,'AspectRatio',[1.5 1]);
set(ax,'XLimMode','auto');
set(ax,'YLimMode','auto');
set(ax,'XTick',[ -1.5,...
 -1,...
 -0.5,...
 0,...
 0.5,...
 1,...
 1.5,...
]);
set(ax,'YTick',[ -1,...
 -0.75,...
 -0.5,...
 -0.25,...
 0,...
 0.25,...
 0.5,...
 0.75,...
 1,...
]);

% Geometry description:
pdepoly([ -1,...
 1,...
 1,...
 0.5,...
 0.5,...
 -0.5,...
 -0.5,...
 -1,...
],...
[ 0,...
 0,...
 1,...
 1,...
 0.5,...
 0.5,...
 1,...
 1,...
],...
 'P1');
set(findobj(get(pde_fig,'Children'),'Tag','PDEEval'),'String','P1')

% Boundary conditions:
pdetool('changemode',0)
pdesetbd(8,...
'neu',...
1,...
'0',...
'0')
pdesetbd(7,...
'neu',...
1,...
'0',...
'0')
pdesetbd(6,...
'neu',...
1,...
'0',...
'0')
pdesetbd(5,...
'neu',...
1,...
'0',...
'0')
pdesetbd(4,...
'neu',...
1,...
'0',...
'0')
pdesetbd(3,...
'neu',...
1,...
'0',...
'0')
pdesetbd(2,...
'neu',...
1,...
'0',...
'0')
pdesetbd(1,...
'neu',...
1,...
'0',...
'0')

% Mesh generation:
setuprop(pde_fig,'trisize',1);
setuprop(pde_fig,'Hgrad',1.5);
setuprop(pde_fig,'refinemethod','regular');
pdetool('initmesh')

% PDE coefficients:
pdeseteq(4,...
'1.0',...
'0.0',...
'10.0',...
'1.0',...
'0:10',...
'0.0',...
'0.0',...
'[0 100]')
setuprop(pde_fig,'currparam',...
['1.0 ';...
'0.0 ';...
'10.0';...
'1.0 '])

% Solve parameters:
setuprop(pde_fig,'solveparam',...
str2mat('0','1000','10','pdeadworst',...
'0.5','longest','0','1E-4','','fixed','Inf'))

% Plotflags and user data strings:
setuprop(pde_fig,'plotflags',[1 1 1 1 1 1 1 1 0 0 0 1 0 0 1 0 0 1]);
setuprop(pde_fig,'colstring','');
setuprop(pde_fig,'arrowstring','');
setuprop(pde_fig,'deformstring','');
setuprop(pde_fig,'heightstring','');
