[cig-commits] r21237 - seismo/3D/ADJOINT_TOMO/ADJOINT_TOMOGRAPHY_TOOLKIT
dkomati1 at geodynamics.org
dkomati1 at geodynamics.org
Wed Jan 16 08:59:14 PST 2013
Author: dkomati1
Date: 2013-01-16 08:59:14 -0800 (Wed, 16 Jan 2013)
New Revision: 21237
Added:
seismo/3D/ADJOINT_TOMO/ADJOINT_TOMOGRAPHY_TOOLKIT/compile_Howto_manual.sh
Modified:
seismo/3D/ADJOINT_TOMO/ADJOINT_TOMOGRAPHY_TOOLKIT/HowtoUseToolkit.tex
Log:
more feedback from Dimitri
Modified: seismo/3D/ADJOINT_TOMO/ADJOINT_TOMOGRAPHY_TOOLKIT/HowtoUseToolkit.tex
===================================================================
--- seismo/3D/ADJOINT_TOMO/ADJOINT_TOMOGRAPHY_TOOLKIT/HowtoUseToolkit.tex 2013-01-16 16:43:30 UTC (rev 21236)
+++ seismo/3D/ADJOINT_TOMO/ADJOINT_TOMOGRAPHY_TOOLKIT/HowtoUseToolkit.tex 2013-01-16 16:59:14 UTC (rev 21237)
@@ -77,12 +77,20 @@
\item X01\_SRC\_SUM\_KERNELS, sum event kernels
\item X02\_SRC\_PRECOND\_KERNELS, precondition summed kernels
\item X03\_SRC\_SMOOTH\_KERNELS, smooth kernels
-\item X04\_SRC\_DIRECTION\_CG, calculate search directions using conjugate gradient method
-\item X04\_SRC\_DIRECTION\_SD, calculate search directions using steepest descent method
-\item X04\_SRC\_DIRECTION\_LBFGS, calculate search directions using L-BFGS method
+\item X04a\_SRC\_DIRECTION\_CG, calculate search directions using conjugate gradient method; DK DK comment from Dimitri Komatitsch: why not use BiCGStab here
+instead of a classical CG; usually it is much better than simple CG; however it seems that Yang Luo tried BiCGStab already (?) and found it less efficient than L-BFGS anyway
+\item X04b\_SRC\_DIRECTION\_SD, calculate search directions using steepest descent method
+\item X04c\_SRC\_DIRECTION\_LBFGS, calculate search directions using L-BFGS method
\item X05\_SRC\_UPDATE\_MODELS, update model parameters based on search directions
\end{enumerate}
+In Step 4 above, one should either 04a, 04b or 04c; in most cases, the best choice is 04c, which approximates the Hessian and thus
+converges much faster.
+
+From Wikipedia http://en.wikipedia.org/wiki/Limited-memory\_BFGS, here is a brief description of L-BFGS:
+
+The ''limited-memory BFGS'' (''L-BFGS'' or ''LM-BFGS'') algorithm is a member of the broad family of quasi-Newton optimization methods that uses a limited memory variation of the Broyden-Fletcher-Goldfarb-Shanno (BFGS) update to approximate the inverse Hessian matrix (denoted by $H_k$). Unlike the original BFGS method which stores a dense $ n \times n $ approximation, L-BFGS stores only a few vectors that represent the approximation implicitly. Due to its moderate memory requirement, the L-BFGS method is particularly well suited for optimization problems with a large number of variables. L-BFGS never explicitly forms or stores $H_k$. Instead, it maintains a history of the past $m\,\!$ updates of the position $x\,\!$ and gradient $\nabla f(x)$, where generally the history $m\,\!$ can be short, often less than 10. These updates are used to implicitly do operations requiring the $H_k$-vector product. While strictly, a straightforward BFGS implementation at the $i\,\!$-th iteration would represent the inverse Hessian approximation as informed by all updates on $0 \ldots i-1$, L-BFGS does quite well using updates from only the most recent iterations $i-m \ldots i-1$.
+
\subsection{MODEL\_VISUALIZATION}
This directory is used to extract xyz files from your models or gradients, and plot them based on GMT.
\begin{enumerate}
Added: seismo/3D/ADJOINT_TOMO/ADJOINT_TOMOGRAPHY_TOOLKIT/compile_Howto_manual.sh
===================================================================
--- seismo/3D/ADJOINT_TOMO/ADJOINT_TOMOGRAPHY_TOOLKIT/compile_Howto_manual.sh (rev 0)
+++ seismo/3D/ADJOINT_TOMO/ADJOINT_TOMOGRAPHY_TOOLKIT/compile_Howto_manual.sh 2013-01-16 16:59:14 UTC (rev 21237)
@@ -0,0 +1,39 @@
+#!/bin/sh
+
+/bin/rm -rf *.dvi > /dev/null
+/bin/rm -rf *.log > /dev/null
+/bin/rm -rf *.out > /dev/null
+/bin/rm -rf *.aux > /dev/null
+/bin/rm -rf *.toc > /dev/null
+/bin/rm -rf *.blg > /dev/null
+/bin/rm -rf *.bbl > /dev/null
+/bin/rm -rf *.lof > /dev/null
+/bin/rm -rf *.lot > /dev/null
+/bin/rm -rf *.plt > /dev/null
+/bin/rm -rf *.fff > /dev/null
+/bin/rm -rf *.ttt > /dev/null
+/bin/rm -rf *.tit > /dev/null
+/bin/rm -rf *.spl > /dev/null
+
+ pdflatex HowtoUseToolkit
+ bibtex HowtoUseToolkit
+ pdflatex HowtoUseToolkit
+ pdflatex HowtoUseToolkit
+ pdflatex HowtoUseToolkit
+ pdflatex HowtoUseToolkit
+
+/bin/rm -rf *.dvi > /dev/null
+/bin/rm -rf *.log > /dev/null
+/bin/rm -rf *.out > /dev/null
+/bin/rm -rf *.aux > /dev/null
+/bin/rm -rf *.toc > /dev/null
+/bin/rm -rf *.blg > /dev/null
+/bin/rm -rf *.bbl > /dev/null
+/bin/rm -rf *.lof > /dev/null
+/bin/rm -rf *.lot > /dev/null
+/bin/rm -rf *.plt > /dev/null
+/bin/rm -rf *.fff > /dev/null
+/bin/rm -rf *.ttt > /dev/null
+/bin/rm -rf *.tit > /dev/null
+/bin/rm -rf *.spl > /dev/null
+
Property changes on: seismo/3D/ADJOINT_TOMO/ADJOINT_TOMOGRAPHY_TOOLKIT/compile_Howto_manual.sh
___________________________________________________________________
Name: svn:executable
+ *
More information about the CIG-COMMITS
mailing list