Advertisement
starm100

pde

Dec 4th, 2020
706
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 0.95 KB | None | 0 0
  1. model = createpde();
  2. %Геометрия задачи
  3. polygon = polyshape([0 0 1 1],[1 0 0 1]);
  4. pol = triangulation(polygon);
  5. nodes = pol.Points';
  6. elements = pol.ConnectivityList';
  7. geometryFromMesh(model,nodes,elements);
  8. %Строим сетку, Hmax - макс. размер элемента
  9. generateMesh(model,'Hmax', 0.025);
  10. figure
  11. pdemesh(model)
  12. %Задаем граничные условия
  13. applyBoundaryCondition(model,"dirichlet","Edge",[1 2 3 4], 'u', 0);
  14. %Задаем коэффициенты уравнения
  15. specifyCoefficients(model, 'm', 0, 'd', 0, 'c', 1, 'a', 0, 'f', 1);
  16. %Решаем уравнение
  17. result = solvepde(model);
  18. %Визуализация решения
  19. u = result.NodalSolution;
  20. pdeplot(model,'XYData',u,'ZData',u,'Mesh','on')
  21. xlabel('x')
  22. ylabel('y')
  23. zlabel('w')
  24. %В виде градиентов
  25. wx = result.XGradients;
  26. wy = result.YGradients;
  27. pdeplot(model, 'FlowData',[wx wy])
  28. xlabel('x')
  29. ylabel('y')
  30.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement