<?xml version="1.0" encoding="ISO-8859-1" ?>
<!-- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns="http://my.netscape.com/rdf/simple/0.9/"> -->
<rss version="0.91">

<channel>
    <title>Mein MATLAB Forum - goMatlab.de</title>
    <link>http://www.gomatlab.de/index.php</link>
	<description>goMatlab.de - Deutschsprachiges Forum für die Benutzung der Software MATLAB / Simulink. Hilfe bei Bedienungsfragen oder bei der Umsetzung technischer Probleme.</description>
	<language>de</language>
	<image>
		<title>Mein MATLAB Forum - goMatlab.de</title>
		<link>http://www.gomatlab.de/index.php</link>
		<url>http://www.gomatlab.de/templates/vSpiralFull/images/_header_logo.gif</url>
	</image>

<item>
    <title>C# Dictionary direkt nach Matlab</title>
    <replys>0</replys>
    <link>http://www.gomatlab.de/viewtopic.php?p=187624#187624</link>
    <pubDate>Fri, 09 Nov 2018 11:16:55 +0100</pubDate>
    <description>Hallo,
ich würde gerne mehrere C# Dictionary direkt nach Matlab übertragen.
Kann Matlab diese Dictionary lesen oder muss es umgewandelt werden?
Übertragen würde ich gerne über TCP/IP.

Hat jemand damit Erfahrung?

Vielen Dank im Voraus.</description>
</item>

<item>
    <title>Fitten von Modell an (Mess-)Daten ohne Toolbox-Abhängigkeit</title>
    <replys>6</replys>
    <link>http://www.gomatlab.de/viewtopic.php?p=174099#174099</link>
    <pubDate>Fri, 31 Mar 2017 22:12:47 +0200</pubDate>
    <description>Hallo,

das Problem liegt in der Funktionsauswertung zum Plotten: du schickst einen x-Vektor rein, aber deine Funktion gibt da nur einen Skalar zurück. Wenn du / in der Zielfunktion durch ./ ersetzt, sieht es besser aus.
Davon abgesehen ist es nicht möglich, 4 Parameter sinnvoll durch 3 Datenpunkte zu bestimmen.

Grüße,
Harald</description>
</item>

<item>
    <title>Indizierung mit Doubles</title>
    <replys>0</replys>
    <link>http://www.gomatlab.de/viewtopic.php?p=172219#172219</link>
    <pubDate>Sun, 15 Jan 2017 20:04:27 +0100</pubDate>
    <description>In vielen Programmiersprachen ist eine Indizierung mit Integer-Typen obligatorisch. Matlab kann aber sehr effizient mit Indizes im Typ double umgehen und wurde dafür optimiert.

Bei einem Ausdruck der Art Y=X&amp;#40;a&amp;#58;b&amp;#41; überprüft Matlab intern nur für die 2 Werte a und b, ob sie innerhalb des deklarierten Bereichs liegen. Deshalb ist dies deutlich schneller als den Index-Vektor explizit zu erzeugen:
x = zeros&amp;#40;1, 10000&amp;#41;;
tic
for k = 1&amp;#58;10000
  x&amp;#40;1&amp;#58;k&amp;#41; = k;
end
toc

tic
for k = 1&amp;#58;10000
  v    = 1&amp;#58;k;
  x&amp;#40;v&amp;#41; = k;
end
toc

% Elapsed time is 0.146026 seconds.
% Elapsed time is 0.521763 seconds.
Ähnliches geschieht, wenn man den Index-Vektor mit tic
for k = 1&amp;#58;10000
  x&amp;#40;&amp;#91;1&amp;#58;k&amp;#93;&amp;#41; = k;
end
toc

% Elapsed time is 0.459354 seconds.
Die Umwandlung in einen Integer-Typ ist nicht effizient aus den gleichen Gründen:
x = zeros&amp;#40;1, 10000&amp;#41;;
tic
for k = 1&amp;#58;10000
  x&amp;#40;uint64&amp;#40;1&amp;#58;k&amp;#41;&amp;#41; = k;
end
toc

tic
for k = 1&amp;#58;10000
  x&amp;#40;uint64&amp;#40;1&amp;#41;&amp;#58;uint64&amp;#40;k&amp;#41;&amp;#41; = k;
end
toc
% Elapsed time is 0.678613 seconds.
% Elapsed time is 0.384426 seconds.

Im ersten Fall wird zuerst der Double-Vector 1:k erzeugt und danach in ein UINT64 umgewandelt. Im zweiten Fall wird der Vektor gleich als UINT64 erzeugt. Das ist zwar deutlich schneller, gegen das einfache &amp;quot;x(1:k)&amp;quot; aber immer noch viel langsamer.</description>
</item>

<item>
    <title>Effizienter Code versus Vektorisierung</title>
    <replys>0</replys>
    <link>http://www.gomatlab.de/viewtopic.php?p=171114#171114</link>
    <pubDate>Fri, 09 Dec 2016 10:08:47 +0100</pubDate>
    <description>Aufgabe: Erstelle eine CHAR-Matrix wie folgt:

  Str = '1234',   k = 2
  ==&amp;gt; 
    '12'
    '23'
    '34'

1. Erster Versuch:
for ii = 1 &amp;#58; numel&amp;#40;str&amp;#41;-k+1
  pattern&amp;#40;ii,&amp;#58;&amp;#41; = str&amp;#40;ii&amp;#58;ii+k-1&amp;#41;;
end

2. Pre-allocation: &amp;quot;pattern&amp;quot; iterativ wachsen zu lassen benötigt viele Resourcen, weil in jeder Iteration ein neues Array erstellt wird und die vorherigen Werte kopiert werden. Wenn man den Output vor der Schleife erstellt, werden nur die jeweiligen Werte einkopiert:
n = numel&amp;#40;str&amp;#41; - k + 1;
pattern = repmat&amp;#40;' ', n, k&amp;#41;;   % &amp;lt;-- added
for ii = 1&amp;#58;n
  pattern&amp;#40;ii,&amp;#58;&amp;#41; = str&amp;#40;ii&amp;#58;ii+k-1&amp;#41;;
end

3. Matlab speichert Arrays spalten-orientiert. pattern&amp;#40;ii, &amp;#58;&amp;#41; schreibt deshalb in Speicherzellen, die weit von einander entfernt liegen. Zudem ist k immer kleiner als die String-Länge, sodass die Schleife kürzer wird, wenn man über die Spalten iteriert:
n = numel&amp;#40;str&amp;#41; - k + 1;
pattern = repmat&amp;#40;' ', n, k&amp;#41;;
for ii = 1&amp;#58;k                         % &amp;lt;-- k instead of n
   pattern&amp;#40;&amp;#58;, ii&amp;#41; = str&amp;#40;ii&amp;#58;ii+n-1&amp;#41;;  % &amp;lt;-- &amp;#40;&amp;#58;, ii&amp;#41; instead of &amp;#40;ii, &amp;#58;&amp;#41;
end

4. Vektorisieren - das beschleunigt sehr viele Matlab Programme, aber nicht alle:
index   = bsxfun&amp;#40;@plus, &amp;#40;1&amp;#58;numel&amp;#40;str&amp;#41; - k + 1&amp;#41;.', 0&amp;#58;k-1&amp;#41;;
pattern = str&amp;#40;index&amp;#41;;

5. Wie sieht das in C aus?
#include &amp;quot;mex.h&amp;quot;
void mexFunction&amp;#40;int nlhs, mxArray *plhs&amp;#91;&amp;#93;, int nrhs, const mxArray *prhs&amp;#91;&amp;#93;&amp;#41;
&amp;#123;
  mwSize k, n, f;
  mxChar *in, *out;
  mwSize dims&amp;#91;2&amp;#93;;
  
  // Get inputs&amp;#58;
  in = &amp;#40;mxChar *&amp;#41; mxGetData&amp;#40;prhs&amp;#91;0&amp;#93;&amp;#41;;
  k  = &amp;#40;mwSize&amp;#41; mxGetScalar&amp;#40;prhs&amp;#91;1&amp;#93;&amp;#41;;
  
  // Create outputs&amp;#58;
  n       = mxGetNumberOfElements&amp;#40;prhs&amp;#91;0&amp;#93;&amp;#41; - k + 1;
  dims&amp;#91;0&amp;#93; = n;
  dims&amp;#91;1&amp;#93; = k;
  plhs&amp;#91;0&amp;#93; = mxCre ...</description>
</item>

<item>
    <title>Einen HDrive Servo motor ansteuern</title>
    <replys>0</replys>
    <link>http://www.gomatlab.de/viewtopic.php?p=170720#170720</link>
    <pubDate>Wed, 30 Nov 2016 14:12:33 +0100</pubDate>
    <description>Hallo, dies ist mein erster Post hier, ich bin neu :).

Mit einem HDrive von Henschel-robotics.ch könnt ihr mit nur 3 Zeilen Code einem Servomotor sagen wo es hinn soll:

t=tcpip&amp;#40;'192.168.1.102', 20000, 'NetworkRole', 'client'&amp;#41; ; % configure TCP Client and Port 
fopen&amp;#40;t&amp;#41;; % open TCP Connection 
fwrite&amp;#40;t, '&amp;lt;HDrive Position=\&amp;quot;1000\&amp;quot; Torque=\&amp;quot;50\&amp;quot; Speed=\&amp;quot;10\&amp;quot; Mode=\&amp;quot;4\&amp;quot; /&amp;gt;'&amp;#41; % send XML drive order

Das wars schon, der Motor fährt nun mit seinem internen PID Positionsregler auf 100.0° +/- 0.1° (1 Sigma).

Wenn euch das gefällt dann schaut doch bitte bei unserem Crowdfunding vorbei: http://kck.st/2gal6IG.

Grüsse
Chris</description>
</item>

<item>
    <title>Hexadezimale Daten als matrix einlesen und konvertieren</title>
    <replys>1</replys>
    <link>http://www.gomatlab.de/viewtopic.php?p=168400#168400</link>
    <pubDate>Mon, 12 Sep 2016 10:59:50 +0200</pubDate>
    <description>

ich hab derzeit das Problem, dass ich Beschleunigungsdaten vom Messgerät als hex Datei vorliegen habe und diese als Matrix bzw. Vektoren in Dezimalzahlen einlesen will.
Meine Daten sehen ca. so aus:

Time


Ich habe die Lösung selber gefunden. Falls Andere da Problem auch haben hier mal mein Weg:
Beim Import der Daten das Dateiformat am Kopf der Spalte in TEXT umstellen, dann importieren und mit dem Code:

for(int=1:Anzahl der Datenpunkte)
hex2dec(Sensordaten(int));
end;
 
bearbeiten. Ich hoffe es hilft noch jemand der das gleiche Problem hat.</description>
</item>

<item>
    <title>Symbolic Math Toolbox: Implizite symbolische Ableitung</title>
    <replys>6</replys>
    <link>http://www.gomatlab.de/viewtopic.php?p=167896#167896</link>
    <pubDate>Fri, 19 Aug 2016 09:31:49 +0200</pubDate>
    <description>Also bei mir klappts problemlos mit deinem Minimalbeispiel 
Bei uns (2013b) leider nicht. Bin aber folgenden funktionierenden Workaround gestoßen:

syms t;
x=sym&amp;#40;'x&amp;#40;t&amp;#41;'&amp;#41;;
alpha=sym&amp;#40;'alpha&amp;#40;t&amp;#41;'&amp;#41;;

dxdt = diff&amp;#40;x,t&amp;#41;;
dalphadt = diff&amp;#40;alpha,t&amp;#41;;

f=x*cos&amp;#40;alpha&amp;#41;;

% f nach x ableiten&amp;#58;
subs&amp;#40; diff&amp;#40;subs&amp;#40;f,x,'x'&amp;#41;,'x'&amp;#41;,'x',x&amp;#41;

% f nach alpha ableiten&amp;#58;
subs&amp;#40;diff&amp;#40;subs&amp;#40;f,alpha,'alpha'&amp;#41;,'alpha'&amp;#41;,'alpha',alpha&amp;#41;

Kann mir jemand sagen ab welcher Version der Code von cyrez funktioniert? Komischerweise hat er auch 2013b im Profil eingetragen  :?: 

Gruß 
vega</description>
</item>

<item>
    <title>Tutorial für Entwickler und solche die es werden wollen</title>
    <replys>0</replys>
    <link>http://www.gomatlab.de/viewtopic.php?p=146330#146330</link>
    <pubDate>Mon, 02 Mar 2015 10:05:17 +0100</pubDate>
    <description>Hallo liebes Forum,

im Internet gibt es auf der Seite 

http://www.matlab-simulink.de/matlab-tutorial

ein Tutorial für MATLAB/Simulink/Stateflow zum runterladen.

Gruss
cyrezzza</description>
</item>

<item>
    <title>Tutorial: Keine Angst vor dem function handle</title>
    <replys>13</replys>
    <link>http://www.gomatlab.de/viewtopic.php?p=137197#137197</link>
    <pubDate>Fri, 01 Aug 2014 09:16:33 +0200</pubDate>
    <description>Hallo,

wenn ich dich richtig verstanden habe: ja ;)

Siehe auch hier:
http://www.mathworks.com/help/optim/ug/passing-extra-parameters.html

Grüße,
Harald</description>
</item>

<item>
    <title>Vorschläge für ein xPC Target Tutorial</title>
    <replys>1</replys>
    <link>http://www.gomatlab.de/viewtopic.php?p=137072#137072</link>
    <pubDate>Tue, 29 Jul 2014 14:39:49 +0200</pubDate>
    <description>Hallo twols,
ich wäre daran interessiert, vor allem daran wie man die taktrate des xPcs einstellt. Mir ist nicht ganz klar wie das ganze funktioniert. In meinem Fall ist es so, dass die sample time 1 sein soll, das Modell jedoch in Echtzeit schneller laufen soll...In simulink läuft das Modell innerhalb einiger sekunden für eine gesamtdauer von 15 minuten durch. auf dem echzeitsystem braucht es allerdings auch 15 minuten da die sample time auf 1 steht, würde es aber auch gerne schneller laufen lassen beispielsweise in 5 minuten</description>
</item>

</channel>

</rss>