Hauptinhalt

Single-Precision-Entwurf für MATLAB Programmcode

Konvertieren von MATLAB® Double-Precision-Code in MATLAB Single-Precision-Code

Da Single-Precision-Zahlen nur 32 Bit verwenden, benötigen sie weniger Speicherplatz als Double-Precision-Zahlen, bieten aber dennoch viele der Vorteile der Gleitkomma-Arithmetik. Sie können Ihren MATLAB-Code mit doppelter Genauigkeit mithilfe der Funktion convertToSingle in der Befehlszeile in einen Code mit einfacher Genauigkeit umwandeln. Sie können das Verhalten einer Single-Precision-Version Ihres Codes verifizieren, ohne den ursprünglichen Algorithmus zu verändern.

Um die Verifikationsoptione zu verwenden, erstellen Sie ein coder.SingleConfig-Objekt, das Sie an die convertToSingle übergeben. So können Sie:

  • Testen Sie die Numerik, indem Sie die Testdatei mit angewendeten Single-Precision-Typen ausführen.

  • Vergleichen Sie die Testergebnisse mit doppelter und einfacher Genauigkeit mit dem Simulation Data Inspector oder Ihren eigenen Plotfunktionen.

Wenn Sie über eine MATLABCoder™-Lizenz verfügen, können Sie:

  • Single-Precision-C Code mithilfe von codegen mit der Option -singleC generieren. Verwenden Sie diesen Workflow, wenn Ihr Ziel darin besteht, Single-Precision C Code möglichst direkt zu generieren und Sie den intermediären Single-Precision MATLAB Programmcode nicht sehen möchten.

  • Single-Precision MATLAB Programmcode mithilfe codegen und einem coder.SingleConfig-Objekt generieren. Verwenden Sie diesen Workflow, wenn Sie den Single-Precision MATLAB Code sehen oder Verifikationsoptionen verwenden möchten.

  • Single-Precision C Code mithilfe von codegen mit einem coder.SingleConfig-Objekt und einem Code-Konfigurationsobjekt generieren. Verwenden Sie diesen Workflow, um Single-Precision C Code zu generieren, wenn Sie zudem den Single-Precision MATLAB Programmcode sehen oder Verifikationsoptionen verwenden möchten.

Funktionen

convertToSingleConvert double-precision MATLAB code to single-precision MATLAB code
coder.configCreate configuration object for fixed-point or single-precision conversion

Klassen

coder.SingleConfigDouble-precision to single-precision conversion configuration object

Themen