logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Excel - jak używać solvera z liczbami zespolonymi

snake_90 21 Gru 2015 15:44 2043 10
REKLAMA
  • #1 15259035
    snake_90
    Poziom 10  
    Posty: 22
    Ocena: 1
    Witam, mam funkcję jednej zmiennej, jednakże obliczenia są na liczbach zespolonych. O ile same obliczenia w excelu działają doskonale, o tyle jest problem jak użyć solvera. Solver nie chce działać z tymi liczbami. Wiem, że problemu takiego nie ma Matlab, jednakże nie mam dostępu do takiego programu.Cała sytuacja dotyczy optymalizacji, gdzie należy użyć min lub max. Podobno są metody na ominięcie w jakiś sposób tego zjawiska, jednakże nigdzie nie mogę znaleźć stosownej informacji.
  • REKLAMA
  • #2 15259291
    JRV
    Specjalista - VBA, Excel
    Posty: 2724
    Pomógł: 805
    Ocena: 455
    snake_90 napisał:
    obliczenia są na liczbach zespolonych
    Dawno temu to było(ok. 40 lat), ale coś mówi, że można utworzyć niestandardową funkcję(UDF)
  • REKLAMA
  • #3 15259917
    snake_90
    Poziom 10  
    Posty: 22
    Ocena: 1
    Nie twierdzę, że się nie da w ten sposób, ale samo UDF nic mi szerzej nie mówi. Potrzebowałbym nawet jak najprostszego przykładu, załóżmy suma dwóch liczb zespolonych i szukanie minimum zmieniając wartość jednej liczby (zmiennej). Mając tak prostą rzecz można się pokusić o rozwiązywanie trudniejszych problemów.
  • REKLAMA
  • #4 15259996
    JRV
    Specjalista - VBA, Excel
    Posty: 2724
    Pomógł: 805
    Ocena: 455
    Niestety juz nie pamiętam, jak są operacje z liczb zespolonych
    Napisz ten najprostszy przykład(najlepiej w arkuszu Excel)
    coś tam jako a+bi
    i w ogólne jak myślisz, że do zapisu liczby używać dwie, lub jednej komórki
    napisz tu funkcju
  • REKLAMA
  • #5 15260052
    snake_90
    Poziom 10  
    Posty: 22
    Ocena: 1
    Liczby zespolone z tego co wiem, można albo zdefiniować od razu w jednej komórce lub najpierw wpisać liczbowo część rzeczywistą a następnie urojoną i z tego utworzyć odpowiednią formułą liczbę zespoloną. Stworzyłem dwie liczby pierwsza posiada tylko część rzeczywistą druga zarówno rzeczywistą jak i urojoną. Następnie jest użyta formuła do sumowania tych liczb, co ważne normalne działanie =A1+A2 nie działa i trzeba korzystać z odpowiednich formuł dla liczb zespolonych. Cały przykład z sumowania takich liczb jest w załączniku (wersja excel 2010). Użycie solvera żeby zmienić wartość jednej liczby wyrzuca błąd.
    Załączniki:
    • Liczbzesp.rar (6.46 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #6 15260093
    JRV
    Specjalista - VBA, Excel
    Posty: 2724
    Pomógł: 805
    Ocena: 455
    No, to w godzinach porannych, na nową głowę
  • Pomocny post
    #7 15261374
    JRV
    Specjalista - VBA, Excel
    Posty: 2724
    Pomógł: 805
    Ocena: 455
    snake_90 napisał:
    załóżmy suma dwóch liczb zespolonych i szukanie minimum zmieniając wartość jednej liczby (zmiennej

    Dla sumy minimum lub maksymum możliwe jeśli zmienna ma pewne granice.
    Czy masz wszelki prawdziwy funkcja?

    Dodano po 55 [minuty]:

    MODUŁ.LICZBY.ZESP - nie wiem, czy bedzie to maksymum(logicznie tak)
    z tym Solver dziala, poniewaz to ma typ rzeczywisty
    Załączniki:
    • Liczbzesp1.rar (8.45 KB) Musisz być zalogowany, aby pobrać ten załącznik.
  • #8 15263585
    JRV
    Specjalista - VBA, Excel
    Posty: 2724
    Pomógł: 805
    Ocena: 455
    W ogóle, jak chcesz znaleźć maksymum funkcji, zwłaszcza, jeśli wynik jest liczbą zespoloną?
    Liczby zespolone mogą być dodawanie, odejmowanie, itp., ale je porównać nie ma sensu.
  • #9 15264987
    snake_90
    Poziom 10  
    Posty: 22
    Ocena: 1
    Do wcześniejszej wypowiedzi odniosę się później teraz czasu nie mam za bardzo. Co do ostatniej wypowiedzi, jeżeli porównywanie liczb zespolonych nie ma sensu to ciekawe w jaki sposób będziesz wiedział jaki dobrać przekrój kabla ewentualnie jak skompensować system elektroenergetyczny zakładu (dla niewtajemniczonych tg(fi)=0,4). A na tę chwilę próbuję rozwiązać problem w excelu bo nie mam dostępu do matlaba i wiedzy o nim co i jak się tam robi. Główny problem sprowadza się do tego, że mam znaleźć rezystancję, dla której prąd przyjmie odpowiednią wartość, jednakże muszę używać min lub max a nie pola wartość. To nie jest mój wymysł tylko odgórnie narzucony problem. A na razie zagwozdką jest jak odpalić solvera w momencie kiedy obliczenia są na liczbach zespolonych. Chyba, że jest tu na tyle ogarnięta osoba, która pomoże mi w jakiś sposób napisać instrukcje do matlaba, jak będę na uczelni spróbuję to odpalić.
  • #10 15265242
    JRV
    Specjalista - VBA, Excel
    Posty: 2724
    Pomógł: 805
    Ocena: 455
    snake_90 napisał:
    mam funkcję jednej zmiennej

    Już dwa razy prosiłem pokazanie tej funkcji, ponadto co jest zmienna.
    I co ma byc min lub max. (jak to wygląda na papierze)
    Wesołych Świąt
  • #11 15277322
    snake_90
    Poziom 10  
    Posty: 22
    Ocena: 1
    Długo nie pisałem ale święta i tak dalej. W każdym bądź razie solvera faktycznie udało się odpalić jeżeli funkcją celu jest moduł liczby zespolonej. Co prawda nie udało mi się rozwiązać problemu do końca, ale sam solver już się uruchamia. Na tę chwilę myślę, że problem częściowo rozwiązany ale wątku nie zamykam póki co, na wszelki wypadek. Jeśli uda mi się całkowicie rozwiązać zadanie w excelu to opiszę co i jak, a jeśli pojawią się jeszcze jakieś problemy to również postaram się opisać w czym rzecz. Treści zadania nie pokażę w całości ewentualnie na priv jeśli będzie taka potrzeba, gdyż nie mogę upubliczniać tego typu zadań. Pozdrawiam i dziękuję za pomoc.

Podsumowanie tematu

✨ Użytkownik zadał pytanie dotyczące użycia solvera w Excelu do optymalizacji funkcji z liczbami zespolonymi. Mimo że obliczenia w Excelu działają poprawnie, solver nie obsługuje liczb zespolonych. W odpowiedziach zasugerowano stworzenie niestandardowej funkcji (UDF) oraz użycie modułu do obliczeń zespolonych. Użytkownik odkrył, że solver można uruchomić, definiując funkcję celu jako moduł liczby zespolonej, co częściowo rozwiązało problem. Wciąż poszukuje pełnego rozwiązania, aby móc zastosować solver do optymalizacji w kontekście rezystancji i prądu.
Wygenerowane przez model językowy.
REKLAMA