00001 #ifndef __ASG_SELFDOC__ 00002 #define __ASG_SELFDOC__ 00003 00004 const char * sdoc[] = { 00005 " Acoustic variable density staggered grid finite difference modeling, ", 00006 " linearized modeling, and adjoint linearized modeling (RTM) in 2D or 3D.", 00007 " ", 00008 " Authors: Igor Terentyev, Tanya Vdovina, Xin Wang, Rami Nammour, Dong Sun,", 00009 " Mario J. Bencomo, Muhong Zhou, Yin Huang, and William W. Symes", 00010 " ", 00011 " Typical parameter list. May be copied, edited, and used for input: either", 00012 " include parameters on command line (for example in Flow), or place", 00013 " in file <foo> and include \"par=<foo>\" on command line. Any parameter", 00014 " included explicitly in command line overrides parameter with same key", 00015 " in par file.", 00016 " ", 00017 " Invoke single threaded execution by ", 00018 " ", 00019 " \"sfacd [parameters] [Madagascar install - scons in $RSFSRC]\"", 00020 " ", 00021 " or ", 00022 " ", 00023 " \"$RSFSRC/trip/iwave/asg/main/asg.x [parameters] [standalone", 00024 " install - scons in $RSFSRC/trip]\"", 00025 " ", 00026 " where $RSFSRC is the path to the Madagascar source directory.", 00027 " Multi-threaded execution using interactive or batch MPI requires,", 00028 " standalone install with MPI enabled - see examples in $RSFSRC/trip/admin.", 00029 " ", 00030 " Given parameter values are defaults; non-optional values indicated by corner", 00031 " brackets.", 00032 " ", 00033 " --------------------------- begin parameters ---------------------------", 00034 " Mapping Selection:", 00035 " ", 00036 " deriv = 0 order of derivative of forward map to compute", 00037 " adjoint = 0 0: forward, 1: adjoint ", 00038 " ", 00039 " ------------------------------------------------------------------------", 00040 " FD info:", 00041 " ", 00042 " order = 2 spatial half-order", 00043 " cfl = 0.75 proportion of max dt/dx", 00044 " cmin = 1.0 min permitted velocity (m/ms) - sanity check", 00045 " cmax = 4.5 max permitted velocity (m/ms) - used in dt comp", 00046 " dmin = 0.8 min permitted density (g/cm^3) - sanity check", 00047 " dmax = 3.0 min permitted density (g/cm^3) - sanity check", 00048 " ", 00049 " ------------------------------------------------------------------------", 00050 " Source info:", 00051 " ", 00052 " source = <path> path to input source data file (traces), ", 00053 " SU format, source position(s) indicated by", 00054 " RECEIVER coordinates (gx, gy, gelev) - may", 00055 " prepare input source with correct headers", 00056 " using trace/main/towed_array.x. Source acts", 00057 " as constitutive law defect, in pressure update.", 00058 " sampord = 1 spatial interp order for sampling or adjoint", 00059 " sampling trace data to/from grid - 0 (nr nbr) ", 00060 " or 1 (multilin)", 00061 " ", 00062 " ------------------------------------------------------------------------", 00063 " Trace output - none, some, or all of the following options may be specified.", 00064 " Traces are stored in SU format. Files must exist prior to execution. Trace", 00065 " headers establish acquisition geometry. Data segments are overwritten for ", 00066 " output for forward modeling (including all orders of derivative), used as", 00067 " input for adjoint modeling.", 00068 " ", 00069 " NOTE: at least one fwd output file (trace or movie) must be specified.", 00070 " ", 00071 " data_p = <path> pressure", 00072 " data_v0 = <path> z component of velocity", 00073 " data_v1 = <path> x component of velocity", 00074 " data_v2 = <path> y component of velocity", 00075 " ", 00076 " ------------------------------------------------------------------------", 00077 " Movie output - none, some, or all of the following options may be specified.", 00078 " Movies are stored in RSF format. Files must exist prior to execution. For n", 00079 " dimensional simulation, first n axes should be spatial, in same order and", 00080 " with same step (but possibly different origin and length) as spatial axes", 00081 " of primary model grid. Axis n is time, specifies movie frame time interval", 00082 " time of first frame, and duration of simulation.", 00083 " ", 00084 " NOTE: at least one fwd output file (trace or movie) must be specified.", 00085 " ", 00086 " movie_p = <path> pressure", 00087 " movie_v0 = <path> z component of velocity", 00088 " movie_v1 = <path> x component of velocity", 00089 " movie_v2 = <path> y component of velocity", 00090 " ", 00091 " ------------------------------------------------------------------------", 00092 " Model info:", 00093 " ", 00094 " Basic modeling input:", 00095 " bulkmod = <path> input bulk modulus reference file, ", 00096 " determines simulation spatial grid,", 00097 " buoyancy = <path> input buoyancy (1/density) reference file, ", 00098 " must us same spatial grid as bulkmod", 00099 " Derivatives: ", 00100 " Forward derivative (linearized modeling): supply input model perturbations,", 00101 " one for each component for first derivative, two for second derivative.", 00102 " Keys for input perturbation files append _d1, _d2, etc. Thus second derivative", 00103 " requires bulkmod_d1, bulkdmod_d2, buoyancy_d1, buoyancy_d2, for example.", 00104 " ", 00105 " Adjoint derivatives (adjoint modeling, RTM): supply output model perturbations,", 00106 " one for each component for the first derivative, two for the second derivative.", 00107 " Keys for output perturbation files append _b1, _b2, etc.", 00108 " ", 00109 " NOTE: file format is RSF, and files (even output files!) must exist prior to ", 00110 " execution - header file supplies geometry, data file is input (forward) or ", 00111 " overwritten (adjoint)", 00112 " ", 00113 " ------------------------------------------------------------------------", 00114 " PML info:", 00115 " ", 00116 " nl[d], nr[d] = 0.0 left, right PML layer widths in dimension", 00117 " d = 1, 2, 3. If layer width on a face of the", 00118 " simulation hypercube is = 0, then Dirichlet", 00119 " (zero pressure) boundary condition is applied", 00120 " on that face. Effective absorption appears to", 00121 " require roughly 1/2 longest significant wave-", 00122 " length. Unit = m", 00123 " pmlampl = 1.0 multiplier of PML absorption profile. 1.0 ", 00124 " appears to work well with 1/2 wavelength layer.", 00125 " ", 00126 " ------------------------------------------------------------------------", 00127 " MPI info:", 00128 " ", 00129 " mpi_np1 = 1 number of subdomains along axis 1", 00130 " mpi_np2 = 1 number of subdomains along axis 2", 00131 " mpi_np3 = 1 number of subdomains along axis 3", 00132 " partask = 1 number of shots to execute in parallel", 00133 " ", 00134 " ------------------------------------------------------------------------", 00135 " Output info:", 00136 " ", 00137 " FD ouput - written to coutxxx.txt on rank xxx", 00138 " printact = 0 output at every time step", 00139 " 0 - none", 00140 " 1 - time step index", 00141 " 2 - diagnostic messages from main routines", 00142 " > 2 - much more, useful only for serious ", 00143 " debugging", 00144 " dump_pi = 0 dump parallel/dom. decomp info", 00145 " dump_lda = 0 dump grid data for allocated arrays", 00146 " dump_ldc = 0 dump grid data for computational arrays", 00147 " dump_ldr = 0 dump grid data for receive buffers", 00148 " dump_lds = 0 dump grid data for send buffers", 00149 " dump_term = 0 dump trace header data", 00150 " ", 00151 " ---------------------------end parameters ------------------------------", 00152 NULL }; 00153 00154 #endif