Re: [eigen] Machine precision<> too coarse |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] Machine precision<> too coarse
- From: Benoit Jacob <jacob.benoit.1@xxxxxxxxx>
- Date: Tue, 3 Feb 2009 19:01:10 +0100
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=idz+UirGPPIhpdIX2WMt6aPKh7Ady+3semfZMCDQg7Q=; b=an46q5aSofUUJV0kfT+vDOO2UrG31ByM8AsVpm7CJZkrpCJAe6/hU/ECZIvqgtr6XN no8XMZYylFABDBTf2OzQ5BJECZDU9JZ5IDzFIej6E4IG+LXwNzuJmAV5ttrBqhhmvEGr T3i5IAJKfUoiNxNiiSp03JHRU6vArlrfdPwhg=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=lv5UiB5yq1xHlAEaLKbmKM/ZJnVfc4FH+pJfABTJ6cfFPLWTT/581WyKCrrL1rEuWt AfABQw84w8QpYClCY8T+95VIwssjheHGECxghl+awQmr/GcbFj2nSvTKt4TZPjoTSrhr r201j+ayBzpGT/oh70uKcYZA1s9lKk/W0s1TA=
2009/2/3 Keir Mierle <mierle@xxxxxxxxx>:
> On the issue of making new criterion per algorithm: I think this is
> important. At least for the Cholesky case, the criterion described in the
> paper gave good results empirically. I would be surprised if we can't find
> good stopping criterion in the literature for each of the major algorithms.
It's more complicated than that. Functions like isApprox and
isMuchSmallerThan are called by internal intermediate steps.
So what we need is not formulas for whole algorithms like Cholesky,
it's formulas for these intermediate steps.
For example, look in LU how we call isMuchSmallerThan to determine
whether the pivot is zero or not.
And this is being very very sensitive to the context. For example, as
I said, the partial pivoting LU gives 100x more imprecision than the
full pivoting LU, but when you look at the code, it's the same
isMuchSmallerThan, the only difference is that in the full pivoting
variant, the operations that were done _before_ were safer (the
quotients had denominators as big as possible, contrary to the partial
pivoting variant).
So I really think that if we want to analyze for each of those
internal isMuchSmallerThan calls what precision we want to require,
we're in for very long discussions.
Cheers,
Benoit