reproducible research in sep · 2017-09-28 · reproducible research in sep 1 yang zhang june. 2011...
TRANSCRIPT
Reproducible Research in SEP
1
Yang ZhangYang Zhang
June. 2011June. 2011
Stanford Stanford Stanford Stanford Exploration Exploration Exploration Exploration
ProjectProjectProjectProject
Stanford Exploration Project
Outline
�Background�Reproducibility workflow� Current practice� Interactive visualization example�Discussion
2
Stanford Exploration Project
Reproducible research origin� J. Claerbout, 1992, “Electronic
documents give reproducible research a new meaning”
3
Stanford Exploration Project
Reproducible research� scientific computational research is hard to
repeat� paper/documents cannot hold all the details� tricks hidden by the author� different computing environment � data availability
4
Stanford Exploration Project
Non-reproducibility hurts us� difficult for other researchers to verify� harder to promote our research� slowdown the technology transfer� difficult for the followers (even ourselves) to
pick up and continue at later time
5
Stanford Exploration Project
Electronic reproducibility documents
� Overcome (mitigate) all the previous issues� more flexible graphic demonstration approaches
6
Stanford Exploration Project
Outline
�Background�Reproducibility workflow� Current practice� Interactive visualization example�Discussion
7
Stanford Exploration Project
Software
� SEPlib� GNU Make� vplot� LaTex & Scons
8
Stanford Exploration Project
SEPlib
� (one of) the first seismic processing package in academia
� header-binary data storage style� 3-D geometry handling and data regularization� multi-dimension regular-sampled data
visualization tool (Sep_cube)
9
Stanford Exploration Project
GNU Make, Grammar
� makefile – A bunch of rules to build certain targets
10
mymac:~zyang03$> make target
Stanford Exploration Project
GNU Make
� source code compilation and build� data process flow� figure generation cmd
11
Stanford Exploration Project
GNU Make
� source code compilation and build� data process flow� figure generation cmd
12
Stanford Exploration Project
GNU Make
� source code compilation and build� data process flow� figure generation cmd
13
Stanford Exploration Project
GNU Make
� source code compilation and build� data process flow� figure generation cmd
14
Stanford Exploration Project
Reproducible research flow
15
SEPlib library
GNU MakeGNU Make
Reproducibility test
Stanford Exploration Project
SEP’s reproducibility criterion on results(figures)
� easily reproducible (ER)� conditionally reproducible (CR)
� Computing time exceeds 20mins� requires unconventional (less universal) computing
hardware/platform (Cluster)� depends on real-data availability
� non-reproducible (NR)� hand-drawing� figures from outer sources
16
Stanford Exploration Project
Reproducibility makefile rules
� make exec� make ER/CR� make clean� make burn� make view
17
Stanford Exploration Project
Project Example
� Courtesy of Adam Halpert
18
Stanford Exploration Project
Project Example
� Courtesy of Adam Halpert
19
Stanford Exploration Project
Project Example
� Courtesy of Adam Halpert
20
Stanford Exploration Project
Project Example
� Courtesy of Adam Halpert
21
Project Example
22
� Courtesy of Adam Halpert
Stanford Exploration Project
Interactive pdf documents� Sep_cube (more info on Bob Clapp web page)� Python & socket� demo
23
Stanford Exploration Project
Demo
24
Stanford Exploration Project
Some issues� GNU Make
� automatic removal of intermediate file (solved now)� does not resolve the source dependency for C/C++� rebuild criterion based on modified date� learning curve
� tab/space� variable assignment� less programmability
� result.%.H (result.${par1}.H) is OK, but � result.%1.H.%2.H (result.${par1}.${par2}.H is not
supported.� bash
25
Stanford Exploration Project
Acknowledgement� Adam Halpert� Bob Clapp� Sjoerd de Ridder� Yaxun Tang
Stanford Exploration Project
Reference� http://sepwww.stanford.edu/doku.php?id=sep:res
earch:reproducible
27
�Thank you