[R] What solve() does?
Petar Milin
pmilin at ff.uns.ac.rs
Sat Sep 4 20:29:34 CEST 2010
Thank you so much! This is very useful!
Any thoughts about how to run Gaussian elimination?
Best,
PM
On 04/09/10 20:23, Paul Johnson wrote:
> On Wed, Sep 1, 2010 at 5:36 AM, Petar Milin<pmilin at ff.uns.ac.rs> wrote:
>
>> Hello!
>> Can anyone explain me what solve() function does: Gaussian elimination or
>> iterative, numeric solve? In addition, I would need both the Gaussian
>> elimination and iterative solution for the course. Are the two built in R?
>>
>> Thanks!
>>
>
>> PM
>>
> Hello, Petar:
>
> I think you are assuming that solve uses an elementary linear algebra
> "paper and pencil" procedure, but I don't think it does. In a digital
> computer, those things are not precise, and I think the folks here
> will even say you shouldn't use solve to get an inverse, but I can't
> remember all of the details.
>
> To see how solve works ...
>
> Let me show you a trick I just learned. Read
>
> ?solve
>
> notice it is a "generic method", meaning it does not actually do the
> calculations for you. Rather, there are specific implementations for
> different types of cases. To find the implementations, run
>
> methods(solve)
>
> I get:
>
>
>> methods(solve)
>>
> [1] solve.default solve.qr
>
> Then if you want to read HOW solve does what it does (which I think
> was your question), run this:
>
>
>> solve.default
>>
> or
>
>
>> solve.qr
>>
> In that code, you will see the chosen procedure depends on the linear
> algebra libraries you make available. I'm no expert on the details,
> but it appears QR decomposition is the preferred method. You can read
> about that online or in numerical algebra books.
>
>
>
>
More information about the R-help
mailing list