Πώς να λύσετε ένα σύστημα μη γραμμικών εξισώσεων στο MATLAB

Pos Na Lysete Ena Systema Me Grammikon Exisoseon Sto Matlab



Μη γραμμικές εξισώσεις είναι τύποι εξισώσεων που ακολουθούν το γράφημα σχηματίζοντας καμπύλες και μη γραμμικά σχήματα. Η επίλυση ενός τέτοιου συστήματος εξισώσεων είναι ένα κοινό πρόβλημα που αντιμετωπίζουν μηχανικοί και επιστήμονες. Ο κύριος λόγος πίσω από την επίλυση αυτών των τύπων εξισώσεων οφείλεται στην πολυπλοκότητά τους στην εύρεση της ακριβούς λύσης. Μπορεί να βρείτε πολλές λύσεις ή σε ορισμένες περιπτώσεις να μην υπάρχει λύση. Το MATLAB μας παρέχει διάφορους τρόπους επίλυσης του συστήματος μη γραμμικών εξισώσεων. Ένα από αυτά είναι η χρήση ενσωματωμένου fsolve() λειτουργία.

Αυτός ο οδηγός θα μας διδάξει πώς να υπολογίσουμε τη λύση του συστήματος μη γραμμικών εξισώσεων στο MATLAB χρησιμοποιώντας το fsolve() λειτουργία.

Πώς να λύσετε το σύστημα μη γραμμικών εξισώσεων στο MATLAB;

ο fsolve() είναι μια ενσωματωμένη συνάρτηση στο MATLAB που χρησιμοποιείται για την επίλυση α σύστημα μη γραμμικών εξισώσεων με πολλαπλές μεταβλητές. Αν ο αριθμός των εξισώσεων είναι ίδιος με τον αριθμό των αγνώστων, η λύση ενός συστήματος των μη γραμμικές εξισώσεις θα είναι αριθμητική? Διαφορετικά, η λύση θα είναι συμβολική ως προς την επιθυμητή μεταβλητή. Κάθε μεταβλητή στο σύστημα μη γραμμικών εξισώσεων μπορεί να έχει μία ή πολλές λύσεις με βάση τη σειρά του.







Σύνταξη

ο fsolve() η συνάρτηση ακολουθεί μια απλή σύνταξη για να λύσει το α σύστημα μη γραμμικών εξισώσεων στο MATLAB.





x = fsolve ( διασκέδαση, x0 )
x = fsolve ( διασκέδαση, x0, επιλογές )

Εδώ:



Η λειτουργία x = fsolves (διασκέδαση, x0) λύνει το σύστημα των μη γραμμικών εξισώσεων ξεκινώντας από σημείο x0 .











Η λειτουργία x = fsolves (διασκέδαση, x0, επιλογές) λύνει το μη γραμμικό σύστημα εξισώσεων χρησιμοποιώντας μεθόδους βελτιστοποίησης που καθορίζονται στις επιλογές.

Σημείωση: Οι επιλογές από προεπιλογή χρησιμοποιούν το Νιούτον Ράπσον μέθοδος υπολογισμού λύσεων συστημάτων μη γραμμικών εξισώσεων. Μπορείτε να καθορίσετε άλλες μεθόδους, όπως την περιοχή αξιοπιστίας, Levenberg-Marquardt , και άλλοι.



Παραδείγματα

Ακολουθήστε τα παραδείγματα για να μάθετε πώς να λύσετε ένα σύστημα μη γραμμικών εξισώσεων χρησιμοποιώντας το fsolve() λειτουργία στο MATLAB.

Παράδειγμα 1: Επίλυση 2 μη γραμμικών εξισώσεων στο MATLAB

Το συγκεκριμένο παράδειγμα δημιουργεί πρώτα μια συνάρτηση που ορίζεται από το χρήστη MATLAB με όνομα μη γραμμικό_σύστημα που περιέχει το σύστημα δύο μη γραμμικών εξισώσεων.

λειτουργία F = μη γραμμικό_σύστημα ( Χ )
φά ( 1 ) = exp ( sqrt ( ( Χ ( 1 ) +x ( 2 ) ) ) ) - Χ ( 2 ) * ( 1 + sqrt ( Χ ( 1 ) ) ) ;
φά ( 2 ) = x ( 1 ) * χωρίς ( Χ ( 2 ) ) + x ( 2 ) * cos ( Χ ( 1 ) ) - 0.1 ;

Τώρα καλούμε τη συνάρτηση σε ένα άλλο αρχείο σεναρίου για να λύσουμε το καθορισμένο σύστημα μη γραμμικών εξισώσεων χρησιμοποιώντας το fsolve (διασκέδαση, x0) συνάρτηση που ξεκινά από το σημείο x0 = (0, 0).

διασκέδαση = @nonlinear_system;
x0 = [ 0 , 0 ] ;
x = fsolve ( διασκέδαση, x0 )

Παράδειγμα 2: Επίλυση μη γραμμικών εξισώσεων ξεκινώντας από το σημείο [-5,5]

Τώρα εξετάστε το καθορισμένο σύστημα εξισώσεων στο αρχείο συνάρτησης που ορίζεται από το χρήστη nonlinear_system.m και καλέστε τη συνάρτηση για να λύσετε αυτό το σύστημα μη γραμμικών εξισώσεων ξεκινώντας από το σημείο x0 = [-5, 5] χρησιμοποιώντας την fsolve() λειτουργία.

διασκέδαση = @nonlinear_system;
x0 = [ - 5 , 5 ] ;
x = fsolve ( διασκέδαση, x0 )

Για περισσότερες λεπτομέρειες, διαβάστε αυτό οδηγός .

συμπέρασμα

Η επίλυση ενός συστήματος μη γραμμικών εξισώσεων είναι το πιο κοινό πρόβλημα στα μαθηματικά και τη μηχανική. Το MATLAB μας παρέχει ένα ενσωματωμένο fsolve() συνάρτηση που μας επιτρέπει να λύσουμε ένα σύστημα μη γραμμικών εξισώσεων. Αυτός ο οδηγός έχει καλύψει τα βασικά για την επίλυση συστημάτων μη γραμμικών εξισώσεων που θα βοηθήσουν τους αρχάριους να κατανοήσουν τη λειτουργία του fsolve() λειτουργία στο MATLAB.