WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Handhabung von function handle array

 

Phil254
Forum-Anfänger

Forum-Anfänger


Beiträge: 35
Anmeldedatum: 31.01.13
Wohnort: München
Version: 2012b
     Beitrag Verfasst am: 05.06.2014, 19:57     Titel: Handhabung von function handle array
  Antworten mit Zitat      
Hallo MATLAB Freunde,

ich bin gerade dabei die Symbolic Toolbox aus einer meiner Matlab Funktionen zu entfernen, weil ich sie gerne Kompilieren würde. Also soll heissen, die Toolbox ist leider keine Lösung für das Problem Wink

Um die symbolischen Variablen zu ersetzen verwende ich nun das function handle, mit dem ich noch recht unerfahren bin. Kurz gesagt geht es um die Berechnung eines Flächenintegrals über eine 6x6 Matrix. Da es für die entsprechende 'integral2' funktion keine 'ArrayValued' option gibt, habe ich das ganze über eine zweifache Schleife gemacht.
Nun habe ich aber mit dem funkction handle, das Problem, dass ich nicht mehr direkt auf die einzelnen Elemente meiner 6x6 Matrix zugreifen kann.

Aufs Wesentliche reduziertes Beispiel:


Code:

f = @(x,z) [x.^2 2.*z; 1 x.*z];
i=1;
  while i<=2
    j=1;
      while j<=2
        g=integral2(f(i,j),1,2,3,4);
      j=j+1;
      end
    i=i+1;
  end
 


mit der Symbolic Toolbox hätte das ganze so ausgesehen:

Code:

syms x z
f = [x^2 2*z; 1 x*z];
i=1;
  while i<=2
    j=1;
      while j<=2
        g=integral2(matlabFunction(f(i,j)),1,2,3,4);
      j=j+1;
      end
    i=i+1;
  end
 


(ich hab das jetzt schnell so geschrieben, falls irgendwo (andre) Fehler drin sind.. )

Das Problem ja relativ klar, dass ich mit f(i,j) nicht auf das entsprechende Element des Arrays zugreife, sondern hier f für x=i und z=j herausbekomme.
Wie kann ich das Problem umschiffen?

Riesen Dankeschön für jede Hilfe!
Grüße,
Phil.
Private Nachricht senden Benutzer-Profile anzeigen


Phil254
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 35
Anmeldedatum: 31.01.13
Wohnort: München
Version: 2012b
     Beitrag Verfasst am: 05.06.2014, 21:04     Titel:
  Antworten mit Zitat      
OK ich glaube ich habe es hinbekommen mit einem Cell Array Very Happy
ich denke mal das hat sich dann vorerst erledigt, falls nicht weitere Probleme auftauchen.

Danke trotzdem! Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.