numpy (matrix solver) - python vs. matlab

someone newsboost at gmail.com
Wed May 2 16:29:27 EDT 2012


On 05/02/2012 01:52 PM, Steven D'Aprano wrote:
> On Wed, 02 May 2012 08:00:44 +0200, someone wrote:
>
>> On 05/02/2012 01:05 AM, Paul Rubin wrote:
>>> someone<newsboost at gmail.com>   writes:
>>>> Actually I know some... I just didn't think so much about, before
>>>> writing the question this as I should, I know theres also something
>>>> like singular value decomposition that I think can help solve
>>>> otherwise illposed problems,
>>>
>>> You will probably get better advice if you are able to describe what
>>> problem (ill-posed or otherwise) you are actually trying to solve.  SVD
>>
>> I don't understand what else I should write. I gave the singular matrix
>> and that's it.
>
> You can't judge what an acceptable condition number is unless you know
> what your data is.
>
> http://mathworld.wolfram.com/ConditionNumber.html
> http://en.wikipedia.org/wiki/Condition_number
>
> If your condition number is ten, then you should expect to lose one digit
> of accuracy in your solution, over and above whatever loss of accuracy
> comes from the numeric algorithm. A condition number of 64 will lose six
> bits, or about 1.8 decimal digits, of accuracy.
>
> If your data starts off with only 1 or 2 digits of accuracy, as in your
> example, then the result is meaningless -- the accuracy will be 2-2
> digits, or 0 -- *no* digits in the answer can be trusted to be accurate.

I just solved a FEM eigenvalue problem where the condition number of the 
mass and stiffness matrices was something like 1e6... Result looked good 
to me... So I don't understand what you're saying about 10 = 1 or 2 
digits. I think my problem was accurate enough, though I don't know what 
error with 1e6 in condition number, I should expect. How did you arrive 
at 1 or 2 digits for cond(A)=10, if I may ask ?






More information about the Python-list mailing list