2010-10-31 4 views
1

J'ai eu quelques questions à propos de Accelerate framework.Questions sur l'utilisation Accelerate.framework

Quelle est la différence entre Flotteur à simple précision, Complexe à simple précision, Flotteur à double précision et Complexe à double précision? Et que dois-je utiliser pour une struct simple comme:

struct vector 
{ 
    float x; 
    float y; 
    float z; 
}; 

quelqu'un peut également expliquer ce que chacun des arguments à cette fonction exemple signifie?

void cblas_cdotc_sub (
    const int N, 
    const void *X, 
    const int incX, 
    const void *Y, 
    const int incY, 
    void *dotc 
); 

Les descriptions d'Apple sont un peu floues pour moi. Que veulent-ils dire par la longueur de N? Est-ce la taille du vecteur en octets? Ou la longueur spatiale réelle du vecteur?

Répondre

4

Les variables complexes sont des quantités bidimensionnelles, normalement traitées comme les parties réelles et imaginaires des nombres complexes dans les opérations arithmétiques/mathématiques.

Les flotteurs simples et doubles IEEE permettent une précision binaire différente (environ la quantité de chiffres significatifs sans erreur d'arrondi), soit environ 7 chiffres pour un seul, environ deux fois pour un double, plus un exposant plus large.

Mais l'arithmétique flottante unique fonctionne beaucoup plus vite sur les appareils iOS actuels que ne double (à la différence du simulateur, où ils peuvent à la fois courir plus la même vitesse.)

descriptions d'Apple peut nécessiter des connaissances de base des types de données C , tableaux et structures, et la théorie mathématique des variables complexes. Je commençais par lire quelques livres sur la programmation de base en C et les algorithmes numériques en C.

+0

Je comprends ce que cela signifiait par simple et double précision, je demandais plus ce que le complexe signifiait mais merci pour la clarification. Maintenant, des idées sur la partie N de cette fonction? –

+0

Nevermind J'ai trouvé une documentation plus solide et je l'ai compris. –

+0

@Justin - En plus de ce que hotpaw2 décrit ici, vous pourriez trouver les [exemples de code source] (http://developer.apple.com/library/ios/#documentation/Performance/Conceptual/vDSP_Programming_Guide/SampleCode/SampleCode.html % 23 // apple_ref/doc/uid/TP40005147-CH205-CIAEJIGF) dans le Guide de programmation vDSP pour être utile. –