cosmo

front and backend for Markov-Chain Monte Carlo inversion of cosmogenic nuclide concentrations
git clone git://src.adamsgaard.dk/cosmo # fast
git clone https://src.adamsgaard.dk/cosmo.git # slow
Log | Files | Refs | README | LICENSE Back to index

history.html (27388B)


      1 <div class="section no-pad-bot" id="index-banner">
      2     <div class="container">
      3         <br><br>
      4         <!-- page header -->
      5         <h2 class="header center orange-text">Calculate Exposure and Erosion
      6             History</h2>
      7 
      8         <div class="row">
      9             <p class="flow-text">
     10             Please fill in the relevant information from a single sample below.
     11             The computations take several minutes, so make sure the information
     12             is correct before submitting. Click the 
     13             <a onclick="Materialize.toast('Help will appear here', 5000)">
     14                 <i class="material-icons">info_outline</i>
     15             </a>
     16             symbols for more information on the parameters and their input
     17             formats. Use dots (.) as decimal separators.
     18             </p>
     19         </div>
     20 
     21         <div class="row center">
     22             <div class="col s12 m12">
     23                 <input class="waves-effect waves-light btn"
     24                        id="prefill" type="button" value="Load 2 isotope example"
     25                                 onclick="PrefillMachine.prefillCorrectly();">
     26                 &nbsp;
     27                 <input class="waves-effect waves-light btn"
     28                        id="prefill" type="button" value="Load 4 isotope example"
     29                                 onclick="PrefillMachine2.prefillCorrectly2();">
     30             </div>
     31         </div>
     32         <br>
     33 
     34         <!--<div>
     35             <a class="btn" onclick="Materialize.toast('I am a toast', 5000)">
     36                 <i class="material-icons tooltipped prefix">info_outline</i>
     37             </a>-->
     38 
     39         <div class="row">
     40             <!-- method: GET or POST -->
     41             <form class="col s12" name="historyForm"
     42                 action="uploadhistory.php" method="POST">
     43                 <!--ng-submit="submitForm(userForm.$valid)" novalidate-->
     44                 <!--onsubmit="return validateForm()" method="POST">-->
     45 
     46                 <div class="row">
     47                     <b>General information</b><br>
     48                     <div class="input-field col s6 form group">
     49                         <a class="prefix">
     50                             <i class="material-icons"
     51                                 onclick="Materialize.toast(
     52                                 'String uniquely identifying the sample. All ' +
     53                                 'characters are accepted',
     54                                 5000)">info_outline</i></a>
     55                         <input placeholder="" id="sample_id" name="sample_id"
     56                         type="text" class="validate" required>
     57                         <label for="sample_id" class="active">Sample ID
     58                             <small>Required</small> </label>
     59                     </div>
     60                     <div class="input-field col s6">
     61                         <a class="prefix">
     62                             <i class="material-icons"
     63                                 onclick="Materialize.toast(
     64                                 'Your name is used for personal ' +
     65                                 'support communication if necessary',
     66                                 5000)">info_outline</i></a>
     67                         <input id="name" name="name" type="text"
     68                         class="validate" aria-describedby="name-format" required
     69                         aria-required="true">
     70                         <label for="name" class="active">Your Name
     71                             <small>Required</small></label>
     72                     </div>
     73                     <div class="input-field col s12">
     74                         <a class="prefix">
     75                             <i class="material-icons"
     76                                 onclick="Materialize.toast(
     77                                 'Used for communication in case of technical ' +
     78                                 'problems. No spam or exchange to third ' +
     79                                 'parties.', 5000)">info_outline</i></a>
     80                         <input id="email" name="email" type="email"
     81                         class="validate" required>
     82                         <label for="email" class="active">Email <small>Required</small></label>
     83                     </div>
     84                     <div class="input-field col s6">
     85                         <a class="prefix">
     86                             <i class="material-icons"
     87                                 onclick="Materialize.toast(
     88                                 'Latitude of sampling location. Used for ' +
     89                                 'anonymous statistical purposes. Format: ' +
     90                                 'signed degrees format (DDD.ddd). South ' +
     91                                 'latitudes must be preceded with a minus ' +
     92                                 'sign.',
     93                                 5000)">info_outline</i></a>
     94                         <input id="lat" name="lat" type="text"
     95                         class="validate" required>
     96                         <label for="lat" class="active">Latitude
     97                             <small>Required</small></label>
     98                     </div>
     99                     <div class="input-field col s6">
    100                         <a class="prefix">
    101                             <i class="material-icons"
    102                                 onclick="Materialize.toast(
    103                                 'Longitude of sampling location. Used for ' +
    104                                 'anonymous statistical purposes. Format: ' +
    105                                 'signed degrees format (DDD.ddd). West ' +
    106                                 'longitudes must be preceded with a minus ' +
    107                                 'sign.',
    108                                 5000)">info_outline</i></a>
    109                         <input id="long" name="long" type="text"
    110                         class="validate" required>
    111                         <label for="long" class="active">Longitude
    112                             <small>Required</small></label>
    113                     </div>
    114                 </div>
    115 
    116                 <div class="row">
    117                     <b>TCN sample depth(s) [m]</b><br>
    118                     Please specify the depth beneath terrain surface where the
    119                     samples are collected. It is assumed that the same 
    120                     TCN concentrations have been determined at all specified
    121                     depths. Enter multiple depths using comma separation.<br>
    122                     <div class="input-field col s12">
    123                         <input id="zobs" name="zobs" type="text"
    124                         class="validate">
    125                         <label for="zobs"
    126                             class="active">Sample depth(s)</label>
    127                     </div>
    128                 </div>
    129 
    130 
    131                 <div class="row">
    132                     <b>Concentrations of terrestrial cosmogenic nuclides (TCNs)
    133                         [atoms g<sup>-1</sup>]</b>&nbsp;<br>
    134                     For each sample depth specified above, please specify the
    135                     nuclide concentration(s).
    136                     Fill in <b>at least one</b> field, leave unknown values
    137                     blank. Scientific notation (e.g. 5.67e5) is recommended. If
    138                     several depths are entered above, enter the corresponding
    139                     isotope concentrations using comma separation.<br>
    140                     <div class="input-field col s3">
    141                         <input id="be_conc" name="be_conc" type="text"
    142                         class="validate">
    143                         <label for="be_conc" class="active">
    144                             <sup>10</sup>Be</label>
    145                     </div>
    146                     <div class="input-field col s3">
    147                         <input id="al_conc" name="al_conc" type="text"
    148                         class="validate">
    149                         <label for="al_conc" class="active">
    150                             <sup>26</sup>Al</label>
    151                     </div>
    152                     <div class="input-field col s3">
    153                         <input id="c_conc" name="c_conc" type="text"
    154                         class="validate">
    155                         <label for="c_conc" class="active">
    156                             <sup>14</sup>C</label>
    157                     </div>
    158                     <div class="input-field col s3">
    159                         <input id="ne_conc" name="ne_conc" type="text"
    160                         class="validate">
    161                         <label for="ne_conc" class="active">
    162                             <sup>21</sup>Ne</label>
    163                     </div>
    164                 </div>
    165 
    166                 <div class="row">
    167                     <b>TCN concentration uncertainty [%]</b><br>
    168                     For each TCN concentration inserted above, please specify
    169                     the percentwise concentration uncertainty.<br>
    170                     <div class="input-field col s3">
    171                         <input id="be_uncer" name="be_uncer" type="text"
    172                         class="validate">
    173                         <label for="be_uncer"
    174                             class="active"><sup>10</sup>Be</label>
    175                     </div>
    176                     <div class="input-field col s3">
    177                         <input id="al_uncer" name="al_uncer" type="text"
    178                         class="validate">
    179                         <label for="al_uncer"
    180                             class="active"><sup>26</sup>Al</label>
    181                     </div>
    182                     <div class="input-field col s3">
    183                         <input id="c_uncer" name="c_uncer" type="text"
    184                         class="validate">
    185                         <label for="c_uncer"
    186                             class="active"><sup>14</sup>C</label>
    187                     </div>
    188                     <div class="input-field col s3">
    189                         <input id="ne_uncer" name="ne_uncer" type="text"
    190                         class="validate">
    191                         <label for="ne_uncer"
    192                             class="active"><sup>21</sup>Ne</label>
    193                     </div>
    194                 </div>
    195 
    196                 <div class="row">
    197                     <b>TCN production rates (spallation) [atoms/g/yr]
    198                     </b>&nbsp;<br>
    199                     For each TCN concentration inserted above, please specify
    200                     the production rate by spallation.
    201                     Values can be estimated using <a
    202                         href="http://hess.ess.washington.edu"
    203                         target="_blank">CRONUS-Earth</a>.<br>
    204                     <div class="input-field col s3">
    205                         <input id="be_prod_spall" name="be_prod_spall"
    206                                                   type="text" class="validate">
    207                         <label for="be_prod_spall" class="active">
    208                             <sup>10</sup>Be</label>
    209                     </div>
    210                     <div class="input-field col s3">
    211                         <input id="al_prod_spall" name="al_prod_spall"
    212                                                   type="text" class="validate">
    213                         <label for="al_prod_spall" class="active">
    214                             <sup>26</sup>Al</label>
    215                     </div>
    216                     <div class="input-field col s3">
    217                         <input id="c_prod_spall" name="c_prod_spall"
    218                                                  type="text" class="validate">
    219                         <label for="c_prod_spall" class="active">
    220                             <sup>14</sup>C</label>
    221                     </div>
    222                     <div class="input-field col s3">
    223                         <input id="ne_prod_spall" name="ne_prod_spall"
    224                                                   type="text" class="validate">
    225                         <label for="ne_prod_spall" class="active">
    226                             <sup>21</sup>Ne</label>
    227                     </div>
    228                 </div>
    229 
    230                 <div class="row">
    231                     <b>TCN production rates (muons) [atoms/g/yr]
    232                     </b>&nbsp;<br>
    233                     For each TCN concentration inserted above, please specify
    234                     the total production rate by muons.
    235                     Values can be estimated using <a
    236                         href="http://hess.ess.washington.edu"
    237                         target="_blank">CRONUS-Earth</a>.<br>
    238                     <div class="input-field col s3">
    239                         <input id="be_prod_muons" name="be_prod_muons"
    240                                                   type="text" class="validate">
    241                         <label for="be_prod_muons" class="active">
    242                             <sup>10</sup>Be</label>
    243                     </div>
    244                     <div class="input-field col s3">
    245                         <input id="al_prod_muons" name="al_prod_muons"
    246                                                   type="text" class="validate">
    247                         <label for="al_prod_muons" class="active">
    248                             <sup>26</sup>Al</label>
    249                     </div>
    250                     <div class="input-field col s3">
    251                         <input id="c_prod_muons" name="c_prod_muons"
    252                                                  type="text" class="validate">
    253                         <label for="c_prod_muons" class="active">
    254                             <sup>14</sup>C</label>
    255                     </div>
    256                     <div class="input-field col s3">
    257                         <input id="ne_prod_muons" name="ne_prod_muons"
    258                                                   type="text" class="validate">
    259                         <label for="ne_prod_muons" class="active">
    260                             <sup>21</sup>Ne</label>
    261                     </div>
    262                 </div>
    263 
    264                 <div class="row">
    265                     <b>Rock density [kg m<sup>-3</sup>]</b><br>
    266                     <div class="input-field col s12">
    267                         <a class="prefix">
    268                             <i class="material-icons"
    269                                 onclick="Materialize.toast(
    270                                 'Measured or estimated rock density',
    271                                 5000)">info_outline</i></a>
    272                         <input id="rock_density" name="rock_density" type="text"
    273                         class="validate" required>
    274                         <!--class="validate" value="2650" required>-->
    275                         <label for="rock_density" class="active">Density
    276                             <small>Required</small></label>
    277                     </div>
    278                 </div>
    279 
    280                 <div class="row">
    281                     <b>Erosion rate limits during glacials and
    282                         interglacials</b><br><br>
    283                     <div class="input-field col s6">
    284                         <a class="prefix">
    285                             <i class="material-icons"
    286                                 onclick="Materialize.toast(
    287                                 'Lowest possible erosion rate during ' +
    288                                 'glaciations', 5000)">info_outline</i></a>
    289                         <input id="epsilon_gla_min" name="epsilon_gla_min"
    290                         type="text" class="validate" required>
    291                         <label for="epsilon_gla_min" class="active">
    292                             Min. glacial erosion rate
    293                             [m Myr<sup>-1</sup>] <small>Required</small></label>
    294                     </div>
    295                     <div class="input-field col s6">
    296                         <a class="prefix">
    297                             <i class="material-icons"
    298                                 onclick="Materialize.toast(
    299                                 'Highest possible erosion rate during ' +
    300                                 'glaciations', 5000)">info_outline</i></a>
    301                         <input id="epsilon_gla_max" name="epsilon_gla_max"
    302                         type="text" class="validate" required>
    303                         <label for="epsilon_gla_max" class="active">
    304                             Max. glacial erosion rate
    305                             [m Myr<sup>-1</sup>] <small>Required</small></label>
    306                     </div>
    307                 </div>
    308                 <div class="row">
    309                     <div class="input-field col s6">
    310                         <a class="prefix">
    311                             <i class="material-icons"
    312                                 onclick="Materialize.toast(
    313                                 'Lowest possible erosion rate during ' +
    314                                 'interglaciations', 5000)">info_outline</i></a>
    315                         <input id="epsilon_int_min" name="epsilon_int_min"
    316                         type="text" class="validate" required>
    317                         <label for="epsilon_int_min" class="active">
    318                             Min. inter-glacial erosion
    319                             rate [m Myr<sup>-1</sup>]
    320                             <small>Required</small></label>
    321                     </div>
    322                     <div class="input-field col s6">
    323                         <a class="prefix">
    324                             <i class="material-icons"
    325                                 onclick="Materialize.toast(
    326                                 'Highest possible erosion rate during ' +
    327                                 'interglaciations', 5000)">info_outline</i></a>
    328                         <input id="epsilon_int_max" name="epsilon_int_max"
    329                         type="text" class="validate" required>
    330                         <label for="epsilon_int_max" class="active">
    331                             Max. inter-glacial erosion
    332                             rate [m Myr<sup>-1</sup>]
    333                             <small>Required</small></label>
    334                     </div>
    335 
    336                 </div>
    337                 <div class="row">
    338                     <b>Deglaciation age</b><br>
    339                     Estimate the lower and upper bounds for the deglaciation age
    340                     at the site of sampling. This value is most often
    341                     constrained from best knowledge, <sup>14</sup>C dating, or
    342                     traditional exposure dating.<br><br>
    343                     <div class="input-field col s6">
    344                         <a class="prefix">
    345                             <i class="material-icons"
    346                                 onclick="Materialize.toast(
    347                                 'Minimum estimated number of years since the ' +
    348                                 'deglaciation at the site of sampling',
    349                                 5000)">info_outline</i></a>
    350                         <input id="t_degla_min" name="t_degla_min" type="text"
    351                         class="validate" required>
    352                         <label for="t_degla_min" class="active">
    353                             Min. time since deglaciation
    354                             [yr] <small>Required</small></label>
    355                     </div>
    356                     <div class="input-field col s6">
    357                         <a class="prefix">
    358                             <i class="material-icons"
    359                                 onclick="Materialize.toast(
    360                                 'Maximum estimated number of years since the ' +
    361                                 'deglaciation at the site of sampling',
    362                                 5000)">info_outline</i></a>
    363                         <input id="t_degla_max" name="t_degla_max"
    364                         type="text" class="validate" required>
    365                         <label for="t_degla_max" class="active">
    366                             Max. time since declaciation
    367                             [yr] <small>Required</small></label>
    368                     </div>
    369 
    370                 </div>
    371 
    372                 <div class="row">
    373                     <b>Climate record</b> <small>Required</small><br>
    374                     The evolution between glacials and interglacials is expected
    375                     to follow a climate record.                     You may use
    376                     one of the global marine records below, or upload your own
    377                     record. Smoothed records have fewer short-lived peaks and
    378                     troughs.
    379                         <p>
    380                         <input name="record" type="radio" id="rec_5kyr"
    381                         value="rec_5kyr" checked>
    382                         <label for="rec_5kyr" class="active">
    383                             Benthic &delta;<sup>18</sup>O
    384                             record (<a
    385                                 href="http://onlinelibrary.wiley.com/doi/10.1029/2004PA001071/full"
    386                                 target="_blank">Lisiecki and Raymo, 2005</a>,
    387                             triangular smoothing, 5 kyr width)</label>
    388                         </p>
    389                         <p>
    390                         <input name="record" type="radio" id="rec_20kyr"
    391                         value="rec_20kyr">
    392                         <label for="rec_20kyr">Benthic &delta;<sup>18</sup>O
    393                             record (<a
    394                                 href="http://onlinelibrary.wiley.com/doi/10.1029/2004PA001071/full"
    395                                 target="_blank">Lisiecki and Raymo, 2005</a>,
    396                             triangular smoothing, 20 kyr width)</label>
    397                         </p>
    398                         <p>
    399                         <input name="record" type="radio" id="rec_30kyr"
    400                         value="rec_30kyr">
    401                         <label for="rec_30kyr">Benthic &delta;<sup>18</sup>O
    402                             record (<a
    403                                 href="http://onlinelibrary.wiley.com/doi/10.1029/2004PA001071/full"
    404                                 target="_blank">Lisiecki and Raymo, 2005</a>,
    405                             triangular smoothing, 30 kyr width)</label>
    406                         </p>
    407                         <p>
    408                         <input name="record" type="radio" id="rec_own"
    409                         value="rec_own" disabled="disabled">
    410                         <label for="rec_own">Upload own record
    411                         <a class="prefix">
    412                             <i class="material-icons"
    413                                 onclick="Materialize.toast(
    414                                 'TODO: format specification',
    415                                 5000)">info_outline</i></a>
    416                         
    417                         </label>
    418                         </p>
    419                 </div>
    420                 <div class="row">
    421                     <b>Climate record threshold limits</b><br>
    422                     The erosion rate is expected to alter between glacial and
    423                     interglacial values when the climate record passes an
    424                     unknown threshold value. Specify realistic lower and upper
    425                     limits for this threshold value below.<br>
    426                     <div class="input-field col s6">
    427                         <a class="prefix">
    428                             <i class="material-icons"
    429                                 onclick="Materialize.toast(
    430                                 'Lower limit of threshold value in climate ' +
    431                                 'record', 5000)">info_outline</i></a>
    432                         <input id="record_threshold_min"
    433                                name="record_threshold_min"
    434                                type="text" class="validate" required>
    435                         <label for="record_threshold_min" class="active">Min.
    436                             &delta;<sup>18</sup>O threshold value [&permil;]
    437                             <small>Required</small></label>
    438                     </div>
    439                     <div class="input-field col s6">
    440                         <a class="prefix">
    441                             <i class="material-icons"
    442                                 onclick="Materialize.toast(
    443                                 'Upper limit of threshold value in climate ' +
    444                                 'record', 5000)">info_outline</i></a>
    445                         <input id="record_threshold_max"
    446                                name="record_threshold_max"
    447                                type="text" class="validate" required>
    448                         <label for="record_threshold_max" class="active">Max.
    449                             &delta;<sup>18</sup>O threshold value [&permil;]
    450                             <small>Required</small></label>
    451                     </div>
    452                 </div>
    453 
    454                 <div class="row">
    455                     <b>Number of inversion walkers</b><br>
    456                     Choose the desired number of Metropolis-Hastings
    457                     Markov-Chain Monte Carlo random walkers. Low values produce
    458                     results quickly, while more walkers can indicate uniqueness
    459                     and certainty of the solution. Approximate computation time
    460                     is 2 minutes per walker.<br>
    461                     <div class="input-field col s6">
    462                         <select name="nwalkers">
    463                             <option value="1">1 walker</option>
    464                             <option value="2" selected>2 walkers</option>
    465                             <option value="3">3 walkers</option>
    466                             <option value="4">4 walkers</option>
    467                         </select>
    468                         <label>Number of MCMC walkers</label>
    469                     </div>
    470                 </div>
    471                 <script type="text/javascript">
    472 // initialize select elements
    473 $(document).ready(function() {
    474     $('select').material_select();
    475 });
    476                 </script>
    477 
    478                 <!-- Google reCAPTCHA -->
    479                 <div class="row">
    480                     <b>To verify that this is not an automated request, please
    481                         complete the following reCAPTCHA challenge</b><br><br>
    482                     <div class="g-recaptcha"
    483                          data-sitekey="6LeMrRATAAAAAF7YHequ2Az9UzuHuwi9NUvjZgRZ">
    484                     </div>
    485                     <script type="text/javascript"
    486                             src="https://www.google.com/recaptcha/api.js">
    487                     </script>
    488                 </div>
    489 
    490                 <div class="row">
    491                     <div class="right">
    492                         <button class="btn waves-effect waves-light"
    493                             type="submit" name="action">Next
    494                             <i class="material-icons right">send</i>
    495                         </button>
    496                     </div>
    497                 </div>
    498 
    499             </form>
    500         </div>
    501 
    502     </div>
    503 
    504     <script type="text/javascript">
    505         function nonBlankField(field, name) {
    506             var x = document.forms["historyForm"][field].value;
    507             if (x == null || x == "") {
    508                 alert(name + " must be filled out");
    509                 return false;
    510             }
    511         }
    512         function validateForm() {
    513             if (nonBlankField("sample_id", "Sample ID") ||
    514                     nonBlankField("name", "Your Name") ||
    515                     nonBlankField("email", "Email") ||
    516                     nonBlankField("lat", "Latitude") ||
    517                     nonBlankField("long", "Longitude")) {
    518                 return false;
    519             }
    520 
    521         }
    522     </script>
    523 
    524 </div>
    525 <div class="fixed-action-btn" style="top: 26px; right: 12px;">
    526     <a href="#/" class="btn-floating btn-large red">
    527         back
    528     </a>
    529 </div>