MF_Rows_rotate MD_Rows_rotate ME_Rows_rotate
MCF_Rows_rotate MCD_Rows_rotate MCE_Rows_rotate
MI_Rows_rotateMBI_Rows_rotateMSI_Rows_rotateMLI_Rows_rotateMQI_Rows_rotate
MU_Rows_rotateMUB_Rows_rotateMUS_Rows_rotateMUL_Rows_rotateMUQ_Rows_rotate
Funktionalle 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/Delphiuses 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/Delphiuses 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 );
BeschreibungMAi,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.

QuerverweisMF_Rows_reflect,   MF_Cols_rotate,   Kap. 7

MatrixLib Inhaltsverzeichnis  OptiVec Home