MF_Rows_rotate
| MD_Rows_rotate |
ME_Rows_rotate |
MCF_Rows_rotate |
MCD_Rows_rotate |
MCE_Rows_rotate |
MI_Rows_rotate | MBI_Rows_rotate | MSI_Rows_rotate | MLI_Rows_rotate | MQI_Rows_rotate |
MU_Rows_rotate | MUB_Rows_rotate | MUS_Rows_rotate | MUL_Rows_rotate | MUQ_Rows_rotate |
|
Funktion | alle Zeilen um eine bestimmte Anzahl von Positionen rotieren; hierdurch werden ganze Spalten verschoben |
|
Syntax C/C++ | #include <MFstd.h>
void MF_Rows_rotate( fMatrix MA, ui ht, ui len, int pos ); |
C++ MatObj | #include <OptiVec.h>
void matrix<T>::Rows_rotate( const int pos ); |
Pascal/Delphi | uses MFstd;
procedure MF_Rows_rotate( MA:fMatrix; ht, len:UIntSize; pos:Integer ); |
|
CUDA-Funktion C/C++ | #include <cudaMFstd.h>
int cudaMF_Rows_rotate( fMatrix d_MA, ui ht, ui len, int pos );
void MFcu_Rows_rotate( fMatrix h_MA, ui ht, ui len, int pos );
|
CUDA-Funktion Pascal/Delphi | uses MFstd;
function cudaMF_Rows_rotate( d_MA:fMatrix; ht, len:UIntSize; pos:Integer ): IntBool;
procedure MFcu_Rows_rotate( h_MA:fMatrix; ht, len:UIntSize; pos:Integer );
|
|
Beschreibung | MAi,j = MAi, len-pos+j, j=0,..,pos-1
MAi,j = MAi, j-pos, j=pos,...,len-1
Da diese Funktion jedes Mal intern Puffer-Speicher reservieren und wieder freigeben muss, ist sie nicht sonderlich effizient. Für Anwendungen, die häufiger Rotationen durchführen, empfehlen wir, einmal eine Puffermatrix zu allozieren und mit dieser MF_Rows_rotate_buf anstelle der vorliegenden Funktion aufzurufen. |
|
|