6 ms·
>BLAST Not to be confused with BLAS, which is for Linear Algebra and likewise a neat example. BLAS and its co-conspirator LAPACK are the underpinning for many
by na85 6y ago
>BLAST
Not to be confused with BLAS, which is for Linear Algebra and likewise a neat example. BLAS and its co-conspirator LAPACK are the underpinning for many (most?) scientific libraries in use today. Packages like scipy will wrap BLAS and LAPACK to make them more ergonomic and present more uniform interfaces in the style of the host language.
- dekhn 6y agoWell, I worked with BLAS as well, but it was just something we linked in (IE, it's a stable library with a stable interface with a limited set of functions). None of this should be surprising- in my opinion, computers mainly exist to do linear algebra efficiently.
- ogogmad 6y ago> in my opinion, computers mainly exist to do linear algebra efficiently. What about the discussion we're having? It's enabled by computers. But no linear algebra is happening there. What about word processing? Computer games? The world wide web, and all the information contained in it? The authoring of music and graphics? All of those are enabled by computers. Saying it's about doing linear algebra quickly is massively reductive.
- MaxBarraclough 6y agoI agree it's going too far to say that computers are mostly about linear algebra, but computer graphics is one of the go-to examples of applied linear algebra. I believe linear algebra is also central to games' physics engines, but that's not something I know much about.
- whatshisface 6y ago"Linear Algebra," truth be told, involves a lot of high-rent concepts that are not related to computer graphics. Even midlevel concepts like eigenvalues seem to make no appearance. It would be a little more representative to say that computer graphics involved vectors and matrices.
- a1369209993 6y ago> It would be a little more representative to say that computer graphics involved vectors and matrices. "Linear Arithmetic", maybe?
- jjoonathan 6y agoI've seen bounding box code that uses PCA and, by extension, eigenvectors. I think inverse kinematics code uses eigenvectors too. But yeah, transforms easily make up 80% of the use cases.
- prewett 6y agoComputer graphics uses matrices to transform the points, but there isn't much else about it that uses linear algebra. 2D rasterization cleverly iterates over pixels. 3D rasterization does the same for triangles. The other parts of 3D are writing shaders (these days, usually modelling real-world materials), and rendering to textures for effects like reflections and shadows. Even though a main application of linear algebra is computer graphics, computer graphics uses very little linear algebra; the matrix part of your code is pretty small.
- adgjlsfhk1 6y agoNote also that PageRank is the algorithm that lets google rank results and is also just a massive linear algebra problem.
- messe 6y agoPageRank was the algorithm. These days, while PageRankmight still be in-play somewhere, I suspect the results are largely dominated by machine-learned suggestions.
- dekhn 6y agoAll the things you listed above involve linear algebra, including word processors (a modern word processor is loaded with algorithms).