• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Numeryczne rozwiązanie równania modowego światłowodu planarnego (Matlab)

0 głosów
312 wizyt
pytanie zadane 29 kwietnia 2021 w Inne języki przez urbanski-paw Nowicjusz (140 p.)
zamknięte 3 maja 2021 przez urbanski-paw

Witam
Potrzebuję rozwiązać numerycznie równanie modowe światłowodu planarnego. Problem polega na tym że konieczne jest wyznaczenie miejsca zerowego równania modowego, za pomocą gotowej funkcji tego nie można wyznaczyć, a numerycznie również jest problem, bo konieczne jest sprawdzanie warunków przejścia przez zero dla liczb zespolonych. Nie wiem za bardzo jak to zrobić, nie jest to sytuacja jak przy normalnym wyznaczaniu miejsc zerowych numerycznie, więc znane mi algorytmy nie zadziałają. Ma może ktoś na to jakiś pomysł? Tutaj w tym równaniu muszę wyznaczyć teta przy jakiejś zadanej wartości t, reszta to wartości stałe, dla danego światłowodu. Więc będę tylko zmieniał t i potrzebne mi jest wyznaczenie teta. Ja to próbowałem zrobić w ten sposób:

nf=2
ns=1.5
nc=1
k0=1
m=1
teta
i=0

for t=1:5
    while i<1 
        if (imag(2*k0*nf*(t)*cos(teta)-(2*k0*nf*(t)*cos(teta))-(2*(atan((sqrt((nf^2)*((sin(teta))^2)-(ns^2)))/(nf*cos(teta)))))-(2*(atan((sqrt((nf^2)*((sin(teta))^2)-(nc^2)))/(nf*cos(teta)))))-(2*pi*m))<=0)
            teta=teta+1
        else
            if (real(2*k0*nf*(t)*cos(teta)-(2*k0*nf*(t)*cos(teta))-(2*(atan((sqrt((nf^2)*((sin(teta))^2)-(ns^2)))/(nf*cos(teta)))))-(2*(atan((sqrt((nf^2)*((sin(teta))^2)-(nc^2)))/(nf*cos(teta)))))-(2*pi*m))<=0)
                teta=teta+1
        else
            i=i+1; 
            end
        end
    end
teta    
end


Sprawdzam tutaj czy przy zmianie teta wartość równania zmieni znak. Wiem że tutaj to nie jest zabezpieczone żeby mi sprawdzało i w jedna i w drugą stronę, jednak wiem jak to powinno się zmieniać, więc te warunki powinny być dobrze. Jednak pomimo to liczy mi się to bez końca
Numeryczne rozwiązanie równania modowego światłowodu planarnego (Matlab).
Z góry serdecznie dziękuję.

komentarz zamknięcia: problem rozwiazany

Podobne pytania

0 głosów
0 odpowiedzi 341 wizyt
0 głosów
0 odpowiedzi 340 wizyt
pytanie zadane 28 marca 2021 w Inne języki przez Student.2020 Nowicjusz (140 p.)
0 głosów
0 odpowiedzi 344 wizyt
pytanie zadane 18 stycznia 2021 w Inne języki przez EpiJack Nowicjusz (120 p.)

93,743 zapytań

142,683 odpowiedzi

323,299 komentarzy

63,330 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...