[WikiDyd] [TitleIndex] [WordIndex

Laboratorium Metod Numerycznych II
Zakład Elektrotechniki Teoretycznej i Informatyki Stosowanej
Instytut Elektrotechniki Teoretycznej i Systemów Informacyjno Pomiarowych, PW

Ćwiczenie Nr 1

PODSTAWY METODY ELEMENTÓW SKOŃCZONYCH (MES)

Autor: Robert Szmurło

Cel ćwiczenia

Demonstracja podstawowych założeń dotyczących metody elementów skończonych na prostym przykładzie. Zapoznanie się z pełną procedurą symulacji wykorzystującą teorię MES.

Literatura

  1. T. Guziak, A. Kamińska, B. Pańczyk, J. Sikora, “Metody Numeryczne w Elektrotechnice”, Rozdział 10: Rozwiązywanie równań różniczkowych cząstkowych
  2. S. Bolkowski, i inni, “Komputerowe metody analizy pola elektromagnetycznego”, Rozdział 4: Metoda elementów skończonych (MES)

Wstęp teoretyczny

Podstawy teoretyczne zostały przedstawione w prezentacji pod adresem: http://www.iem.pw.edu.pl/~szmurlor/mes.pdf

  1. Wprowadzenie do MES jako metody numerycznej rozwiązującej pewne zagadnienie brzegowe.
  2. Z czego składa się zagadnienie brzegowe:
    1. Kształt obszaru, który analizujemy (w dalszej części ulegnie dyskretyzacji),
    2. Równanie, które opisuje wielkośc fizyczną (funkcję) nad obszarem,
    3. Warunki brzegowe, które pozwalają znaleźć rozwiązanie jednoznacznie.
  3. Procedura rozwiązywania zagadnienia przy wykorzystaniu MES:
    1. Dyskretyzacja obszaru (podział na elementy).
    2. Sformułowanie układu równań.
      1. Wyznaczenie macierzy elementów He.
      2. Konsolidacja poszczególnych macierzy elementu He w system globalny H.
    3. Wprowadzenie warunków brzegowych.
    4. Rozwiąznie układu równań H*u=b => u = inv(H)*b.

  4. Aproksymacja wartości funkcji w elemencie.
  5. Funkcjonał J.
  6. Rozwiązanie występuje dla minimum funkcjonału => pochodna funkcjonału: dJ/du

  7. Całkowanie w elemencie.
  8. Calkowanie po całym obszarze => formowanie układu równań.

  9. Wprowadzenie warunków brzegowych.

Zakres ćwiczenia

Zadanie 1. Wykorzystanie PDE Toolbox do modelowania kondesatora płaskiego z dwoma współczynnikami materiałowymi. Obserwacja linii ekwipotencjalnych, wektorów. Celem zadania jest zaponznanie się z podstawami zagadnienia brzegowego. Elementem zaliczającym zadanie jest prezentacja mapy potencjału, linii ekwipotencjalnych oraz wektorów pola stanowiących gradient pola skalarnego dla dwóch kombinacji współczynników materiałowych: k1=1, k2=20 oraz k1=20, k2=1. (1 punkt)

Zadanie 2. Zbudować funkcję w matlabie generującą sieć elementów skończonych na powierzchni prostokąta o sparametryzowanych wymiarach a,b oraz zadanej gęstości d. Zaprezentować graficznie utworzoną sieć. (1 punkt)

[N, E] = prostokat(a,b,nx,ny);

Podpowiedź: Wykorzystać funkcje: delaunay, trimesh

Zadanie 3. Wykorzystując funkcję tworzącą macierz elementu zbudować macierz więzów dla utworzonego obszaru. Wartość funkcji f przyjąć równą 0. Współczynnik materiałowy k=1. (0,5 punktu)

[A,b] = elem(N,E);

Źródło: elem.m
(Wersja z poprawionym błędem polegającym na tym, że nazwa argumentu określającego wartość współczynnika materiałowego k była taka sama jak wartość iteratora po węzłach elementu k. Teraz współczynnik materiałowy nazywa się: km.)

Podpowiedź: size, for, [He, Hb, s, a, b, c] = elem (Ne,X,Y,k,f)

Zadanie 4. Wprowadzić warunki brzegowe na dwóch przeciwległych brzegach o wartościach -4 oraz 4. Warunki wprowadzić do macierzy A oraz wektora prawych stron b zerując wiersz macierzy odpowiadający danemu węzłowi oraz wstawiając 1 na diagonali, a wartość warunku brzegowego (w naszym przypadku 4 lub -4) w odpowiednim wierszu wektora prawych stron b. (0,5 punktu)

Zadanie 5. Rozwiązać układ równań oraz zaprezentować graficznie wartości wektora x wykorzystując funkcję trisurf. (1 punkt) u = inv(A)*b

Zadanie 6. Wartości wektora u stanowią rozkład funkcji skalarnej. Jeżeli obliczymy gradient funkcji skalarnej w każdym elemencie wyznaczymy wartości wektorów natężenia pola, które wskazują kierunki największego spadku funkcji skalarnej. Proszę narysować rozkład wektorów gradientów nad zadanym obszarem. (1 punkt)

Podpowiedź: Zastosować poniższą procedurę:

  1. Wykonać pętlę po wszystkich elementach obszaru.
  2. Dla każdego elementu wyznaczyć jego środek ciężkości.
  3. Obliczyć współczynniki

    /usr/local/bin/latex['--interaction=nonstopmode', 'latex_fa6a592dc614c08960ad82026ed5e19b08355249_p.tex']/tmp/tmpHqQy22latex error! exitcode was 3 (signal 0), transscript follows:
    
    [Wed Dec 11 15:53:10 2013] [error] failed to exec() /usr/local/bin/latex
    
    i
    /usr/local/bin/latex['--interaction=nonstopmode', 'latex_2ec9393ee3a5e21aec2bd35a31be44ae164f4664_p.tex']/tmp/tmp5TlMIslatex error! exitcode was 3 (signal 0), transscript follows:
    
    [Wed Dec 11 15:53:10 2013] [error] failed to exec() /usr/local/bin/latex
    
    funkcji kształtu dla poszczególnych elementów danego elementu (funkcja kształtu
    /usr/local/bin/latex['--interaction=nonstopmode', 'latex_c38bb33dd936ac7114ba2517577c8d89b0be9e9b_p.tex']/tmp/tmpiK8Rgvlatex error! exitcode was 3 (signal 0), transscript follows:
    
    [Wed Dec 11 15:53:10 2013] [error] failed to exec() /usr/local/bin/latex
    
    ).
  4. Korzystając z wzoru na aproksymację wartości funkcji wewnątrz elementu:

    /usr/local/bin/latex['--interaction=nonstopmode', 'latex_3749ac619a3b06e3c7f9077077f152cf8e76211b_p.tex']/tmp/tmpRARdG2latex error! exitcode was 3 (signal 0), transscript follows:
    
    [Wed Dec 11 15:53:10 2013] [error] failed to exec() /usr/local/bin/latex
    
    , wyznaczyć wartości składowych gradientu wykorzystując pochodną funkcji kształtu
    /usr/local/bin/latex['--interaction=nonstopmode', 'latex_1b475126d4bef1f9763fc9fa16c98b622b88b3e0_p.tex']/tmp/tmp7G8_umlatex error! exitcode was 3 (signal 0), transscript follows:
    
    [Wed Dec 11 15:53:10 2013] [error] failed to exec() /usr/local/bin/latex
    
    oraz
    /usr/local/bin/latex['--interaction=nonstopmode', 'latex_b11c98feb986d16e0c6a04cb70e99c6505d7c91a_p.tex']/tmp/tmpl0E60Glatex error! exitcode was 3 (signal 0), transscript follows:
    
    [Wed Dec 11 15:53:10 2013] [error] failed to exec() /usr/local/bin/latex
    
    dla odpowiednich indeksów i,j,k
  5. Obliczyć wartość gradientu w elemencie wykorzystując wartości w węzłach ui,uj,uk oraz współczynniki, bi,bj,bk,ci,cj,ck.
  6. Narysować rozkład wektorów za pomocą funkcji quiver.


2015-09-23 06:44