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

RC-Glied, Frequenzgang plotten

 

dermitri
Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 09.08.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 09.08.2013, 19:28     Titel: RC-Glied, Frequenzgang plotten
  Antworten mit Zitat      
Hallo Leute,

ich bin kompletter Matlab Neuling, und erdreiste mich deswegen bezüglich eines dermaßen einfachen Problems einen neuen Thread zu eröffnen.

Es geht im Prinzip nur darum den Betrag der Übertragungsfunktion eines RC-Glieds zu plotten.

folgende Funktion: Betrag= 1/ sqrt( x^2 + 1).

Mein Matlab Code:
Code:

clear all
close all
clc

x=[0: 0.01 : 200000];
Betrag = 1/sqrt((x * x) + 1);
plot(x, Betrag)

Fehlermeldung:
Error using  *
Inner matrix dimensions must agree.

Error in RC_Glied (line 6)
Betrag = 1/sqrt((x * x) + 1);
 
 

Wenn ich das richtig sehe, ist x ein Vektor und daher wird x*x auch als Matrix-Multiplikation aufgefasst.

Wie kann ich eine solche Funktion trotzdem möglichst einfach plotten?

Danke Smile
Private Nachricht senden Benutzer-Profile anzeigen


Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 09.08.2013, 20:27     Titel:
  Antworten mit Zitat      
bissel in der doc oder in dem forum hier suchen ^^
das was du meinst ist .* und nicht * ^^
clear all ist übrigens mist.
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 10.08.2013, 02:42     Titel: Re: RC-Glied, Frequenzgang plotten
  Antworten mit Zitat      
Hallo dermitri,

Ein paar Kommentare zum Code um Winkows Antowrt auszuschmücken:
Code:

Ich nenne dies den "brute clearing header": Er löscht erst mal alles, was man vorher an sinnvollen Arbeiten in Matlab gemacht hat. Besondern schädlich ist dabei "clear all", welches alle Debugger-Breakpoints löscht. Und alles, was das Debuggen behindert, ist ein Feind des Programmierers.

Code:
x=[0: 0.01 : 200000];

Hier sollte die MLint Warnung erscheinen, die darauf hinweist, dass die überflüssigen eckigen Klammern nur zeit verschwenden. Denn "0: 0.01 : 200000" ist bereits ein Vektor. Ihn mit sich selbst horizobntal zu einem Vektor zu verketten bringt deshalb nichts ausser einem (sehr winzigen) Zeitverlust.

x * x ist die Matrix-Multiplikation, während Du nach der elementweisen Multiplikation .* suchst.

Du kannst eine Lösung in der Dokumentation finden: Starte mit "doc *", da es ja um den "*"-Operator geht. Du bekommst eine Liste mit unterschiedlichen Operatoren in der Namens-Form. Das "*" nun "mtimes" bedeutet, und ".*" "times" erschließt sich aus der tabelarischen Übersicht.

Matlab Dokumentation ist wirklich mit viel Arbeit so gestaltet, dass die benötigten Dinge auffindbar sind. Der Befehl "docsearch" hilft auch oft ein Stichwort zu finden. Und wenn ein Befehl nicht ganz passt, findet man in der "See also"-Zeile ähnliche Befehle.
Klar, das Forum ist auch ein guter Ort für Fragen. Aber die Dokumentation ist doch im Allgemeinen 100 mal schneller für solche grundlegenden Fragen.

Gruß, Jan
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.