linear-algebra


Lapack Orthonormalization Function for Rectangular Matrix


I was wondering if there was a function in Lapack for orthonormalizing the columns of a very tall and skinny matrix. A similar previous question asked this question, presumably in the context of a square matrix. My setting is as follows: I have an M by N matrix A that I am trying to orthonormalize the columns of.
So, my first thought was to do a qr decomposition. The functions for doing a qr decomposition in Lapack seem to be dgeqrf and dormqr. Great. However, my problem is as follows: my matrix A is so tall, that I don't want to actually compute all of Q, because it is M by M. In fact, I can't afford to instantiate an M by M matrix at all during any of my computation (it would not fit in memory). I would rather compute just the matrix that wikipedia calls Q1. However, I can't seem to find a way to make this work.
The weird thing is, that I think it is possible. Numpy, in particular, has a function numpy.linalg.qr that appears to do just this. However, even after reading their source code, I can't figure out how they are using lapack calls to get this to work.
Do folks have ideas? I would strongly prefer this to only use lapack functions because I am hoping to port this code to CuSOLVE, which has implemented several lapack functions (including dgeqrf and dormqr) for the GPU.
You want the "thin" or "economy size" version of QR. In matlab, you can do this with:
[Q,R] = qr(A,0);
I haven't used Lapack directly, but I would imagine there's a corresponding call there. It appears that you can do this in python with:
numpy.linalg.qr(a, mode='reduced')

Related Links

How to calculate an orthogonal plane from a vector
Calculating error in PCA
Calculate the position of a point
How do I get all solutions from this system?
How is a Line Represented in Epipolar Geometry?
Does ALS require zero entries?
How can I find linear dependency's , when one (or more) coefficients are fixed?
How to solve Linear ODEs system using matrix method in Maple?
Matrix Division
How to represent a bus ride in linear programming?
Matlab : How do I ensure that the covariance matrix is positive definite when using Kalman Filter
Computing singular values vs eigenvalues when you have the choice
Solving of a linear system with parameters
Upper Division Linear Algebra
positive solutions to a homogeneous linear system
Use LispLab within AutoCAD

Categories

HOME
gridview
checkstyle
swt
telegram-bot
azure-container-service
bing-maps
qpython
jquery-ui-sortable
categorical-data
octave
fhir
appcelerator-studio
resultset
supervisor
comsol
shared-libraries
scrolltop
powershell-v5.0
wolframalpha
smartclient
sse
ksh
inno-download-plugin
monit
beta
amazon-quicksight
android-things
bioinformatics
mustache
biztalk-rule-engine
gnat-gps
reverse
lubridate
ods
css-position
xv6
print-css
getchar
libgphoto2
podscms
zenhub
amq
video-conferencing
java-bytecode-asm
yii2-user
spring-data-couchbase
avx
sundials
pure-css
autosar
winusb
webjars
x-tag
ng-grid
http-status-code-401
lua-telegram-bot
kiosk
fink
character-replacement
rewrite
page.js
airbrake
avahi
uvc
cakephp-2.7
public-html
apache-spark-1.3
android-cookiemanager
angular-gettext
punycode
angular-carousel
winginx
vsx
c++builder-xe5
inputmismatchexception
ebay-lms
css-reset
font-awesome-4.0.0
onload-event
apache-abdera
asplinkbutton
panda3d
uimanageddocument
boost-msm
paginator
koken
fitbounds
cgimage
instantiationexception
non-clustered-index
hbm2java
message-passing
qtabbar
fault-tolerance
linfu-dynamicproxy
flvplayback
java1.4
leader
appliance

Resources

Mobile Apps Dev
Database Users
javascript
java
csharp
php
android
MS Developer
developer works
python
ios
c
html
jquery
RDBMS discuss
Cloud Virtualization
Database Dev&Adm
javascript
java
csharp
php
python
android
jquery
ruby
ios
html
Mobile App
Mobile App
Mobile App