Browse Source

initial commit

Hans Vangheluwe 6 years ago
parent
commit
55663afe41

File diff suppressed because it is too large
+ 499 - 0
bibliography.bib


BIN
denotational_rule.png


BIN
devs_acceleration.pdf


File diff suppressed because it is too large
+ 706 - 0
devs_acceleration.svg


BIN
devs_overview.pdf


+ 501 - 0
devs_overview.svg

@@ -0,0 +1,501 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg3163"
+   version="1.1"
+   inkscape:version="0.92.2 (5c3e80d, 2017-08-06)"
+   width="701.52411"
+   height="86.388451"
+   sodipodi:docname="devs_overview.svg">
+  <metadata
+     id="metadata3169">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs3167" />
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1920"
+     inkscape:window-height="1017"
+     id="namedview3165"
+     showgrid="false"
+     inkscape:zoom="1.4927816"
+     inkscape:cx="396.35486"
+     inkscape:cy="30.523848"
+     inkscape:window-x="-8"
+     inkscape:window-y="-8"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="svg3163"
+     fit-margin-top="0"
+     fit-margin-left="0"
+     fit-margin-right="0"
+     fit-margin-bottom="0" />
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#0000ff;fill-opacity:1;stroke:none"
+     x="54.543491"
+     y="15.281261"
+     id="text3179"><tspan
+       sodipodi:role="line"
+       id="tspan3181"
+       x="54.543491"
+       y="15.281261"
+       style="font-size:13px;line-height:1.25">Q_send</tspan></text>
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#0000ff;fill-opacity:1;stroke:none"
+     x="54.543491"
+     y="30.282894"
+     id="text3179-6"><tspan
+       sodipodi:role="line"
+       id="tspan3181-0"
+       x="54.543491"
+       y="30.282894"
+       style="font-size:13px;line-height:1.25">Q_rack</tspan></text>
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#ff0000;fill-opacity:1;stroke:none"
+     x="44.156239"
+     y="78.53688"
+     id="text3972"><tspan
+       sodipodi:role="line"
+       id="tspan3974"
+       x="44.156239"
+       y="78.53688"
+       style="font-size:13px;line-height:1.25">train_out</tspan></text>
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none"
+     x="21.600346"
+     y="47.824722"
+     id="text3976"><tspan
+       sodipodi:role="line"
+       id="tspan3978"
+       x="21.600346"
+       y="47.824722"
+       style="font-size:13px;line-height:1.25">Generator</tspan></text>
+  <path
+     style="color:#000000;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+     d="m 108.29656,85.888451 0,-85.38845 c 0,0 -45.966145,0 -66.081995,0 -20.11585,0 -41.66320006,22.80602 -41.71448006,42.694224 -0.0513,19.888201 23.14610006,42.694226 41.71448006,42.694226 18.56837,0 66.081995,0 66.081995,0 z"
+     id="path3982"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="cczzzc" />
+  <rect
+     style="fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-opacity:1"
+     id="rect3997"
+     width="2.9348528"
+     height="8.8045578"
+     x="105.36172"
+     y="6.2097282" />
+  <rect
+     style="fill:#ffffff;fill-opacity:1;stroke:#0000ff;stroke-opacity:1"
+     id="rect3997-3"
+     width="2.9348528"
+     height="8.8045578"
+     x="105.36172"
+     y="21.091404" />
+  <rect
+     style="fill:#ff0000;fill-opacity:1;stroke:#ff0000;stroke-opacity:1"
+     id="rect3997-0"
+     width="2.9348528"
+     height="8.8045578"
+     x="105.36172"
+     y="70.342377" />
+  <path
+     style="color:#000000;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+     d="m 155.23723,0.500001 0,85.38845 167.83516,0 0,-85.38845 z"
+     id="path3984"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="ccccc" />
+  <g
+     id="g4190"
+     transform="translate(49.517945,134.86127)">
+    <text
+       id="text3179-3"
+       y="-119.92484"
+       x="219.80138"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#0000ff;fill-opacity:1;stroke:none"
+       xml:space="preserve"><tspan
+         y="-119.92484"
+         x="219.80138"
+         id="tspan3181-8"
+         sodipodi:role="line"
+         style="font-size:13px;line-height:1.25">Q_send</tspan></text>
+    <rect
+       y="-128.99637"
+       x="270.6196"
+       height="8.8045578"
+       width="2.9348528"
+       id="rect3997-07"
+       style="fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-opacity:1" />
+  </g>
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#0000ff;fill-opacity:1;stroke:none"
+     x="269.31931"
+     y="29.938084"
+     id="text3179-6-4"><tspan
+       sodipodi:role="line"
+       id="tspan3181-0-0"
+       x="269.31931"
+       y="29.938084"
+       style="font-size:13px;line-height:1.25">Q_rack</tspan></text>
+  <rect
+     style="fill:#ffffff;fill-opacity:1;stroke:#0000ff;stroke-opacity:1"
+     id="rect3997-3-8"
+     width="2.9348528"
+     height="8.8045578"
+     x="320.13754"
+     y="20.746578" />
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#ff0000;fill-opacity:1;stroke:none"
+     x="257.73221"
+     y="78.192062"
+     id="text3972-1"><tspan
+       sodipodi:role="line"
+       id="tspan3974-5"
+       x="257.73221"
+       y="78.192062"
+       style="font-size:13px;line-height:1.25">train_out</tspan></text>
+  <rect
+     style="fill:#ff0000;fill-opacity:1;stroke:#ff0000;stroke-opacity:1"
+     id="rect3997-0-3"
+     width="2.9348528"
+     height="8.8045578"
+     x="320.13754"
+     y="69.997559" />
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none"
+     x="197.50665"
+     y="52.835251"
+     id="text4205"><tspan
+       sodipodi:role="line"
+       id="tspan4207"
+       x="197.50665"
+       y="52.835251"
+       style="font-size:13px;line-height:1.25">RailwaySegment</tspan></text>
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#0000ff;fill-opacity:1;stroke:none"
+     x="162.18549"
+     y="14.574924"
+     id="text3179-3-1"><tspan
+       sodipodi:role="line"
+       id="tspan3181-8-4"
+       x="162.18549"
+       y="14.574924"
+       style="font-size:13px;line-height:1.25">Q_recv</tspan></text>
+  <rect
+     style="fill:#ffffff;fill-opacity:1;stroke:#0000ff;stroke-opacity:1"
+     id="rect3997-07-3"
+     width="2.9348528"
+     height="8.8045578"
+     x="155.23724"
+     y="5.5033836" />
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#0000ff;fill-opacity:1;stroke:none"
+     x="162.18549"
+     y="29.576572"
+     id="text3179-6-4-5"><tspan
+       sodipodi:role="line"
+       id="tspan3181-0-0-4"
+       x="162.18549"
+       y="29.576572"
+       style="font-size:13px;line-height:1.25">Q_sack</tspan></text>
+  <rect
+     style="fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-opacity:1"
+     id="rect3997-3-8-2"
+     width="2.9348528"
+     height="8.8045578"
+     x="155.23724"
+     y="20.385075" />
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#ff0000;fill-opacity:1;stroke:none"
+     x="162.19818"
+     y="77.830559"
+     id="text3972-1-0"><tspan
+       sodipodi:role="line"
+       id="tspan3974-5-5"
+       x="162.19818"
+       y="77.830559"
+       style="font-size:13px;line-height:1.25">train_in</tspan></text>
+  <rect
+     style="fill:#ffffff;fill-opacity:1;stroke:#ff0000;stroke-opacity:1"
+     id="rect3997-0-3-0"
+     width="2.9348528"
+     height="8.8045578"
+     x="155.23724"
+     y="69.636047" />
+  <path
+     style="color:#000000;fill:none;stroke:#0000ff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+     d="m 108.81657,25.394441 46.70457,0"
+     id="path4341"
+     inkscape:connector-curvature="0" />
+  <path
+     style="color:#000000;fill:none;stroke:#0000ff;stroke-width:1.00486124;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+     d="m 108.56948,9.994441 46.29971,0"
+     id="path4343"
+     inkscape:connector-curvature="0" />
+  <path
+     style="color:#000000;fill:none;stroke:#ff0000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+     d="m 108.67461,74.494441 46.13674,0"
+     id="path4345"
+     inkscape:connector-curvature="0" />
+  <path
+     style="color:#000000;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+     d="m 369.77237,0.500001 0,85.38845 167.83516,0 0,-85.38845 z"
+     id="path3984-4"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="ccccc" />
+  <g
+     id="g4190-8"
+     transform="translate(264.05308,134.86127)">
+    <text
+       id="text3179-3-14"
+       y="-119.92484"
+       x="219.80138"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#0000ff;fill-opacity:1;stroke:none"
+       xml:space="preserve"><tspan
+         y="-119.92484"
+         x="219.80138"
+         id="tspan3181-8-7"
+         sodipodi:role="line"
+         style="font-size:13px;line-height:1.25">Q_send</tspan></text>
+    <rect
+       y="-128.99637"
+       x="270.6196"
+       height="8.8045578"
+       width="2.9348528"
+       id="rect3997-07-5"
+       style="fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-opacity:1" />
+  </g>
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#0000ff;fill-opacity:1;stroke:none"
+     x="483.85449"
+     y="29.938084"
+     id="text3179-6-4-7"><tspan
+       sodipodi:role="line"
+       id="tspan3181-0-0-0"
+       x="483.85449"
+       y="29.938084"
+       style="font-size:13px;line-height:1.25">Q_rack</tspan></text>
+  <rect
+     style="fill:#ffffff;fill-opacity:1;stroke:#0000ff;stroke-opacity:1"
+     id="rect3997-3-8-8"
+     width="2.9348528"
+     height="8.8045578"
+     x="534.67267"
+     y="20.746578" />
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#ff0000;fill-opacity:1;stroke:none"
+     x="472.06726"
+     y="78.192062"
+     id="text3972-1-01"><tspan
+       sodipodi:role="line"
+       id="tspan3974-5-9"
+       x="472.06726"
+       y="78.192062"
+       style="font-size:13px;line-height:1.25">train_out</tspan></text>
+  <rect
+     style="fill:#ff0000;fill-opacity:1;stroke:#ff0000;stroke-opacity:1"
+     id="rect3997-0-3-08"
+     width="2.9348528"
+     height="8.8045578"
+     x="534.67267"
+     y="69.997559" />
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none"
+     x="412.04181"
+     y="52.835251"
+     id="text4205-7"><tspan
+       sodipodi:role="line"
+       id="tspan4207-5"
+       x="412.04181"
+       y="52.835251"
+       style="font-size:13px;line-height:1.25">RailwaySegment</tspan></text>
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#0000ff;fill-opacity:1;stroke:none"
+     x="376.72064"
+     y="14.574924"
+     id="text3179-3-1-4"><tspan
+       sodipodi:role="line"
+       id="tspan3181-8-4-0"
+       x="376.72064"
+       y="14.574924"
+       style="font-size:13px;line-height:1.25">Q_recv</tspan></text>
+  <rect
+     style="fill:#ffffff;fill-opacity:1;stroke:#0000ff;stroke-opacity:1"
+     id="rect3997-07-3-1"
+     width="2.9348528"
+     height="8.8045578"
+     x="369.77237"
+     y="5.5033836" />
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#0000ff;fill-opacity:1;stroke:none"
+     x="376.72064"
+     y="29.576572"
+     id="text3179-6-4-5-9"><tspan
+       sodipodi:role="line"
+       id="tspan3181-0-0-4-7"
+       x="376.72064"
+       y="29.576572"
+       style="font-size:13px;line-height:1.25">Q_sack</tspan></text>
+  <rect
+     style="fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-opacity:1"
+     id="rect3997-3-8-2-7"
+     width="2.9348528"
+     height="8.8045578"
+     x="369.77237"
+     y="20.385075" />
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#ff0000;fill-opacity:1;stroke:none"
+     x="376.73334"
+     y="77.830559"
+     id="text3972-1-0-3"><tspan
+       sodipodi:role="line"
+       id="tspan3974-5-5-9"
+       x="376.73334"
+       y="77.830559"
+       style="font-size:13px;line-height:1.25">train_in</tspan></text>
+  <rect
+     style="fill:#ffffff;fill-opacity:1;stroke:#ff0000;stroke-opacity:1"
+     id="rect3997-0-3-0-6"
+     width="2.9348528"
+     height="8.8045578"
+     x="369.77237"
+     y="69.636047" />
+  <path
+     style="color:#000000;fill:none;stroke:#0000ff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+     d="m 323.35171,10.863011 46.70457,0"
+     id="path4341-5"
+     inkscape:connector-curvature="0" />
+  <path
+     style="color:#000000;fill:none;stroke:#0000ff;stroke-width:1.00243354;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+     d="m 323.35171,25.484811 46.07627,0"
+     id="path4343-4"
+     inkscape:connector-curvature="0" />
+  <path
+     style="color:#000000;fill:none;stroke:#ff0000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+     d="m 323.20975,75.028571 46.13674,0"
+     id="path4345-8"
+     inkscape:connector-curvature="0" />
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#ff0000;fill-opacity:1;stroke:none"
+     x="599.88361"
+     y="78.536873"
+     id="text3972-6"><tspan
+       sodipodi:role="line"
+       id="tspan3974-2"
+       x="599.88361"
+       y="78.536873"
+       style="font-size:13px;line-height:1.25">train_in</tspan></text>
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none"
+     x="614.32788"
+     y="47.824715"
+     id="text3976-4"><tspan
+       sodipodi:role="line"
+       id="tspan3978-5"
+       x="614.32788"
+       y="47.824715"
+       style="font-size:13px;line-height:1.25">Collector</tspan></text>
+  <path
+     style="color:#000000;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+     d="m 593.22753,85.888451 0,-85.388451 c 0,0 45.96615,0 66.082,0 20.11585,0 41.6632,22.80602 41.71448,42.694224 0.0513,19.888201 -23.1461,42.694227 -41.71448,42.694227 -18.56837,0 -66.082,0 -66.082,0 z"
+     id="path3982-2"
+     inkscape:connector-curvature="0"
+     sodipodi:nodetypes="cczzzc" />
+  <rect
+     style="fill:#ffffff;fill-opacity:1;stroke:#ff0000;stroke-opacity:1"
+     id="rect3997-0-4"
+     width="2.9348528"
+     height="8.8045578"
+     x="593.22754"
+     y="70.342369" />
+  <path
+     style="color:#000000;fill:none;stroke:#ff0000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+     d="m 537.95919,73.892896 55.08017,0"
+     id="path4753"
+     inkscape:connector-curvature="0" />
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#0000ff;fill-opacity:1;stroke:none"
+     x="600.17438"
+     y="14.395508"
+     id="text3179-3-1-4-1"><tspan
+       sodipodi:role="line"
+       id="tspan3181-8-4-0-6"
+       x="600.17438"
+       y="14.395508"
+       style="font-size:13px;line-height:1.25">Q_recv</tspan></text>
+  <rect
+     style="fill:#ffffff;fill-opacity:1;stroke:#0000ff;stroke-opacity:1"
+     id="rect3997-07-3-1-4"
+     width="2.9348528"
+     height="8.8045578"
+     x="593.22607"
+     y="5.3239689" />
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:0%;font-family:'DejaVu Sans';-inkscape-font-specification:Sans;text-align:start;text-anchor:start;fill:#0000ff;fill-opacity:1;stroke:none"
+     x="600.17438"
+     y="29.397156"
+     id="text3179-6-4-5-9-1"><tspan
+       sodipodi:role="line"
+       id="tspan3181-0-0-4-7-3"
+       x="600.17438"
+       y="29.397156"
+       style="font-size:13px;line-height:1.25">Q_sack</tspan></text>
+  <rect
+     style="fill:#0000ff;fill-opacity:1;stroke:#0000ff;stroke-opacity:1"
+     id="rect3997-3-8-2-7-3"
+     width="2.9348528"
+     height="8.8045578"
+     x="593.22607"
+     y="20.205658" />
+  <path
+     style="color:#000000;fill:none;stroke:#0000ff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+     d="m 537.60406,10.683598 55.90591,0"
+     id="path4341-5-2"
+     inkscape:connector-curvature="0" />
+  <path
+     style="color:#000000;fill:none;stroke:#0000ff;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
+     d="m 537.88659,25.305397 55.12274,0"
+     id="path4343-4-0"
+     inkscape:connector-curvature="0" />
+</svg>

BIN
example_model.png


BIN
figure1.pdf


BIN
literature/2002_p597-vangheluwe.pdf


BIN
literature/2003_p595-vangheluwe.pdf


BIN
literature/2004_p249-vangheluwe.pdf


BIN
operational_rule.png


BIN
problem.pdf


File diff suppressed because it is too large
+ 1104 - 0
problem.svg


BIN
proposal.pdf


BIN
simulation_results.png


BIN
train_concretesyntax.png


BIN
train_metamodel.png


File diff suppressed because it is too large
+ 1669 - 0
wsc.bst


+ 513 - 0
wsc.sty

@@ -0,0 +1,513 @@
+%*******************************************************************************
+%*
+%* ***WSC Style File - Base for LaTeX Papers for the WinterSim ***
+%*
+% Contains basic style elements valid for papers and for poster abstracts
+%
+%*
+%
+% HISTORY
+%
+% WSC 2012
+%  * fixed author font size bug
+% WSC 2011 - created this style file based on the templates for WSC 2010
+%  * outdated fancyheadings is from now on replaced by fancyhdr
+%  * introduced sections, added comments
+%  * includes wscsetup.sty -> contains year specific information (editors, etc ...)
+%  * modified page layout, line distances, paragraphs, itemize environments, etc to get closer to word
+%      template style
+%  * introduced command WSCpagesetup (author names) which setups the running header and many
+%      other things previously needed in each paper's first lines of document code
+%
+%
+% --------------------------------- REQUIRED PACKAGES ---------------------------------
+% This package is required for setting up the running page header (author names)
+\RequirePackage{fancyhdr}
+
+% WSC parameter setup (editors, year, proceedings name)
+\RequirePackage{wscsetup}
+
+% select times font (by including this here it will be hard for authors to change, font will be used in the end in anyway)
+\RequirePackage{times}
+
+% package for displaying urls
+\RequirePackage{url}
+% select times font for the url package
+\urlstyle{rm}
+
+% ?
+\def\draft{\overfullrule=6pt}
+
+% --------------------------------- SPECIAL COMMANDS ---------------------------------
+%Print an email address in the required style
+\def\email#1{\href{mailto://#1}{#1}}
+
+% No one needs to use the following commands, but if they are used they help to avoid the problem of using figure, table, and section instead of Figure, Table, and Section
+
+%Print Figure followed by the mark generated for the label passed
+\def\reffig#1{Figure~\ref{#1}}
+
+%Print Table followed by the mark generated for the label passed
+\def\reftab#1{Table~\ref{#1}}
+
+%Print Section followed by the mark generated for the label passed
+\def\refsec#1{Section~\ref{#1}}
+
+
+% --------------------------------- PAGE SETUP  ---------------------------------
+
+%\RequirePackage[nofoot,letterpaper,lmargin=1in,tmargin=1in,rmargin=1in,bmargin=1in]{geometry}
+
+\setlength\footskip{75\p@}
+
+%The width of the text area is 6.5 inches (16.0 cm)
+\setlength\textwidth{6.5in}
+
+%new for WSC-10
+\setlength\textheight{8.75in} %9.0125in
+%\setlength\textheight{8.76in}  %
+%\headsep=12pt
+\headsep=12pt
+%\headheight = 11pt
+
+%left and right margins are 1 inch (2.54 cm)
+\setlength\oddsidemargin{0in}%{-0.2in}
+\setlength\evensidemargin{0in}%{-0.1in}
+%\setlength\oddsidemargin{-.25in} \setlength\evensidemargin{-.25in}
+
+\setlength\marginparwidth {\z@}
+
+%top margin is set to be 1 inch (2.54 cm)
+%\setlength\topmargin{2.54cm}%{-4pc}%
+%\setlength\topmargin{-2pc}
+%\setlength\topmargin{-19pt}
+\setlength\topmargin{-21.89pt}   % JRW Edit 2/12/13
+\setlength\columnsep{.375in}
+
+%\pdfpagewidth 8.5in
+%\pdfpageheight 11.0in
+
+% --------------------------------- FLOAT SETUP  ---------------------------------
+% Setting the spaces around float (i.e, Figures, Tables etc ...)
+
+
+% distance between two floats
+\setlength{\floatsep}{12pt}
+% dynamic variant (more flexibel) \setlength\floatsep    {12\p@\@plus 2\p@ minus 2pt}
+
+% distance between float and text (above & below)
+\setlength{\textfloatsep}{6pt}
+%\setlength\textfloatsep{12\p@ \@plus 2\p@minus 2pt}
+
+%\textfloatsep - space between last top float or first bottom float and the text
+% space left on top and bottom of an in-text float.
+\setlength{\intextsep}{6pt}
+% \setlength\intextsep   {12\p@ \@plus 2\p@ minus 2pt}
+
+% space above caption
+\setlength{\abovecaptionskip}{6pt}
+% space below caption
+\setlength{\belowcaptionskip}{6pt}
+
+\setcounter{dbltopnumber}{4}
+
+\setcounter{topnumber}{4}
+
+% settings for two column mode - distance between floats
+\setlength{\dblfloatsep}{6pt}
+% settings for two column mode - distance between float and text
+\setlength{\dbltextfloatsep}{6pt}
+
+% --------------------------------- FONT SETUP  ---------------------------------
+
+%\font\titlepageheadfont=tii at 10pt
+
+% --------------------------------- NAMES SETUP  ---------------------------------
+\renewcommand{\refname}{REFERENCES}
+\newcommand\pagename{Page}
+
+% --------------------------------- SPECIAL WORDS
+\newcommand{\BibTeX}{B{\small IB}$\!$\TeX}
+
+% --------------------------------- HEADER SETUP  ---------------------------------
+% --- header of first page (including proceedings caption and names of editors) ---
+% moving up 1st header by approx 6mm to match word template
+\def\firstPageHead {
+  %increase the head height for the two lines editors/proceedings header (to avoid warning by fancyhdr)
+  \setlength{\headheight}{26pt}
+ %setup the header (left, italics containing proceedings caption and editors in 2nd row)
+  \lhead{
+  \fancyplain{
+   \textit{\currentCaption\\
+      \currentEditors , eds.}}{}}
+} % end of firstPageHead definition
+
+%****WSC setup for Running Heads of LaTeX Papers from second page on***
+\def\WSCpagesetup#1{
+
+% setting up general page style
+\pagestyle{fancyplain}
+
+% setting up page style of first page
+\thispagestyle{plain}
+\firstPageHead{}
+
+% setting up running header (authors) of subsequent pages
+\chead{\fancyplain{}{\itshape #1}}
+
+% setting up seperation parameters
+%\headsep=72pt
+\rhead{}
+\cfoot{}
+\renewcommand{\headrulewidth}{0pt} % (renewcommand needed in fancyhdr to remove top decorative line)
+%\headrulewidth=0pt  % ("setlength" needed in fancyheading to remove top decorative line)
+
+\input{wscbib.tex}           % Set up BiBTeX macros
+
+% needed to make the tex document look more like the word counterpart :-(
+\setlength{\baselineskip}{12.7pt}
+}
+
+% --------------------------------- TITLE SETUP  ---------------------------------
+% *** WSC formatting of the title (redefinition of title command)
+\renewcommand\title[1]{\gdef\@title{\bf #1}}
+
+%space between title and the abstract, this case has been set to be 3.4 inches (two rows of authors).
+\newlength{\titlevboxsize}
+\setlength\titlevboxsize {3.4in}
+
+\def\authors#1{\gdef\theauthors{#1}}
+\let\aauthor\authors
+
+%definition of maketitle
+
+\def\maketitle{\par\global\titletrue
+ \begingroup
+   \renewcommand\thefootnote{\fnsymbol{footnote}}%
+    \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}%
+     \long\def\@makefntext##1{\parindent 1em\noindent
+             \hb@xt@1.8em{%
+                 \hss\@textsuperscript{\normalfont\@thefnmark}}##1}%
+  % \twocolumn[\@maketitle]%
+
+\@maketitle
+   \@thanks
+ \endgroup
+ \setcounter{footnote}{0}%
+ \let\maketitle\relax
+ \let\@maketitle\relax
+ \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax}
+
+\def\@maketitle{%
+%\hbox to \titlevboxsize
+% \vbox  to \titlevboxsize
+
+   %Space between header and title
+   %\vskip 2pc % 1 pc = 12 pt
+{ \vspace*{1.5mm} %8.2mm
+    \hsize\textwidth
+    \linewidth\hsize
+%    \vfil
+    \centering
+    { \@title \par}
+    \vskip 24pt%Controls Text Between Title and Authors
+    { \begin{tabular}[t]{@{}c@{}}\@author \\
+\vrule width 3in height 0pt depth0pt\relax\end{tabular}\par %new for WSC-10: space between authors has been reduced to have the text of 6.5 inches
+
+}\vskip 12pt} }
+%\vrule width 3.5in height 0pt depth0pt\relax\end{tabular}\par
+
+% definition of \and
+
+\def\and{\\
+ \vrule width 3in height 0pt depth0pt\relax %new for WSC-10: space between authors has been reduced to have the text of 6.5 inches
+% \vrule width 3.5in height 0pt depth0pt\relax
+\end {tabular}\hfill%
+\begin{tabular}[t]{@{}c@{}}}
+
+% --------------------------------- EASY AUTHOR BIOGRAPHIES ---------------------------------
+
+\def\addBio#1#2{\noindent {\bf \uppercase{#1}} #2\\
+}
+
+% --------------------------------- SETTING UP COPYRIGHT SPACE ---------------------------------
+
+\def\copyrightspace{%
+  \footnotetext[0]{\mbox{}\vrule \@height 97\p@ \@width \z@}}
+
+% Redefine the abstract environment to be a normal section (without number)
+\renewenvironment{abstract}%
+  {\section*{\abstractname}}
+  {\par}
+
+
+% --------------------------------- SETTING UP ITEM ENVIRONMENTS
+
+
+\newdimen\labelwidthi
+\newdimen\labelwidthii
+\settowidth{\labelwidthi}{M}
+\settowidth{\labelwidthii}{(d)}
+%\leftmargini\labelwidthi    \advance\leftmargini\labelsep
+%\leftmarginii\labelwidthii  \advance\leftmarginii\labelsep
+
+%\leftmargin=.63cm
+\leftmargini=1.2cm
+\leftmarginii=4ex
+\leftmarginii=4ex
+
+% level 1
+\def\@listi{\leftmargin\leftmargini
+\rightmargin0pt
+            \parsep 0\p@
+            \topsep 10\p@
+            \itemsep0\p@}
+\let\@listI\@listi
+\@listi
+
+% level 2
+\def\@listii{\leftmargin\leftmarginii
+\rightmargin0pt
+            \labelsep 1ex
+            \parsep 0\p@
+            \topsep 0\p@
+            \itemsep0\p@}
+\let\@listII\@listii
+\@listii
+
+% level 3
+\def\@listiii{\leftmargin\leftmarginiii
+\rightmargin0pt
+            \parsep 0\p@
+            \topsep 0\p@
+            \itemsep0\p@}
+\let\@listIII\@listiii
+\@listiii
+
+\labelsep=.25in
+\setlength  \labelwidth{\leftmargini}
+\addtolength\labelwidth{-\labelsep}
+
+\renewcommand\labelenumi{\rlap{\rm\theenumi.}}
+
+\renewcommand\labelitemi{\rlap{\textbullet}}
+
+
+% SETTING UP SECTIONS
+
+\def\@seccntformat#1{\hbox to .25in{\csname the#1\endcsname\hss}\relax}
+
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+\ifnum #2>\c@secnumdepth
+    \let\@svsec\@empty
+  \else
+    \refstepcounter{#1}%
+    \protected@edef\@svsec{\@seccntformat{#1}\relax}%
+  \fi
+  \@tempskipa #5\relax
+  \ifdim \@tempskipa>\z@
+    \begingroup
+      #6{%
+        \@hangfrom{\hskip #3\relax\@svsec}%
+          \interlinepenalty \@M #8\@@par}%
+    \endgroup
+    \csname #1mark\endcsname{#7}%
+    \addcontentsline{toc}{#1}{%
+      \ifnum #2>\c@secnumdepth \else
+        \protect\numberline{\csname the#1\endcsname}%
+      \fi
+      #7}%
+  \else
+    \def\@svsechd{%
+      #6{\hskip #3\relax
+      \@svsec #8}%
+      \csname #1mark\endcsname{#7}%
+      \addcontentsline{toc}{#1}{%
+        \ifnum #2>\c@secnumdepth \else
+          \protect\numberline{\csname the#1\endcsname}%
+        \fi
+        #7}}%
+  \fi
+  \@xsect{#5}}
+
+% XTABLE
+
+\def\xtable{table}
+\long\def\@makecaption#1#2{%
+\ifx\@captype\xtable \vskip3pt \else
+  \vskip\abovecaptionskip\fi
+  \sbox\@tempboxa{#1: #2}%
+  \ifdim \wd\@tempboxa >\hsize
+    #1: #2\par
+  \else
+    \global \@minipagefalse
+    \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+  \fi
+  \vskip\belowcaptionskip}
+
+% REDEFINITION OF THE SECTION COMMANDS (spacing around them)
+
+% new from WSC'11: 6 pts after Section
+
+\renewcommand\section{\@startsection {section}{1}{\z@}%
+                                  % {-3.5ex \@plus -1ex \@minus -.2ex}%
+ {-12pt}%
+                                   %{2.3ex \@plus.2ex}%
+{6pt}%
+                                   {\hyphenpenalty10000\normalfont\normalsize\bfseries}}
+\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
+                         %       {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {-12pt}%
+       %                                     {1.5ex \@plus .2ex}%
+{6pt}%
+                                     {\normalfont\normalsize\hyphenpenalty10000\bfseries}}
+\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
+{-12pt}
+      %                               {-3.25ex\@plus -1ex \@minus -.2ex}%
+{6pt}
+     %                                {1.5ex \@plus .2ex}%
+                                     {\normalfont\normalsize\hyphenpenalty10000\bfseries}}
+
+\let\savesubsub\subsubsection
+\def\subsubsection#1{\savesubsub{\ \ #1}}
+
+% REDEFINITION OF FURTHER DOCUMENT LAYOUT PARAMETERS
+
+\parskip=0pt plus .01pt
+
+%\baselineskip=0mm
+
+\let\saveparagraph\paragraph
+\def\paragraph#1{\vskip1sp
+{\bf #1}\hskip1em\relax}
+
+
+\raggedbottom
+
+% hangref environment
+\newenvironment{hangref}{\begin{list}{}{\setlength{\itemsep}{0pt}
+\setlength{\parsep}{0pt}\setlength{\rightmargin}{0pt}
+\setlength{\leftmargin}{+\parindent}
+\setlength{\itemindent}{-\parindent}}}{\end{list}}
+
+
+\newif\iftitle
+\def\@oddhead{\iftitle\global\titlefalse
+\vtop to0pt{\hbox to.9\textwidth{\titlepageheadfont
+\currentCaption\hfill}%
+\vskip2pt \hbox to .9\textwidth{\titlepageheadfont
+\currentEditors , eds.\hfill}%
+\vss} \else \hbox
+to\textwidth{\titlepageheadfont\hfill\thetitle\hfill}\fi}
+
+\def\@evenhead{\iftitle\global\titlefalse\fi%
+\hbox to \textwidth{\hss\titlepageheadfont \theauthors\hss}}
+
+\let\@oddfoot\relax
+\let\@evenfoot\@oddfoot
+
+\def\ttitle#1{\gdef\thetitle{#1}}
+
+%\def\normalsize{%
+%\@setfontsize \normalsize \@xpt \@xiipt \abovedisplayskip 12pt
+%\abovedisplayshortskip 8pt \belowdisplayshortskip 8pt
+%\belowdisplayskip=\abovedisplayskip
+%\let \@listi \@listI}
+%\normalsize
+
+\def\sk{\vskip12pt}
+\let\vs\sk
+\def\bd{\vskip2pt\noindent} %belowdisplay
+
+\spaceskip=3.5pt plus 2pt minus2pt
+
+\parindent=.25in
+
+\hfuzz=1pt
+
+\widowpenalty=10000 \clubpenalty=10000
+
+\def\verbatim{\spaceskip=0pt
+\@verbatim \frenchspacing\@vobeyspaces \@xverbatim}
+
+\newcommand\smscriptsize{\@setfontsize\scriptsize\@vipt\@viipt}
+
+\def\nofloatfigure{\def\@captype{figure}}
+\let\endnofloatfigure\relax
+
+\def\nofloattable{\def\@captype{table}}
+\let\endnofloattable\relax
+
+\newcount\itemcount
+
+\def\spenumerate{\bgroup\leftskip=.25in
+\global\itemcount=0
+\def\item{\global\advance\itemcount by 1
+\vskip1sp \noindent\hskip-.25in\hbox to
+.25in{\the\itemcount.\hss}}}
+
+\def\endspenumerate{\vskip12pt\egroup}
+
+\newif\ifnoindent
+\def\@begintheorem#1#2{\vskip-12pt\vskip1sp
+\trivlist
+   \item[\ifnoindent\global\noindentfalse\else
+\hskip.25in\fi\hskip \labelsep{\bfseries #1\ #2}]\itshape}
+
+\def\@opargbegintheorem#1#2#3{\vskip-12pt\vskip1sp
+\trivlist
+      \item[\ifnoindent\global\noindentfalse\else\hskip.25in\fi%
+\hskip \labelsep{\bfseries #1\ #2\ (#3)}]\itshape}
+
+\def\@endtheorem{\vskip1sp}
+
+% (from apalike.sty)
+% Set length of hanging indentation for bibliography entries.
+%
+\newlength{\bibhang}
+\setlength{\bibhang}{2em}
+
+% Indent second and subsequent lines of bibliographic entries. Stolen
+% from openbib.sty: \newblock is set to {}.
+
+\newdimen\bibindent
+\bibindent=.25in
+\@ifundefined{refname}%
+   {\@ifundefined{chapter}%
+     {\newcommand{\refname}{References}}%
+     {\newcommand{\refname}{Bibliography}}%
+   }%
+   {}%
+
+
+\def\thebibliography#1{\section*{\refname\@mkboth
+   {\uppercase{\refname}}{\uppercase{\refname}}}\list
+   {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}
+\rightmargin=0pt \leftmargin=0pt
+   \leftmargin\labelwidth
+   \advance\leftmargin\labelsep
+   \advance\leftmargin\bibindent
+\advance\leftmargin-24pt
+   \itemindent -\bibindent
+   \listparindent \itemindent
+   \parsep \z@
+   \usecounter{enumi}}
+   \def\newblock{}
+   \sloppy
+   \sfcode`\.=1000\relax}
+
+\endinput
+
+\makeatletter
+\def\@lbibitem[#1]#2{\item[]%[\@biblabel {#1}\hfill ]
+\if@filesw {\let\protect\noexpand\immediate\write\@auxout{
+\string\bibcite {#2}{#1}}}\fi\ignorespaces}
+
+\def\@cite#1#2{{#1\if@tempswa , #2\fi}}
+\makeatother
+
+
+
+\def\Box{\vbox to 6pt{\hrule
+\hbox{\vrule height 4.8pt  \hskip 4.8pt \vrule } \hrule}}
+

File diff suppressed because it is too large
+ 8941 - 0
wsc19latex/MathExpandExpression.eps


BIN
wsc19latex/MathExpandExpression.jpg


BIN
wsc19latex/MathExpandExpression.pdf


+ 247 - 0
wsc19latex/demobib.bib

@@ -0,0 +1,247 @@
+% This file was created with JabRef 2.5.
+% Encoding: Cp1252
+
+@BOOK{bcnn:simulation,
+  title = {{D}iscrete-{E}vent {S}ystem {S}imulation},
+  publisher = {Prentice-Hall, Inc.},
+  year = {2000},
+  author = {Jerry Banks and John S. Carson and Barry L. Nelson and David M. Nicol},
+  address = {Upper Saddle River, New Jersey},
+  edition = {3rd}
+}
+
+@ARTICLE{bechhofer:multinomial,
+  author = {R. E. Bechhofer and S. Elmaghraby and N. Morse},
+  title = {A Single-Sample multiple-decision procedure for selecting the multinomial
+	event which has the highest probability},
+  journal = {Annals of Mathematical Statistics},
+  year = {1959},
+  volume = {30},
+  pages = {102--119}
+}
+
+@ARTICLE{bechhofer:heteroscedastic,
+  author = {R. E. Bechhofer and A. J. Hayter and A. C. Tamhane},
+  title = {Designing experiments for selecting the largest normal mean when
+	the variances are known and unequal: {O}ptimal sample size allocation},
+  journal = {Journal of Statistical Planning and Inference},
+  year = {1991},
+  volume = {28},
+  pages = {271--289}
+}
+
+@BOOK{bratley:simulation,
+  title = {A Guide To Simulation},
+  publisher = {Springer-Verlag},
+  year = {1983},
+  author = {P. Bratley and B. L. Fox and L. Schrage},
+  address = {New York}
+}
+
+@INPROCEEDINGS{cheng:input94,
+  author = {Russell C. H. Cheng},
+  title = {Selecting Input Models},
+  booktitle = {Proceedings of the 1994 Winter Simulation Conference},
+  year = {1994},
+  editor = {J. D. Tew et al.},
+  pages = {184--191},
+  address = {Piscataway, New Jersey},
+  organization = {IEEE}
+}
+
+% ARTICLE{cheng:queuehetero,
+%  author = {Russell C. H. Cheng and Jack P. C. Kleijnen},
+%  title = {Improved Design of Queueing Simulation Experiments with Highly Heteroscedastic
+%	Responses},
+%  journal = {Operations Research},
+%  year = {1999},
+%  volume = {47},
+%  pages = {762--777},
+%  number = {3}
+%}
+
+@TECHREPORT{chi89,
+  author = {C. Chien},
+  title = {Small Sample Theory for Steady State Confidence Intervals},
+  institution = {Department of Operations Research, Stanford University},
+  year = {1989},
+  number = {No. 37},
+  address = {Stanford, California}
+}
+
+@INPROCEEDINGS{goldsman:selection94,
+  author = {David Goldsman and Barry L. Nelson},
+  title = {Ranking, Selection, and Multiple Comparisons in Computer Simulation},
+  booktitle = {Proceedings of the Winter Simulation Conference},
+  year = {1994},
+  editor = {J. D. Tew and S. Manivannan and D. A. Sadowski and A. F. Seila},
+  pages = {192--199},
+  address = {Piscataway, New Jersey},
+  organization = {Institute of Electrical and Electronics Engineers, Inc.}
+}
+
+@INCOLLECTION{guptamiescke:heteroscedatic,
+  author = {S. S. Gupta and K. J. Miescke},
+  title = {On the Problem of Finding the Largest Normal Mean under Heteroscedasticity},
+  booktitle = {Statistical Decision Theory and Related Topics {IV}},
+  publisher = {Springer Verlag},
+  year = {1988},
+  editor = {S. S. Gupta and J. O. Berger},
+  volume = {2},
+  address = {New York},
+  page = {37--49}
+}
+
+@ARTICLE{gupta:mnormal,
+  author = {S. S. Gupta and K. Nagel and S. Panchapakesan},
+  title = {On the Order Statistics from Equally Correlated Normal Random Variables},
+  journal = {Biometrika},
+  year = {1973},
+  volume = {60(2)},
+  pages = {403--413}
+}
+
+@BOOK{hammersley:montecarlo,
+  title = {Monte Carlo Methods},
+  publisher = {Methuen},
+  year = {1964},
+  author = {J. M. Hammersley and D. C. Handscomb},
+  address = {London}
+}
+
+@ARTICLE{hartmann:sequential,
+  author = {M. Hartmann},
+  title = {An improvement on {P}aulson's procedure for selecting the population
+	with the largest mean from k normal populations with a common unknown
+	variance},
+  journal = {Sequential Analysis},
+  year = {1991},
+  volume = {10},
+  pages = {1--16}
+}
+
+@BOOK{hsu:selection,
+  title = {Multiple Comparisons: Theory and Methods},
+  publisher = {Chapman \& Hall},
+  year = {1996},
+  author = {J. C. Hsu},
+  address = {New York}
+}
+
+@BOOK{law:simulationc,
+  title = {Simulation Modeling \& Analysis},
+  publisher = {McGraw-Hill, Inc},
+  year = {2000},
+  author = {Averill M. Law and W. David Kelton},
+  address = {New York},
+  edition = {3rd}
+}
+
+@INCOLLECTION{miescke:bayesdesigns99,
+  author = {K. J. Miescke},
+  title = {Bayes Sampling Designs for Selection Procedures},
+  booktitle = {Multivariate, Design, and Sampling},
+  publisher = {M. Dekker},
+  year = {1999},
+  editor = {S. Ghosh},
+  address = {New York},
+  page = {93--117}
+}
+
+@ARTICLE{rinott:twostage,
+  author = {Y. Rinott},
+  title = {On Two-Stage Selection Procedures and Related Probability-Inequalities},
+  journal = {Communications in Statistics},
+  year = {1978},
+  volume = {A7},
+  pages = {799--811}
+}
+
+@INCOLLECTION{sch79,
+  author = {L. W. Schruben},
+  title = {Designing Correlation Induction Strategies for Simulation Experiments},
+  booktitle = {Current Issues in Computer Simulation},
+  publisher = {Academic Press},
+  year = {1979},
+  editor = {N. R. Adam and A. Dogramaci},
+  pages = {235--256},
+  address = {New York}
+}
+
+@PHDTHESIS{ste99,
+  author = {N. M. Steiger},
+  title = {Improved Batching for Confidence Interval Construction in Steady-State
+	Simulation},
+  school = {Department of Industrial Engineering, North Carolina State University},
+  year = {1999},
+  type = {{Ph.D.} Thesis},
+  address = {Raleigh, North Carolina},
+  note = {\url{http://www.lib.ncsu.edu/resolver/1840.16/4713}}
+}
+
+@ARTICLE{tamhane:screening,
+  author = {A. C. Tamhane and R. E. Bechhofer},
+  title = {A two-stage minimax procedure with screening for selecting the largest
+	normal mean (ii) an improved {PCS} lower bound and associated tables},
+  journal = {Communications in Statistics},
+  year = {1979},
+  volume = {A8},
+  pages = {337--358}
+}
+
+@MANUAL{chicago03,
+  title = {The Chicago Manual of Style},
+  author = {{The University of Chicago Press}},
+  organization = {The University of Chicago Press},
+  address = {Chicago},
+  edition = {16th},
+  note = {\url{http://www.chicagomanualofstyle.org}},
+  year = {2010}
+}
+
+@MISC{WSC,
+  author = {{WSC}},
+  title = {Winter Simulation Conference},
+  year = {2019},
+  editors = {Board of Directors},
+  owner = {Jan},
+  note = {accessed 22\textsuperscript{nd} January 2019.},
+  timestamp = {2015.02.01}
+}
+
+@MISC{sharon:WordTips,
+  author = {{Sharon Parq Associates}},
+  title = {{WordTips: Numbering Equations}},
+  note = {\url{http://word.tips.net/Pages/T000273_Numbering_Equations.html}, accessed 15.01.2018}
+}
+
+
+@MISC{Foundation,
+  author = {{WSC Foundation}},
+  title = {The {WSC} {F}oundation},
+  howpublished = {Last modified January 15, 2011. \url{http://www.wscfoundation.org}},
+  year = {2011},
+  owner = {Jan},
+  timestamp = {2011.03.22}
+}
+
+@ARTICLE{powell2017widening,
+  title={Widening requirements capture with soft methods: an investigation of hybrid M\&S studies in health care},
+  author={J. H. Powell and N. Mustafee},
+  journal={Journal of the Operational Research Society},
+  volume={68},
+  number={10},
+  pages={1211--1222},
+  year={2017},
+  publisher={Taylor \& Francis}
+}
+
+@Inproceedings{rabe:combining,
+  Title                    = {Combining a Discrete-event Simulation Model of a Logistics Network with Deep Reinforcement Learning},
+  Author                   = {M. Rabe and F. Dross and A. Wuttke},
+  Booktitle                = {Proceedings of the MIC and MAEB 2017 Conferences},
+  Year                     = {2017},
+  Organization             = {July 4\textsuperscript{th}-7\textsuperscript{th}, Barcelona, Spain, 765-774.},
+  Owner                    = {daniele},
+  Timestamp                = {2018.01.30}
+}

+ 4 - 0
wsc19latex/desktop.ini

@@ -0,0 +1,4 @@
+[ViewState]
+Mode=
+Vid=
+FolderType=Generic

+ 486 - 0
wsc19latex/fancyhdr.sty

@@ -0,0 +1,486 @@
+% fancyhdr.sty version 3.2
+% Fancy headers and footers for LaTeX.
+% Piet van Oostrum,
+% Dept of Computer and Information Sciences, University of Utrecht,
+% Padualaan 14, P.O. Box 80.089, 3508 TB Utrecht, The Netherlands
+% Telephone: +31 30 2532180. Email: piet@cs.uu.nl
+% ========================================================================
+% LICENCE:
+% This file may be distributed under the terms of the LaTeX Project Public
+% License, as described in lppl.txt in the base LaTeX distribution.
+% Either version 1 or, at your option, any later version.
+% ========================================================================
+% MODIFICATION HISTORY:
+% Sep 16, 1994
+% version 1.4: Correction for use with \reversemargin
+% Sep 29, 1994:
+% version 1.5: Added the \iftopfloat, \ifbotfloat and \iffloatpage commands
+% Oct 4, 1994:
+% version 1.6: Reset single spacing in headers/footers for use with
+% setspace.sty or doublespace.sty
+% Oct 4, 1994:
+% version 1.7: changed \let\@mkboth\markboth to
+% \def\@mkboth{\protect\markboth} to make it more robust
+% Dec 5, 1994:
+% version 1.8: corrections for amsbook/amsart: define \@chapapp and (more
+% importantly) use the \chapter/sectionmark definitions from ps@headings if
+% they exist (which should be true for all standard classes).
+% May 31, 1995:
+% version 1.9: The proposed \renewcommand{\headrulewidth}{\iffloatpage...
+% construction in the doc did not work properly with the fancyplain style.
+% June 1, 1995:
+% version 1.91: The definition of \@mkboth wasn't restored on subsequent
+% \pagestyle{fancy}'s.
+% June 1, 1995:
+% version 1.92: The sequence \pagestyle{fancyplain} \pagestyle{plain}
+% \pagestyle{fancy} would erroneously select the plain version.
+% June 1, 1995:
+% version 1.93: \fancypagestyle command added.
+% Dec 11, 1995:
+% version 1.94: suggested by Conrad Hughes <chughes@maths.tcd.ie>
+% CJCH, Dec 11, 1995: added \footruleskip to allow control over footrule
+% position (old hardcoded value of .3\normalbaselineskip is far too high
+% when used with very small footer fonts).
+% Jan 31, 1996:
+% version 1.95: call \@normalsize in the reset code if that is defined,
+% otherwise \normalsize.
+% this is to solve a problem with ucthesis.cls, as this doesn't
+% define \@currsize. Unfortunately for latex209 calling \normalsize doesn't
+% work as this is optimized to do very little, so there \@normalsize should
+% be called. Hopefully this code works for all versions of LaTeX known to
+% mankind.
+% April 25, 1996:
+% version 1.96: initialize \headwidth to a magic (negative) value to catch
+% most common cases that people change it before calling \pagestyle{fancy}.
+% Note it can't be initialized when reading in this file, because
+% \textwidth could be changed afterwards. This is quite probable.
+% We also switch to \MakeUppercase rather than \uppercase and introduce a
+% \nouppercase command for use in headers. and footers.
+% May 3, 1996:
+% version 1.97: Two changes:
+% 1. Undo the change in version 1.8 (using the pagestyle{headings} defaults
+% for the chapter and section marks. The current version of amsbook and
+% amsart classes don't seem to need them anymore. Moreover the standard
+% latex classes don't use \markboth if twoside isn't selected, and this is
+% confusing as \leftmark doesn't work as expected.
+% 2. include a call to \ps@empty in ps@@fancy. This is to solve a problem
+% in the amsbook and amsart classes, that make global changes to \topskip,
+% which are reset in \ps@empty. Hopefully this doesn't break other things.
+% May 7, 1996:
+% version 1.98:
+% Added % after the line  \def\nouppercase
+% May 7, 1996:
+% version 1.99: This is the alpha version of fancyhdr 2.0
+% Introduced the new commands \fancyhead, \fancyfoot, and \fancyhf.
+% Changed \headrulewidth, \footrulewidth, \footruleskip to
+% macros rather than length parameters, In this way they can be
+% conditionalized and they don't consume length registers. There is no need
+% to have them as length registers unless you want to do calculations with
+% them, which is unlikely. Note that this may make some uses of them
+% incompatible (i.e. if you have a file that uses \setlength or \xxxx=)
+% May 10, 1996:
+% version 1.99a:
+% Added a few more % signs
+% May 10, 1996:
+% version 1.99b:
+% Changed the syntax of \f@nfor to be resistent to catcode changes of :=
+% Removed the [1] from the defs of \lhead etc. because the parameter is
+% consumed by the \@[xy]lhead etc. macros.
+% June 24, 1997:
+% version 1.99c:
+% corrected \nouppercase to also include the protected form of \MakeUppercase
+% \global added to manipulation of \headwidth.
+% \iffootnote command added.
+% Some comments added about \@fancyhead and \@fancyfoot.
+% Aug 24, 1998
+% version 1.99d
+% Changed the default \ps@empty to \ps@@empty in order to allow
+% \fancypagestyle{empty} redefinition.
+% Oct 11, 2000
+% version 2.0
+% Added LPPL license clause.
+%
+% A check for \headheight is added. An errormessage is given (once) if the
+% header is too large. Empty headers don't generate the error even if
+% \headheight is very small or even 0pt.
+% Warning added for the use of 'E' option when twoside option is not used.
+% In this case the 'E' fields will never be used.
+%
+% Mar 10, 2002
+% version 2.1beta
+% New command: \fancyhfoffset[place]{length}
+% defines offsets to be applied to the header/footer to let it stick into
+% the margins (if length > 0).
+% place is like in fancyhead, except that only E,O,L,R can be used.
+% This replaces the old calculation based on \headwidth and the marginpar
+% area.
+% \headwidth will be dynamically calculated in the headers/footers when
+% this is used.
+%
+% Mar 26, 2002
+% version 2.1beta2
+% \fancyhfoffset now also takes h,f as possible letters in the argument to
+% allow the header and footer widths to be different.
+% New commands \fancyheadoffset and \fancyfootoffset added comparable to
+% \fancyhead and \fancyfoot.
+% Errormessages and warnings have been made more informative.
+%
+% Dec 9, 2002
+% version 2.1
+% The defaults for \footrulewidth, \plainheadrulewidth and
+% \plainfootrulewidth are changed from \z@skip to 0pt. In this way when
+% someone inadvertantly uses \setlength to change any of these, the value
+% of \z@skip will not be changed, rather an errormessage will be given.
+
+% March 3, 2004
+% Release of version 3.0
+
+% Oct 7, 2004
+% version 3.1
+% Added '\endlinechar=13' to \fancy@reset to prevent problems with
+% includegraphics in header when verbatiminput is active.
+
+% March 22, 2005
+% version 3.2
+% reset \everypar (the real one) in \fancy@reset because spanish.ldf does
+% strange things with \everypar between << and >>.
+
+\def\ifancy@mpty#1{\def\temp@a{#1}\ifx\temp@a\@empty}
+
+\def\fancy@def#1#2{\ifancy@mpty{#2}\fancy@gbl\def#1{\leavevmode}\else
+                                   \fancy@gbl\def#1{#2\strut}\fi}
+
+\let\fancy@gbl\global
+
+\def\@fancyerrmsg#1{%
+        \ifx\PackageError\undefined
+        \errmessage{#1}\else
+        \PackageError{Fancyhdr}{#1}{}\fi}
+\def\@fancywarning#1{%
+        \ifx\PackageWarning\undefined
+        \errmessage{#1}\else
+        \PackageWarning{Fancyhdr}{#1}{}\fi}
+
+% Usage: \@forc \var{charstring}{command to be executed for each char}
+% This is similar to LaTeX's \@tfor, but expands the charstring.
+
+\def\@forc#1#2#3{\expandafter\f@rc\expandafter#1\expandafter{#2}{#3}}
+\def\f@rc#1#2#3{\def\temp@ty{#2}\ifx\@empty\temp@ty\else
+                                    \f@@rc#1#2\f@@rc{#3}\fi}
+\def\f@@rc#1#2#3\f@@rc#4{\def#1{#2}#4\f@rc#1{#3}{#4}}
+
+% Usage: \f@nfor\name:=list\do{body}
+% Like LaTeX's \@for but an empty list is treated as a list with an empty
+% element
+
+\newcommand{\f@nfor}[3]{\edef\@fortmp{#2}%
+    \expandafter\@forloop#2,\@nil,\@nil\@@#1{#3}}
+
+% Usage: \def@ult \cs{defaults}{argument}
+% sets \cs to the characters from defaults appearing in argument
+% or defaults if it would be empty. All characters are lowercased.
+
+\newcommand\def@ult[3]{%
+    \edef\temp@a{\lowercase{\edef\noexpand\temp@a{#3}}}\temp@a
+    \def#1{}%
+    \@forc\tmpf@ra{#2}%
+        {\expandafter\if@in\tmpf@ra\temp@a{\edef#1{#1\tmpf@ra}}{}}%
+    \ifx\@empty#1\def#1{#2}\fi}
+%
+% \if@in <char><set><truecase><falsecase>
+%
+\newcommand{\if@in}[4]{%
+    \edef\temp@a{#2}\def\temp@b##1#1##2\temp@b{\def\temp@b{##1}}%
+    \expandafter\temp@b#2#1\temp@b\ifx\temp@a\temp@b #4\else #3\fi}
+
+\newcommand{\fancyhead}{\@ifnextchar[{\f@ncyhf\fancyhead h}%
+                                     {\f@ncyhf\fancyhead h[]}}
+\newcommand{\fancyfoot}{\@ifnextchar[{\f@ncyhf\fancyfoot f}%
+                                     {\f@ncyhf\fancyfoot f[]}}
+\newcommand{\fancyhf}{\@ifnextchar[{\f@ncyhf\fancyhf{}}%
+                                   {\f@ncyhf\fancyhf{}[]}}
+
+% New commands for offsets added
+
+\newcommand{\fancyheadoffset}{\@ifnextchar[{\f@ncyhfoffs\fancyheadoffset h}%
+                                           {\f@ncyhfoffs\fancyheadoffset h[]}}
+\newcommand{\fancyfootoffset}{\@ifnextchar[{\f@ncyhfoffs\fancyfootoffset f}%
+                                           {\f@ncyhfoffs\fancyfootoffset f[]}}
+\newcommand{\fancyhfoffset}{\@ifnextchar[{\f@ncyhfoffs\fancyhfoffset{}}%
+                                         {\f@ncyhfoffs\fancyhfoffset{}[]}}
+
+% The header and footer fields are stored in command sequences with
+% names of the form: \f@ncy<x><y><z> with <x> for [eo], <y> from [lcr]
+% and <z> from [hf].
+
+\def\f@ncyhf#1#2[#3]#4{%
+    \def\temp@c{}%
+    \@forc\tmpf@ra{#3}%
+        {\expandafter\if@in\tmpf@ra{eolcrhf,EOLCRHF}%
+            {}{\edef\temp@c{\temp@c\tmpf@ra}}}%
+    \ifx\@empty\temp@c\else
+        \@fancyerrmsg{Illegal char `\temp@c' in \string#1 argument:
+          [#3]}%
+    \fi
+    \f@nfor\temp@c{#3}%
+        {\def@ult\f@@@eo{eo}\temp@c
+         \if@twoside\else
+           \if\f@@@eo e\@fancywarning
+             {\string#1's `E' option without twoside option is useless}\fi\fi
+         \def@ult\f@@@lcr{lcr}\temp@c
+         \def@ult\f@@@hf{hf}{#2\temp@c}%
+         \@forc\f@@eo\f@@@eo
+             {\@forc\f@@lcr\f@@@lcr
+                 {\@forc\f@@hf\f@@@hf
+                     {\expandafter\fancy@def\csname
+                      f@ncy\f@@eo\f@@lcr\f@@hf\endcsname
+                      {#4}}}}}}
+
+\def\f@ncyhfoffs#1#2[#3]#4{%
+    \def\temp@c{}%
+    \@forc\tmpf@ra{#3}%
+        {\expandafter\if@in\tmpf@ra{eolrhf,EOLRHF}%
+            {}{\edef\temp@c{\temp@c\tmpf@ra}}}%
+    \ifx\@empty\temp@c\else
+        \@fancyerrmsg{Illegal char `\temp@c' in \string#1 argument:
+          [#3]}%
+    \fi
+    \f@nfor\temp@c{#3}%
+        {\def@ult\f@@@eo{eo}\temp@c
+         \if@twoside\else
+           \if\f@@@eo e\@fancywarning
+             {\string#1's `E' option without twoside option is useless}\fi\fi
+         \def@ult\f@@@lcr{lr}\temp@c
+         \def@ult\f@@@hf{hf}{#2\temp@c}%
+         \@forc\f@@eo\f@@@eo
+             {\@forc\f@@lcr\f@@@lcr
+                 {\@forc\f@@hf\f@@@hf
+                     {\expandafter\setlength\csname
+                      f@ncyO@\f@@eo\f@@lcr\f@@hf\endcsname
+                      {#4}}}}}%
+     \fancy@setoffs}
+
+% Fancyheadings version 1 commands. These are more or less deprecated,
+% but they continue to work.
+
+\newcommand{\lhead}{\@ifnextchar[{\@xlhead}{\@ylhead}}
+\def\@xlhead[#1]#2{\fancy@def\f@ncyelh{#1}\fancy@def\f@ncyolh{#2}}
+\def\@ylhead#1{\fancy@def\f@ncyelh{#1}\fancy@def\f@ncyolh{#1}}
+
+\newcommand{\chead}{\@ifnextchar[{\@xchead}{\@ychead}}
+\def\@xchead[#1]#2{\fancy@def\f@ncyech{#1}\fancy@def\f@ncyoch{#2}}
+\def\@ychead#1{\fancy@def\f@ncyech{#1}\fancy@def\f@ncyoch{#1}}
+
+\newcommand{\rhead}{\@ifnextchar[{\@xrhead}{\@yrhead}}
+\def\@xrhead[#1]#2{\fancy@def\f@ncyerh{#1}\fancy@def\f@ncyorh{#2}}
+\def\@yrhead#1{\fancy@def\f@ncyerh{#1}\fancy@def\f@ncyorh{#1}}
+
+\newcommand{\lfoot}{\@ifnextchar[{\@xlfoot}{\@ylfoot}}
+\def\@xlfoot[#1]#2{\fancy@def\f@ncyelf{#1}\fancy@def\f@ncyolf{#2}}
+\def\@ylfoot#1{\fancy@def\f@ncyelf{#1}\fancy@def\f@ncyolf{#1}}
+
+\newcommand{\cfoot}{\@ifnextchar[{\@xcfoot}{\@ycfoot}}
+\def\@xcfoot[#1]#2{\fancy@def\f@ncyecf{#1}\fancy@def\f@ncyocf{#2}}
+\def\@ycfoot#1{\fancy@def\f@ncyecf{#1}\fancy@def\f@ncyocf{#1}}
+
+\newcommand{\rfoot}{\@ifnextchar[{\@xrfoot}{\@yrfoot}}
+\def\@xrfoot[#1]#2{\fancy@def\f@ncyerf{#1}\fancy@def\f@ncyorf{#2}}
+\def\@yrfoot#1{\fancy@def\f@ncyerf{#1}\fancy@def\f@ncyorf{#1}}
+
+\newlength{\fancy@headwidth}
+\let\headwidth\fancy@headwidth
+\newlength{\f@ncyO@elh}
+\newlength{\f@ncyO@erh}
+\newlength{\f@ncyO@olh}
+\newlength{\f@ncyO@orh}
+\newlength{\f@ncyO@elf}
+\newlength{\f@ncyO@erf}
+\newlength{\f@ncyO@olf}
+\newlength{\f@ncyO@orf}
+\newcommand{\headrulewidth}{0.4pt}
+\newcommand{\footrulewidth}{0pt}
+\newcommand{\footruleskip}{.3\normalbaselineskip}
+
+% Fancyplain stuff shouldn't be used anymore (rather
+% \fancypagestyle{plain} should be used), but it must be present for
+% compatibility reasons.
+
+\newcommand{\plainheadrulewidth}{0pt}
+\newcommand{\plainfootrulewidth}{0pt}
+\newif\if@fancyplain \@fancyplainfalse
+\def\fancyplain#1#2{\if@fancyplain#1\else#2\fi}
+
+\headwidth=-123456789sp %magic constant
+
+% Command to reset various things in the headers:
+% a.o.  single spacing (taken from setspace.sty)
+% and the catcode of ^^M (so that epsf files in the header work if a
+% verbatim crosses a page boundary)
+% It also defines a \nouppercase command that disables \uppercase and
+% \Makeuppercase. It can only be used in the headers and footers.
+\let\fnch@everypar\everypar% save real \everypar because of spanish.ldf
+\def\fancy@reset{\fnch@everypar{}\restorecr\endlinechar=13
+ \def\baselinestretch{1}%
+ \def\nouppercase##1{{\let\uppercase\relax\let\MakeUppercase\relax
+     \expandafter\let\csname MakeUppercase \endcsname\relax##1}}%
+ \ifx\undefined\@newbaseline% NFSS not present; 2.09 or 2e
+   \ifx\@normalsize\undefined \normalsize % for ucthesis.cls
+   \else \@normalsize \fi
+ \else% NFSS (2.09) present
+  \@newbaseline%
+ \fi}
+
+% Initialization of the head and foot text.
+
+% The default values still contain \fancyplain for compatibility.
+\fancyhf{} % clear all
+% lefthead empty on ``plain'' pages, \rightmark on even, \leftmark on odd pages
+% evenhead empty on ``plain'' pages, \leftmark on even, \rightmark on odd pages
+\if@twoside
+  \fancyhead[el,or]{\fancyplain{}{\sl\rightmark}}
+  \fancyhead[er,ol]{\fancyplain{}{\sl\leftmark}}
+\else
+  \fancyhead[l]{\fancyplain{}{\sl\rightmark}}
+  \fancyhead[r]{\fancyplain{}{\sl\leftmark}}
+\fi
+\fancyfoot[c]{\rm\thepage} % page number
+
+% Use box 0 as a temp box and dimen 0 as temp dimen.
+% This can be done, because this code will always
+% be used inside another box, and therefore the changes are local.
+
+\def\@fancyvbox#1#2{\setbox0\vbox{#2}\ifdim\ht0>#1\@fancywarning
+  {\string#1 is too small (\the#1): ^^J Make it at least \the\ht0.^^J
+    We now make it that large for the rest of the document.^^J
+    This may cause the page layout to be inconsistent, however\@gobble}%
+  \dimen0=#1\global\setlength{#1}{\ht0}\ht0=\dimen0\fi
+  \box0}
+
+% Put together a header or footer given the left, center and
+% right text, fillers at left and right and a rule.
+% The \lap commands put the text into an hbox of zero size,
+% so overlapping text does not generate an errormessage.
+% These macros have 5 parameters:
+% 1. LEFTSIDE BEARING % This determines at which side the header will stick
+%    out. When \fancyhfoffset is used this calculates \headwidth, otherwise
+%    it is \hss or \relax (after expansion).
+% 2. \f@ncyolh, \f@ncyelh, \f@ncyolf or \f@ncyelf. This is the left component.
+% 3. \f@ncyoch, \f@ncyech, \f@ncyocf or \f@ncyecf. This is the middle comp.
+% 4. \f@ncyorh, \f@ncyerh, \f@ncyorf or \f@ncyerf. This is the right component.
+% 5. RIGHTSIDE BEARING. This is always \relax or \hss (after expansion).
+
+\def\@fancyhead#1#2#3#4#5{#1\hbox to\headwidth{\fancy@reset
+  \@fancyvbox\headheight{\hbox
+    {\rlap{\parbox[b]{\headwidth}{\raggedright#2}}\hfill
+      \parbox[b]{\headwidth}{\centering#3}\hfill
+      \llap{\parbox[b]{\headwidth}{\raggedleft#4}}}\headrule}}#5}
+
+\def\@fancyfoot#1#2#3#4#5{#1\hbox to\headwidth{\fancy@reset
+    \@fancyvbox\footskip{\footrule
+      \hbox{\rlap{\parbox[t]{\headwidth}{\raggedright#2}}\hfill
+        \parbox[t]{\headwidth}{\centering#3}\hfill
+        \llap{\parbox[t]{\headwidth}{\raggedleft#4}}}}}#5}
+
+\def\headrule{{\if@fancyplain\let\headrulewidth\plainheadrulewidth\fi
+    \hrule\@height\headrulewidth\@width\headwidth \vskip-\headrulewidth}}
+
+\def\footrule{{\if@fancyplain\let\footrulewidth\plainfootrulewidth\fi
+    \vskip-\footruleskip\vskip-\footrulewidth
+    \hrule\@width\headwidth\@height\footrulewidth\vskip\footruleskip}}
+
+\def\ps@fancy{%
+\@ifundefined{@chapapp}{\let\@chapapp\chaptername}{}%for amsbook
+%
+% Define \MakeUppercase for old LaTeXen.
+% Note: we used \def rather than \let, so that \let\uppercase\relax (from
+% the version 1 documentation) will still work.
+%
+\@ifundefined{MakeUppercase}{\def\MakeUppercase{\uppercase}}{}%
+\@ifundefined{chapter}{\def\sectionmark##1{\markboth
+{\MakeUppercase{\ifnum \c@secnumdepth>\z@
+ \thesection\hskip 1em\relax \fi ##1}}{}}%
+\def\subsectionmark##1{\markright {\ifnum \c@secnumdepth >\@ne
+ \thesubsection\hskip 1em\relax \fi ##1}}}%
+{\def\chaptermark##1{\markboth {\MakeUppercase{\ifnum \c@secnumdepth>\m@ne
+ \@chapapp\ \thechapter. \ \fi ##1}}{}}%
+\def\sectionmark##1{\markright{\MakeUppercase{\ifnum \c@secnumdepth >\z@
+ \thesection. \ \fi ##1}}}}%
+%\csname ps@headings\endcsname % use \ps@headings defaults if they exist
+\ps@@fancy
+\gdef\ps@fancy{\@fancyplainfalse\ps@@fancy}%
+% Initialize \headwidth if the user didn't
+%
+\ifdim\headwidth<0sp
+%
+% This catches the case that \headwidth hasn't been initialized and the
+% case that the user added something to \headwidth in the expectation that
+% it was initialized to \textwidth. We compensate this now. This loses if
+% the user intended to multiply it by a factor. But that case is more
+% likely done by saying something like \headwidth=1.2\textwidth.
+% The doc says you have to change \headwidth after the first call to
+% \pagestyle{fancy}. This code is just to catch the most common cases were
+% that requirement is violated.
+%
+    \global\advance\headwidth123456789sp\global\advance\headwidth\textwidth
+\fi}
+\def\ps@fancyplain{\ps@fancy \let\ps@plain\ps@plain@fancy}
+\def\ps@plain@fancy{\@fancyplaintrue\ps@@fancy}
+\let\ps@@empty\ps@empty
+\def\ps@@fancy{%
+\ps@@empty % This is for amsbook/amsart, which do strange things with \topskip
+\def\@mkboth{\protect\markboth}%
+\def\@oddhead{\@fancyhead\fancy@Oolh\f@ncyolh\f@ncyoch\f@ncyorh\fancy@Oorh}%
+\def\@oddfoot{\@fancyfoot\fancy@Oolf\f@ncyolf\f@ncyocf\f@ncyorf\fancy@Oorf}%
+\def\@evenhead{\@fancyhead\fancy@Oelh\f@ncyelh\f@ncyech\f@ncyerh\fancy@Oerh}%
+\def\@evenfoot{\@fancyfoot\fancy@Oelf\f@ncyelf\f@ncyecf\f@ncyerf\fancy@Oerf}%
+}
+% Default definitions for compatibility mode:
+% These cause the header/footer to take the defined \headwidth as width
+% And to shift in the direction of the marginpar area
+
+\def\fancy@Oolh{\if@reversemargin\hss\else\relax\fi}
+\def\fancy@Oorh{\if@reversemargin\relax\else\hss\fi}
+\let\fancy@Oelh\fancy@Oorh
+\let\fancy@Oerh\fancy@Oolh
+
+\let\fancy@Oolf\fancy@Oolh
+\let\fancy@Oorf\fancy@Oorh
+\let\fancy@Oelf\fancy@Oelh
+\let\fancy@Oerf\fancy@Oerh
+
+% New definitions for the use of \fancyhfoffset
+% These calculate the \headwidth from \textwidth and the specified offsets.
+
+\def\fancy@offsolh{\headwidth=\textwidth\advance\headwidth\f@ncyO@olh
+                   \advance\headwidth\f@ncyO@orh\hskip-\f@ncyO@olh}
+\def\fancy@offselh{\headwidth=\textwidth\advance\headwidth\f@ncyO@elh
+                   \advance\headwidth\f@ncyO@erh\hskip-\f@ncyO@elh}
+
+\def\fancy@offsolf{\headwidth=\textwidth\advance\headwidth\f@ncyO@olf
+                   \advance\headwidth\f@ncyO@orf\hskip-\f@ncyO@olf}
+\def\fancy@offself{\headwidth=\textwidth\advance\headwidth\f@ncyO@elf
+                   \advance\headwidth\f@ncyO@erf\hskip-\f@ncyO@elf}
+
+\def\fancy@setoffs{%
+% Just in case \let\headwidth\textwidth was used
+  \fancy@gbl\let\headwidth\fancy@headwidth
+  \fancy@gbl\let\fancy@Oolh\fancy@offsolh
+  \fancy@gbl\let\fancy@Oelh\fancy@offselh
+  \fancy@gbl\let\fancy@Oorh\hss
+  \fancy@gbl\let\fancy@Oerh\hss
+  \fancy@gbl\let\fancy@Oolf\fancy@offsolf
+  \fancy@gbl\let\fancy@Oelf\fancy@offself
+  \fancy@gbl\let\fancy@Oorf\hss
+  \fancy@gbl\let\fancy@Oerf\hss}
+
+\newif\iffootnote
+\let\latex@makecol\@makecol
+\def\@makecol{\ifvoid\footins\footnotetrue\else\footnotefalse\fi
+\let\topfloat\@toplist\let\botfloat\@botlist\latex@makecol}
+\def\iftopfloat#1#2{\ifx\topfloat\empty #2\else #1\fi}
+\def\ifbotfloat#1#2{\ifx\botfloat\empty #2\else #1\fi}
+\def\iffloatpage#1#2{\if@fcolmade #1\else #2\fi}
+
+\newcommand{\fancypagestyle}[2]{%
+  \@namedef{ps@#1}{\let\fancy@gbl\relax#2\relax\ps@fancy}}
+

+ 990 - 0
wsc19latex/psfig.sty

@@ -0,0 +1,990 @@
+% Psfig/TeX
+\def\PsfigVersion{1.10}
+\def\setDriver{\DvipsDriver} % \DvipsDriver or \OzTeXDriver
+%
+% All software, documentation, and related files in this distribution of
+% psfig/tex are Copyright 1993 Trevor J. Darrell
+%
+% Permission is granted for use and non-profit distribution of psfig/tex
+% providing that this notice is clearly maintained. The right to
+% distribute any portion of psfig/tex for profit or as part of any commercial
+% product is specifically reserved for the author(s) of that portion.
+%
+% To use with LaTeX, use \documentstyle[psfig,...]{...}
+% To use with TeX, use \input psfig.sty
+%
+% Bugs and improvements to trevor@media.mit.edu.
+%
+% Thanks to Ned Batchelder, Greg Hager (GDH), J. Daniel Smith (JDS),
+% Tom Rokicki (TR), Robert Russell (RR), George V. Reilly (GVR),
+% Ken McGlothlen (KHC), Baron Grey (BG), Gerhard Tobermann (GT),
+% Jairo R. Montoya-Torres (JRMT).
+% and all others who have contributed code and comments to this project!
+%
+% ======================================================================
+% Modification History:
+%
+%  9 Oct 1990   JDS used more robust bbox reading code from Tom Rokicki
+% 29 Mar 1991   JDS implemented rotation= option
+% 25 Jun 1991   RR  if bb specified on cmd line don't check
+%           for .ps file.
+%  3 Jul 1991   JDS check if file already read in once
+%  4 Sep 1991   JDS fixed incorrect computation of rotated
+%           bounding box
+% 25 Sep 1991   GVR expanded synopsis of \psfig
+% 14 Oct 1991   JDS \fbox code from LaTeX so \psdraft works with TeX
+%           changed \typeout to \ps@typeout
+% 17 Oct 1991   JDS added \psscalefirst and \psrotatefirst
+% 23 Jun 1993   KHC     ``doclip'' must appear before ``rotate''
+% 27 Oct 1993   TJD removed printing of filename to avoid
+%           underscore problems. changed \frame to \fbox.
+%           Added OzTeX support from BG. Added new
+%           figure search path code from GT.
+% 01 Feb 2010   JRMT implemented the use of .eps figure format
+%
+% ======================================================================
+%
+% Command synopsis:
+%
+% \psdraft  draws an outline box, but doesn't include the figure
+%       in the DVI file.  Useful for previewing.
+%
+% \psfull   includes the figure in the DVI file (default).
+%
+% \psscalefirst width= or height= specifies the size of the figure
+%       before rotation.
+% \psrotatefirst (default) width= or height= specifies the size of the
+%        figure after rotation.  Asymetric figures will
+%        appear to shrink.
+%
+% \psfigurepath{dir:dir:...}  sets the path to search for the figure
+%
+% \psfig
+% usage: \psfig{file=, figure=, height=, width=,
+%           bbllx=, bblly=, bburx=, bbury=,
+%           rheight=, rwidth=, clip=, angle=, silent=}
+%
+%   "file" is the filename.  If no path name is specified and the
+%       file is not found in the current directory,
+%       it will be looked for in directory \psfigurepath.
+%   "figure" is a synonym for "file".
+%   By default, the width and height of the figure are taken from
+%       the BoundingBox of the figure.
+%   If "width" is specified, the figure is scaled so that it has
+%       the specified width.  Its height changes proportionately.
+%   If "height" is specified, the figure is scaled so that it has
+%       the specified height.  Its width changes proportionately.
+%   If both "width" and "height" are specified, the figure is scaled
+%       anamorphically.
+%   "bbllx", "bblly", "bburx", and "bbury" control the PostScript
+%       BoundingBox.  If these four values are specified
+%               *before* the "file" option, the PSFIG will not try to
+%               open the PostScript file.
+%   "rheight" and "rwidth" are the reserved height and width
+%       of the figure, i.e., how big TeX actually thinks
+%       the figure is.  They default to "width" and "height".
+%   The "clip" option ensures that no portion of the figure will
+%       appear outside its BoundingBox.  "clip=" is a switch and
+%       takes no value, but the `=' must be present.
+%   The "angle" option specifies the angle of rotation (degrees, ccw).
+%   The "silent" option makes \psfig work silently.
+%
+% ======================================================================
+% check to see if macros already loaded in (maybe some other file says
+% "\input psfig") ...
+\ifx\undefined\psfig\else\endinput\fi
+%
+% from a suggestion by eijkhout@csrd.uiuc.edu to allow
+% loading as a style file. Changed to avoid problems
+% with amstex per suggestion by jbence@math.ucla.edu
+
+\let\LaTeXAtSign=\@
+\let\@=\relax
+\edef\psfigRestoreAt{\catcode`\@=\number\catcode`@\relax}
+%\edef\psfigRestoreAt{\catcode`@=\number\catcode`@\relax}
+\catcode`\@=11\relax
+\newwrite\@unused
+\def\ps@typeout#1{{\let\protect\string\immediate\write\@unused{#1}}}
+
+\def\DvipsDriver{
+    \ps@typeout{psfig/tex \PsfigVersion -dvips}
+\def\PsfigSpecials{\DvipsSpecials}  \def\ps@dir{/}
+\def\ps@predir{} }
+\def\OzTeXDriver{
+    \ps@typeout{psfig/tex \PsfigVersion -oztex}
+    \def\PsfigSpecials{\OzTeXSpecials}
+    \def\ps@dir{:}
+    \def\ps@predir{:}
+    \catcode`\^^J=5
+}
+
+%% Here's how you define your figure path.  Should be set up with null
+%% default and a user useable definition.
+
+\def\figurepath{./:}
+\def\psfigurepath#1{\edef\figurepath{#1:}}
+
+%%% inserted for Searching Unixpaths
+%%% (the path must end with :)
+%%% (call: \DoPaths\figurepath )
+%%%------------------------------------------------------
+\def\DoPaths#1{\expandafter\EachPath#1\stoplist}
+%
+\def\leer{}
+\def\EachPath#1:#2\stoplist{% #1 part of the list (delimiter :)
+  \ExistsFile{#1}{\SearchedFile}
+  \ifx#2\leer
+  \else
+    \expandafter\EachPath#2\stoplist
+  \fi}
+%
+% exists the file (does not work for directories!)
+%
+\def\ps@dir{/}
+\def\ExistsFile#1#2{%
+   \openin1=\ps@predir#1\ps@dir#2
+   \ifeof1
+       \closein1
+       %\ps@typeout{...not: \ps@predir#1\ps@dir#2}
+   \else
+       \closein1
+       %\ps@typeout{...in:  \ps@predir#1\ps@dir#2}
+        \ifx\ps@founddir\leer
+          %\ps@typeout{set founddir #1}
+           \edef\ps@founddir{#1}
+        \fi
+   \fi}
+%------------------------------------------------------
+%
+% Get dir in path or error
+%
+\def\get@dir#1{%
+  \def\ps@founddir{}
+  \def\SearchedFile{#1}
+  \DoPaths\figurepath
+%  \fi
+}
+%------------------------------------------------------
+%%% END of Searching Unixpaths
+
+
+%
+% @psdo control structure -- similar to Latex @for.
+% I redefined these with different names so that psfig can
+% be used with TeX as well as LaTeX, and so that it will not
+% be vunerable to future changes in LaTeX's internal
+% control structure,
+%
+\def\@nnil{\@nil}
+\def\@empty{}
+\def\@psdonoop#1\@@#2#3{}
+\def\@psdo#1:=#2\do#3{\edef\@psdotmp{#2}\ifx\@psdotmp\@empty \else
+    \expandafter\@psdoloop#2,\@nil,\@nil\@@#1{#3}\fi}
+\def\@psdoloop#1,#2,#3\@@#4#5{\def#4{#1}\ifx #4\@nnil \else
+       #5\def#4{#2}\ifx #4\@nnil \else#5\@ipsdoloop #3\@@#4{#5}\fi\fi}
+\def\@ipsdoloop#1,#2\@@#3#4{\def#3{#1}\ifx #3\@nnil
+       \let\@nextwhile=\@psdonoop \else
+      #4\relax\let\@nextwhile=\@ipsdoloop\fi\@nextwhile#2\@@#3{#4}}
+\def\@tpsdo#1:=#2\do#3{\xdef\@psdotmp{#2}\ifx\@psdotmp\@empty \else
+    \@tpsdoloop#2\@nil\@nil\@@#1{#3}\fi}
+\def\@tpsdoloop#1#2\@@#3#4{\def#3{#1}\ifx #3\@nnil
+       \let\@nextwhile=\@psdonoop \else
+      #4\relax\let\@nextwhile=\@tpsdoloop\fi\@nextwhile#2\@@#3{#4}}
+%
+% \fbox is defined in latex.tex; so if \fbox is undefined, assume that
+% we are not in LaTeX.
+% Perhaps this could be done better???
+\ifx\undefined\fbox
+% \fbox code from modified slightly from LaTeX
+\newdimen\fboxrule
+\newdimen\fboxsep
+\newdimen\ps@tempdima
+\newbox\ps@tempboxa
+\fboxsep = 3pt \fboxrule = .4pt
+\long\def\fbox#1{\leavevmode\setbox\ps@tempboxa\hbox{#1}\ps@tempdima\fboxrule
+    \advance\ps@tempdima \fboxsep \advance\ps@tempdima \dp\ps@tempboxa
+   \hbox{\lower \ps@tempdima\hbox
+  {\vbox{\hrule height \fboxrule
+          \hbox{\vrule width \fboxrule \hskip\fboxsep
+          \vbox{\vskip\fboxsep \box\ps@tempboxa\vskip\fboxsep}\hskip
+                 \fboxsep\vrule width \fboxrule}
+                 \hrule height \fboxrule}}}}
+\fi
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% file reading stuff from epsf.tex
+%   EPSF.TEX macro file:
+%   Written by Tomas Rokicki of Radical Eye Software, 29 Mar 1989.
+%   Revised by Don Knuth, 3 Jan 1990.
+%   Revised by Tomas Rokicki to accept bounding boxes with no
+%      space after the colon, 18 Jul 1990.
+%   Portions modified/removed for use in PSFIG package by
+%      J. Daniel Smith, 9 October 1990.
+%
+\newread\ps@stream
+\newif\ifnot@eof       % continue looking for the bounding box?
+\newif\if@noisy        % report what you're making?
+\newif\if@atend        % %%BoundingBox: has (at end) specification
+\newif\if@psfile       % does this look like a PostScript file?
+%
+% PostScript files should start with `%!'
+%
+{\catcode`\%=12\global\gdef\epsf@start{%!}}
+\def\epsf@PS{PS}
+%
+\def\epsf@getbb#1{%
+%
+%   The first thing we need to do is to open the
+%   PostScript file, if possible.
+%
+\openin\ps@stream=\ps@predir#1 \ifeof\ps@stream\ps@typeout{Error,
+File #1 not found}\else
+%
+%   Okay, we got it. Now we'll scan lines until we find one that doesn't
+%   start with %. We're looking for the bounding box comment.
+%
+   {\not@eoftrue \chardef\other=12
+    \def\do##1{\catcode`##1=\other}\dospecials \catcode`\ =10
+    \loop
+       \if@psfile
+      \read\ps@stream to \epsf@fileline
+       \else{
+      \obeyspaces
+          \read\ps@stream to \epsf@tmp\global\let\epsf@fileline\epsf@tmp}
+       \fi
+       \ifeof\ps@stream\not@eoffalse\else
+%
+%   Check the first line for `%!'.  Issue a warning message if its not
+%   there, since the file might not be a PostScript file.
+%
+       \if@psfile\else
+       \expandafter\epsf@test\epsf@fileline:. \\%
+       \fi
+%
+%   We check to see if the first character is a % sign;
+%   if so, we look further and stop only if the line begins with
+%   `%%BoundingBox:' and the `(atend)' specification was not found.
+%   That is, the only way to stop is when the end of file is reached,
+%   or a `%%BoundingBox: llx lly urx ury' line is found.
+%
+          \expandafter\epsf@aux\epsf@fileline:. \\%
+       \fi
+   \ifnot@eof\repeat
+   }\closein\ps@stream\fi}%
+%
+% This tests if the file we are reading looks like a PostScript file.
+%
+\long\def\epsf@test#1#2#3:#4\\{\def\epsf@testit{#1#2}
+            \ifx\epsf@testit\epsf@start\else
+\ps@typeout{Warning! File does not start with `\epsf@start'.  It
+may not be a PostScript file.}
+            \fi
+            \@psfiletrue} % don't test after 1st line
+%
+%   We still need to define the tricky \epsf@aux macro. This requires
+%   a couple of magic constants for comparison purposes.
+%
+{\catcode`\%=12\global\let\epsf@percent=%\global\def\epsf@bblit{%BoundingBox}}
+%
+%
+%   So we're ready to check for `%BoundingBox:' and to grab the
+%   values if they are found.  We continue searching if `(at end)'
+%   was found after the `%BoundingBox:'.
+%
+\long\def\epsf@aux#1#2:#3\\{\ifx#1\epsf@percent
+   \def\epsf@testit{#2}\ifx\epsf@testit\epsf@bblit
+    \@atendfalse
+        \epsf@atend #3 . \\%
+    \if@atend
+       \if@verbose{
+        \ps@typeout{psfig: found `(atend)'; continuing search}
+       }\fi
+        \else
+        \epsf@grab #3 . . . \\%
+        \not@eoffalse
+        \global\no@bbfalse
+        \fi
+   \fi\fi}%
+%
+%   Here we grab the values and stuff them in the appropriate definitions.
+%
+\def\epsf@grab #1 #2 #3 #4 #5\\{%
+   \global\def\epsf@llx{#1}\ifx\epsf@llx\empty
+      \epsf@grab #2 #3 #4 #5 .\\\else
+   \global\def\epsf@lly{#2}%
+   \global\def\epsf@urx{#3}\global\def\epsf@ury{#4}\fi}%
+%
+% Determine if the stuff following the %%BoundingBox is `(atend)'
+% J. Daniel Smith.  Copied from \epsf@grab above.
+%
+\def\epsf@atendlit{(atend)}
+\def\epsf@atend #1 #2 #3\\{%
+   \def\epsf@tmp{#1}\ifx\epsf@tmp\empty
+      \epsf@atend #2 #3 .\\\else
+   \ifx\epsf@tmp\epsf@atendlit\@atendtrue\fi\fi}
+
+
+% End of file reading stuff from epsf.tex
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% trigonometry stuff from "trig.tex"
+\chardef\psletter = 11 % won't conflict with \begin{letter} now...
+\chardef\other = 12
+
+\newif \ifdebug %%% turn me on to see TeX hard at work ...
+\newif\ifc@mpute %%% don't need to compute some values
+\c@mputetrue % but assume that we do
+
+\let\then = \relax
+\def\r@dian{pt }
+\let\r@dians = \r@dian
+\let\dimensionless@nit = \r@dian
+\let\dimensionless@nits = \dimensionless@nit
+\def\internal@nit{sp }
+\let\internal@nits = \internal@nit
+\newif\ifstillc@nverging
+\def \Mess@ge #1{\ifdebug \then \message {#1} \fi}
+
+{ %%% Things that need abnormal catcodes %%%
+    \catcode `\@ = \psletter
+    \gdef \nodimen {\expandafter \n@dimen \the \dimen}
+    \gdef \term #1 #2 #3%
+           {\edef \t@ {\the #1}%%% freeze parameter 1 (count, by value)
+        \edef \t@@ {\expandafter \n@dimen \the #2\r@dian}%
+                   %%% freeze parameter 2 (dimen, by value)
+        \t@rm {\t@} {\t@@} {#3}%
+           }
+    \gdef \t@rm #1 #2 #3%
+           {{%
+        \count 0 = 0
+        \dimen 0 = 1 \dimensionless@nit
+        \dimen 2 = #2\relax
+        \Mess@ge {Calculating term #1 of \nodimen 2}%
+        \loop
+        \ifnum  \count 0 < #1
+        \then   \advance \count 0 by 1
+            \Mess@ge {Iteration \the \count 0 \space}%
+            \Multiply \dimen 0 by {\dimen 2}%
+            \Mess@ge {After multiplication, term = \nodimen 0}%
+            \Divide \dimen 0 by {\count 0}%
+            \Mess@ge {After division, term = \nodimen 0}%
+        \repeat
+        \Mess@ge {Final value for term #1 of
+                \nodimen 2 \space is \nodimen 0}%
+        \xdef \Term {#3 = \nodimen 0 \r@dians}%
+        \aftergroup \Term
+           }}
+    \catcode `\p = \other
+    \catcode `\t = \other
+    \gdef \n@dimen #1pt{#1} %%% throw away the ``pt''
+}
+
+\def \Divide #1by #2{\divide #1 by #2} %%% just a synonym
+
+\def \Multiply #1by #2%%% allows division of a dimen by a dimen
+       {{%%% should really freeze parameter 2 (dimen, passed by value)
+    \count 0 = #1\relax
+    \count 2 = #2\relax
+    \count 4 = 65536
+    \Mess@ge {Before scaling, count 0 = \the \count 0 \space and
+            count 2 = \the \count 2}%
+    \ifnum  \count 0 > 32767 %%% do our best to avoid overflow
+    \then   \divide \count 0 by 4
+        \divide \count 4 by 4
+    \else   \ifnum  \count 0 < -32767
+        \then   \divide \count 0 by 4
+            \divide \count 4 by 4
+        \else
+        \fi
+    \fi
+    \ifnum  \count 2 > 32767 %%% while retaining reasonable accuracy
+    \then   \divide \count 2 by 4
+        \divide \count 4 by 4
+    \else   \ifnum  \count 2 < -32767
+        \then   \divide \count 2 by 4
+            \divide \count 4 by 4
+        \else
+        \fi
+    \fi
+    \multiply \count 0 by \count 2
+    \divide \count 0 by \count 4
+    \xdef \product {#1 = \the \count 0 \internal@nits}%
+    \aftergroup \product
+       }}
+
+\def\r@duce{\ifdim\dimen0 > 90\r@dian \then   % sin(x+90) = sin(180-x)
+        \multiply\dimen0 by -1
+        \advance\dimen0 by 180\r@dian
+        \r@duce
+        \else \ifdim\dimen0 < -90\r@dian \then  % sin(-x) = sin(360+x)
+        \advance\dimen0 by 360\r@dian
+        \r@duce
+        \fi
+        \fi}
+
+\def\Sine#1%
+       {{%
+    \dimen 0 = #1 \r@dian
+    \r@duce
+    \ifdim\dimen0 = -90\r@dian \then
+       \dimen4 = -1\r@dian
+       \c@mputefalse
+    \fi
+    \ifdim\dimen0 = 90\r@dian \then
+       \dimen4 = 1\r@dian
+       \c@mputefalse
+    \fi
+    \ifdim\dimen0 = 0\r@dian \then
+       \dimen4 = 0\r@dian
+       \c@mputefalse
+    \fi
+%
+    \ifc@mpute \then
+            % convert degrees to radians
+        \divide\dimen0 by 180
+        \dimen0=3.141592654\dimen0
+%
+        \dimen 2 = 3.1415926535897963\r@dian %%% a well-known constant
+        \divide\dimen 2 by 2 %%% we only deal with -pi/2 : pi/2
+        \Mess@ge {Sin: calculating Sin of \nodimen 0}%
+        \count 0 = 1 %%% see power-series expansion for sine
+        \dimen 2 = 1 \r@dian %%% ditto
+        \dimen 4 = 0 \r@dian %%% ditto
+        \loop
+            \ifnum  \dimen 2 = 0 %%% then we've done
+            \then   \stillc@nvergingfalse
+            \else   \stillc@nvergingtrue
+            \fi
+            \ifstillc@nverging %%% then calculate next term
+            \then   \term {\count 0} {\dimen 0} {\dimen 2}%
+                \advance \count 0 by 2
+                \count 2 = \count 0
+                \divide \count 2 by 2
+                \ifodd  \count 2 %%% signs alternate
+                \then   \advance \dimen 4 by \dimen 2
+                \else   \advance \dimen 4 by -\dimen 2
+                \fi
+        \repeat
+    \fi
+            \xdef \sine {\nodimen 4}%
+       }}
+
+% Now the Cosine can be calculated easily by calling \Sine
+\def\Cosine#1{\ifx\sine\UnDefined\edef\Savesine{\relax}\else
+                     \edef\Savesine{\sine}\fi
+    {\dimen0=#1\r@dian\advance\dimen0 by 90\r@dian
+     \Sine{\nodimen 0}
+     \xdef\cosine{\sine}
+     \xdef\sine{\Savesine}}}
+% end of trig stuff
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\psdraft{
+    \def\@psdraft{0}
+    %\ps@typeout{draft level now is \@psdraft \space . }
+}
+\def\psfull{
+    \def\@psdraft{100}
+    %\ps@typeout{draft level now is \@psdraft \space . }
+}
+
+\psfull
+
+\newif\if@scalefirst
+\def\psscalefirst{\@scalefirsttrue}
+\def\psrotatefirst{\@scalefirstfalse}
+\psrotatefirst
+
+\newif\if@draftbox
+\def\psnodraftbox{
+    \@draftboxfalse
+}
+\def\psdraftbox{
+    \@draftboxtrue
+} \@draftboxtrue
+
+\newif\if@prologfile
+\newif\if@postlogfile
+\def\pssilent{
+    \@noisyfalse
+}
+\def\psnoisy{
+    \@noisytrue
+} \psnoisy
+%%% These are for the option list.
+%%% A specification of the form a = b maps to calling \@p@@sa{b}
+\newif\if@bbllx
+\newif\if@bblly
+\newif\if@bburx
+\newif\if@bbury
+\newif\if@height
+\newif\if@width
+\newif\if@rheight
+\newif\if@rwidth
+\newif\if@angle
+\newif\if@clip
+\newif\if@verbose
+\def\@p@@sclip#1{\@cliptrue}
+%
+%
+\newif\if@decmpr
+%
+\def\@p@@sfigure#1{\def\@p@sfile{null}\def\@p@sbbfile{null}\@decmprfalse
+   % look directly for file (e.g. absolute path)
+   \openin1=\ps@predir#1
+   \ifeof1
+    \closein1
+    % failed, search directories for file
+    \get@dir{#1}
+    \ifx\ps@founddir\leer
+        % failed, search directly for file.bb
+        \openin1=\ps@predir#1.bb
+        \ifeof1
+            \closein1
+            % failed, search directories for file.bb
+            \get@dir{#1.bb}
+            \ifx\ps@founddir\leer
+                % failed, lose.
+                \ps@typeout{Can't find #1 in \figurepath}
+            \else
+                % found file.bb in search dir
+                \@decmprtrue
+                \def\@p@sfile{\ps@founddir\ps@dir#1}
+                \def\@p@sbbfile{\ps@founddir\ps@dir#1.bb}
+            \fi
+        \else
+            \closein1
+            %found file.bb directly
+            \@decmprtrue
+            \def\@p@sfile{#1}
+            \def\@p@sbbfile{#1.bb}
+        \fi
+    \else
+        % found file in search dir
+        \def\@p@sfile{\ps@founddir\ps@dir#1}
+        \def\@p@sbbfile{\ps@founddir\ps@dir#1}
+    \fi
+   \else
+    % found file directly
+    \closein1
+    \def\@p@sfile{#1}
+    \def\@p@sbbfile{#1}
+   \fi
+}
+%
+%
+%
+\def\@p@@sfile#1{\@p@@sfigure{#1}}
+%
+\def\@p@@sbbllx#1{
+        %\ps@typeout{bbllx is #1}
+        \@bbllxtrue
+        \dimen100=#1
+        \edef\@p@sbbllx{\number\dimen100}
+}
+\def\@p@@sbblly#1{
+        %\ps@typeout{bblly is #1}
+        \@bbllytrue
+        \dimen100=#1
+        \edef\@p@sbblly{\number\dimen100}
+}
+\def\@p@@sbburx#1{
+        %\ps@typeout{bburx is #1}
+        \@bburxtrue
+        \dimen100=#1
+        \edef\@p@sbburx{\number\dimen100}
+}
+\def\@p@@sbbury#1{
+        %\ps@typeout{bbury is #1}
+        \@bburytrue
+        \dimen100=#1
+        \edef\@p@sbbury{\number\dimen100}
+}
+\def\@p@@sheight#1{
+        \@heighttrue
+        \dimen100=#1
+        \edef\@p@sheight{\number\dimen100}
+        %\ps@typeout{Height is \@p@sheight}
+}
+\def\@p@@swidth#1{
+        %\ps@typeout{Width is #1}
+        \@widthtrue
+        \dimen100=#1
+        \edef\@p@swidth{\number\dimen100}
+}
+\def\@p@@srheight#1{
+        %\ps@typeout{Reserved height is #1}
+        \@rheighttrue
+        \dimen100=#1
+        \edef\@p@srheight{\number\dimen100}
+}
+\def\@p@@srwidth#1{
+        %\ps@typeout{Reserved width is #1}
+        \@rwidthtrue
+        \dimen100=#1
+        \edef\@p@srwidth{\number\dimen100}
+}
+\def\@p@@sangle#1{
+        %\ps@typeout{Rotation is #1}
+        \@angletrue
+%       \dimen100=#1
+        \edef\@p@sangle{#1} %\number\dimen100}
+}
+\def\@p@@ssilent#1{
+        \@verbosefalse
+}
+\def\@p@@sprolog#1{\@prologfiletrue\def\@prologfileval{#1}}
+\def\@p@@spostlog#1{\@postlogfiletrue\def\@postlogfileval{#1}}
+\def\@cs@name#1{\csname #1\endcsname}
+\def\@setparms#1=#2,{\@cs@name{@p@@s#1}{#2}}
+%
+% initialize the defaults (size the size of the figure)
+%
+\def\ps@init@parms{
+        \@bbllxfalse \@bbllyfalse
+        \@bburxfalse \@bburyfalse
+        \@heightfalse \@widthfalse
+        \@rheightfalse \@rwidthfalse
+        \def\@p@sbbllx{}\def\@p@sbblly{}
+        \def\@p@sbburx{}\def\@p@sbbury{}
+        \def\@p@sheight{}\def\@p@swidth{}
+        \def\@p@srheight{}\def\@p@srwidth{}
+        \def\@p@sangle{0}
+        \def\@p@sfile{} \def\@p@sbbfile{}
+        \def\@p@scost{10}
+        \def\@sc{}
+        \@prologfilefalse
+        \@postlogfilefalse
+        \@clipfalse
+        \if@noisy
+            \@verbosetrue
+        \else
+            \@verbosefalse
+        \fi
+}
+%
+% Go through the options setting things up.
+%
+\def\parse@ps@parms#1{
+        \@psdo\@psfiga:=#1\do
+           {\expandafter\@setparms\@psfiga,}}
+%
+% Compute bb height and width
+%
+\newif\ifno@bb
+\def\bb@missing{
+    \if@verbose{
+        \ps@typeout{psfig: searching \@p@sbbfile \space  for bounding box}
+    }\fi
+    \no@bbtrue
+    \epsf@getbb{\@p@sbbfile}
+        \ifno@bb \else \bb@cull\epsf@llx\epsf@lly\epsf@urx\epsf@ury\fi
+}
+\def\bb@cull#1#2#3#4{
+    \dimen100=#1 bp\edef\@p@sbbllx{\number\dimen100}
+    \dimen100=#2 bp\edef\@p@sbblly{\number\dimen100}
+    \dimen100=#3 bp\edef\@p@sbburx{\number\dimen100}
+    \dimen100=#4 bp\edef\@p@sbbury{\number\dimen100}
+    \no@bbfalse
+}
+% rotate point (#1,#2) about (0,0).
+% The sine and cosine of the angle are already stored in \sine and
+% \cosine.  The result is placed in (\p@intvaluex, \p@intvaluey).
+\newdimen\p@intvaluex
+\newdimen\p@intvaluey
+\def\rotate@#1#2{{\dimen0=#1 sp\dimen1=#2 sp
+%               calculate x' = x \cos\theta - y \sin\theta
+          \global\p@intvaluex=\cosine\dimen0
+          \dimen3=\sine\dimen1
+          \global\advance\p@intvaluex by -\dimen3
+%       calculate y' = x \sin\theta + y \cos\theta
+          \global\p@intvaluey=\sine\dimen0
+          \dimen3=\cosine\dimen1
+          \global\advance\p@intvaluey by \dimen3
+          }}
+\def\compute@bb{
+        \no@bbfalse
+        \if@bbllx \else \no@bbtrue \fi
+        \if@bblly \else \no@bbtrue \fi
+        \if@bburx \else \no@bbtrue \fi
+        \if@bbury \else \no@bbtrue \fi
+        \ifno@bb \bb@missing \fi
+        \ifno@bb \ps@typeout{FATAL ERROR: no bb supplied or found}
+            \no-bb-error
+        \fi
+        %
+%\ps@typeout{BB: \@p@sbbllx, \@p@sbblly, \@p@sbburx, \@p@sbbury}
+%
+% store height/width of original (unrotated) bounding box
+        \count203=\@p@sbburx
+        \count204=\@p@sbbury
+        \advance\count203 by -\@p@sbbllx
+        \advance\count204 by -\@p@sbblly
+        \edef\ps@bbw{\number\count203}
+        \edef\ps@bbh{\number\count204}
+        %\ps@typeout{ psbbh = \ps@bbh, psbbw = \ps@bbw }
+        \if@angle
+            \Sine{\@p@sangle}\Cosine{\@p@sangle}
+                {\dimen100=\maxdimen\xdef\r@p@sbbllx{\number\dimen100}
+                        \xdef\r@p@sbblly{\number\dimen100}
+                                \xdef\r@p@sbburx{-\number\dimen100}
+                        \xdef\r@p@sbbury{-\number\dimen100}}
+%
+% Need to rotate all four points and take the X-Y extremes of the new
+% points as the new bounding box.
+                        \def\minmaxtest{
+               \ifnum\number\p@intvaluex<\r@p@sbbllx
+                  \xdef\r@p@sbbllx{\number\p@intvaluex}\fi
+               \ifnum\number\p@intvaluex>\r@p@sbburx
+                  \xdef\r@p@sbburx{\number\p@intvaluex}\fi
+               \ifnum\number\p@intvaluey<\r@p@sbblly
+                  \xdef\r@p@sbblly{\number\p@intvaluey}\fi
+               \ifnum\number\p@intvaluey>\r@p@sbbury
+                  \xdef\r@p@sbbury{\number\p@intvaluey}\fi
+               }
+%           lower left
+            \rotate@{\@p@sbbllx}{\@p@sbblly}
+            \minmaxtest
+%           upper left
+            \rotate@{\@p@sbbllx}{\@p@sbbury}
+            \minmaxtest
+%           lower right
+            \rotate@{\@p@sbburx}{\@p@sbblly}
+            \minmaxtest
+%           upper right
+            \rotate@{\@p@sbburx}{\@p@sbbury}
+            \minmaxtest
+            \edef\@p@sbbllx{\r@p@sbbllx}\edef\@p@sbblly{\r@p@sbblly}
+            \edef\@p@sbburx{\r@p@sbburx}\edef\@p@sbbury{\r@p@sbbury}
+%\ps@typeout{rotated BB: \r@p@sbbllx, \r@p@sbblly, \r@p@sbburx, \r@p@sbbury}
+        \fi
+        \count203=\@p@sbburx
+        \count204=\@p@sbbury
+        \advance\count203 by -\@p@sbbllx
+        \advance\count204 by -\@p@sbblly
+        \edef\@bbw{\number\count203}
+        \edef\@bbh{\number\count204}
+        %\ps@typeout{ bbh = \@bbh, bbw = \@bbw }
+}
+%
+% \in@hundreds performs #1 * (#2 / #3) correct to the hundreds,
+%   then leaves the result in @result
+%
+\def\in@hundreds#1#2#3{\count240=#2 \count241=#3
+             \count100=\count240    % 100 is first digit #2/#3
+             \divide\count100 by \count241
+             \count101=\count100
+             \multiply\count101 by \count241
+             \advance\count240 by -\count101
+             \multiply\count240 by 10
+             \count101=\count240    %101 is second digit of #2/#3
+             \divide\count101 by \count241
+             \count102=\count101
+             \multiply\count102 by \count241
+             \advance\count240 by -\count102
+             \multiply\count240 by 10
+             \count102=\count240    % 102 is the third digit
+             \divide\count102 by \count241
+             \count200=#1\count205=0
+             \count201=\count200
+            \multiply\count201 by \count100
+            \advance\count205 by \count201
+             \count201=\count200
+            \divide\count201 by 10
+            \multiply\count201 by \count101
+            \advance\count205 by \count201
+            %
+             \count201=\count200
+            \divide\count201 by 100
+            \multiply\count201 by \count102
+            \advance\count205 by \count201
+            %
+             \edef\@result{\number\count205}
+}
+\def\compute@wfromh{
+        % computing : width = height * (bbw / bbh)
+        \in@hundreds{\@p@sheight}{\@bbw}{\@bbh}
+        %\ps@typeout{ \@p@sheight * \@bbw / \@bbh, = \@result }
+        \edef\@p@swidth{\@result}
+        %\ps@typeout{w from h: width is \@p@swidth}
+}
+\def\compute@hfromw{
+        % computing : height = width * (bbh / bbw)
+            \in@hundreds{\@p@swidth}{\@bbh}{\@bbw}
+        %\ps@typeout{ \@p@swidth * \@bbh / \@bbw = \@result }
+        \edef\@p@sheight{\@result}
+        %\ps@typeout{h from w : height is \@p@sheight}
+}
+\def\compute@handw{
+        \if@height
+            \if@width
+            \else
+                \compute@wfromh
+            \fi
+        \else
+            \if@width
+                \compute@hfromw
+            \else
+                \edef\@p@sheight{\@bbh}
+                \edef\@p@swidth{\@bbw}
+            \fi
+        \fi
+}
+\def\compute@resv{
+        \if@rheight \else \edef\@p@srheight{\@p@sheight} \fi
+        \if@rwidth \else \edef\@p@srwidth{\@p@swidth} \fi
+        %\ps@typeout{rheight = \@p@srheight, rwidth = \@p@srwidth}
+}
+%
+% Compute any missing values
+\def\compute@sizes{
+    \compute@bb
+    \if@scalefirst\if@angle
+% at this point the bounding box has been adjsuted correctly for
+% rotation.  PSFIG does all of its scaling using \@bbh and \@bbw.  If
+% a width= or height= was specified along with \psscalefirst, then the
+% width=/height= value needs to be adjusted to match the new (rotated)
+% bounding box size (specifed in \@bbw and \@bbh).
+%    \ps@bbw       width=
+%    -------  =  ----------
+%    \@bbw       new width=
+% so `new width=' = (width= * \@bbw) / \ps@bbw; where \ps@bbw is the
+% width of the original (unrotated) bounding box.
+    \if@width
+       \in@hundreds{\@p@swidth}{\@bbw}{\ps@bbw}
+       \edef\@p@swidth{\@result}
+    \fi
+    \if@height
+       \in@hundreds{\@p@sheight}{\@bbh}{\ps@bbh}
+       \edef\@p@sheight{\@result}
+    \fi
+    \fi\fi
+    \compute@handw
+    \compute@resv}
+%
+%
+%
+\def\OzTeXSpecials{
+    \special{empty.ps /@isp {true} def}
+    \special{empty.ps \@p@swidth \space \@p@sheight \space
+            \@p@sbbllx \space \@p@sbblly \space
+            \@p@sbburx \space \@p@sbbury \space
+            startTexFig \space }
+    \if@clip{
+        \if@verbose{
+            \ps@typeout{(clip)}
+        }\fi
+        \special{empty.ps doclip \space }
+    }\fi
+    \if@angle{
+        \if@verbose{
+            \ps@typeout{(rotate)}
+        }\fi
+        \special {empty.ps \@p@sangle \space rotate \space}
+    }\fi
+    \if@prologfile
+        \special{\@prologfileval \space } \fi
+    \if@decmpr{
+        \if@verbose{
+            \ps@typeout{psfig: Compression not available
+            in OzTeX version \space }
+        }\fi
+    }\else{
+        \if@verbose{
+            \ps@typeout{psfig: including \@p@sfile \space }
+        }\fi
+        \special{epsf=\@p@sfile \space }
+    }\fi
+    \if@postlogfile
+        \special{\@postlogfileval \space } \fi
+    \special{empty.ps /@isp {false} def}
+}
+\def\DvipsSpecials{
+    %
+    \special{ps::[begin]    \@p@swidth \space \@p@sheight \space
+            \@p@sbbllx \space \@p@sbblly \space
+            \@p@sbburx \space \@p@sbbury \space
+            startTexFig \space }
+    \if@clip{
+        \if@verbose{
+            \ps@typeout{(clip)}
+        }\fi
+        \special{ps:: doclip \space }
+    }\fi
+    \if@angle
+        \if@verbose{
+            \ps@typeout{(clip)}
+        }\fi
+        \special {ps:: \@p@sangle \space rotate \space}
+    \fi
+    \if@prologfile
+        \special{ps: plotfile \@prologfileval \space } \fi
+    \if@decmpr{
+        \if@verbose{
+            \ps@typeout{psfig: including \@p@sfile.Z \space }
+        }\fi
+        \special{ps: plotfile "`zcat \@p@sfile.Z" \space }
+    }\else{
+        \if@verbose{
+            \ps@typeout{psfig: including \@p@sfile \space }
+        }\fi
+        \special{ps: plotfile \@p@sfile \space }
+    }\fi
+    \if@postlogfile
+        \special{ps: plotfile \@postlogfileval \space } \fi
+    \special{ps::[end] endTexFig \space }
+}
+%
+% \psfig
+% usage : \psfig{file=, height=, width=, bbllx=, bblly=, bburx=, bbury=,
+%           rheight=, rwidth=, clip=}
+%
+% "clip=" is a switch and takes no value, but the `=' must be present.
+\def\psfig#1{\vbox {
+    % do a zero width hard space so that a single
+    % \psfig in a centering enviornment will behave nicely
+    %{\setbox0=\hbox{\ }\ \hskip-\wd0}
+    %
+    \ps@init@parms
+    \parse@ps@parms{#1}
+    \compute@sizes
+    %
+    \ifnum\@p@scost<\@psdraft{
+        \PsfigSpecials
+        % Create the vbox to reserve the space for the figure.
+        \vbox to \@p@srheight sp{
+        % 1/92 TJD Changed from "true sp" to "sp" for magnification.
+            \hbox to \@p@srwidth sp{
+                \hss
+            }
+        \vss
+        }
+    }\else{
+        % draft figure, just reserve the space and print the
+        % path name.
+        \if@draftbox{
+            % Verbose draft: print file name in box
+            % 10/93 TJD changed to fbox from frame
+            \hbox{\fbox{\vbox to \@p@srheight sp{
+            \vss
+            \hbox to \@p@srwidth sp{ \hss
+                    % 10/93 TJD deleted to avoid ``_'' problems
+                % \@p@sfile
+             \hss }
+            \vss
+            }}}
+        }\else{
+            % Non-verbose draft
+            \vbox to \@p@srheight sp{
+            \vss
+            \hbox to \@p@srwidth sp{\hss}
+            \vss
+            }
+        }\fi
+
+
+
+    }\fi
+}} \psfigRestoreAt \setDriver
+\let\@=\LaTeXAtSign

File diff suppressed because it is too large
+ 3498 - 0
wsc19latex/puzzle.eps


BIN
wsc19latex/puzzle.pdf


BIN
wsc19latex/puzzle.png


+ 30 - 0
wsc19latex/readme.txt

@@ -0,0 +1,30 @@
+WSC proceedings Latex style
+
+The WSC proceedings style is usually adapted each year. Thus you have to make sure that you are using the style for the current year.
+
+
+Please check the 
+
+wscYYpaper.tex
+
+(with YY the current year)
+
+files for examples and further instructions.
+
+
+
+
+
+
+The style comprises the following files which you should never change:
+
+wscpaperproc.cls - the class file for a normal paper to appear in the proceedings
+wscposterproc.cls - the class file for a poster abstract
+
+wsc.sty - the general setup for the proceedings (page sizes, etc ...) is defined in there - is used in the class files
+wscsetup.sty - the "branding" file which contains the year and editor information - is used in wsc.sty
+
+wsc.bst - the bib entries formatting file
+
+
+wscYYstyle.tex - a file containg the class and style files named above (YY the current year)

File diff suppressed because it is too large
+ 1021 - 0
wsc19latex/writgd18.tex


File diff suppressed because it is too large
+ 1669 - 0
wsc19latex/wsc.bst


+ 513 - 0
wsc19latex/wsc.sty

@@ -0,0 +1,513 @@
+%*******************************************************************************
+%*
+%* ***WSC Style File - Base for LaTeX Papers for the WinterSim ***
+%*
+% Contains basic style elements valid for papers and for poster abstracts
+%
+%*
+%
+% HISTORY
+%
+% WSC 2012
+%  * fixed author font size bug
+% WSC 2011 - created this style file based on the templates for WSC 2010
+%  * outdated fancyheadings is from now on replaced by fancyhdr
+%  * introduced sections, added comments
+%  * includes wscsetup.sty -> contains year specific information (editors, etc ...)
+%  * modified page layout, line distances, paragraphs, itemize environments, etc to get closer to word
+%      template style
+%  * introduced command WSCpagesetup (author names) which setups the running header and many
+%      other things previously needed in each paper's first lines of document code
+%
+%
+% --------------------------------- REQUIRED PACKAGES ---------------------------------
+% This package is required for setting up the running page header (author names)
+\RequirePackage{fancyhdr}
+
+% WSC parameter setup (editors, year, proceedings name)
+\RequirePackage{wscsetup}
+
+% select times font (by including this here it will be hard for authors to change, font will be used in the end in anyway)
+\RequirePackage{times}
+
+% package for displaying urls
+\RequirePackage{url}
+% select times font for the url package
+\urlstyle{rm}
+
+% ?
+\def\draft{\overfullrule=6pt}
+
+% --------------------------------- SPECIAL COMMANDS ---------------------------------
+%Print an email address in the required style
+\def\email#1{\href{mailto://#1}{#1}}
+
+% No one needs to use the following commands, but if they are used they help to avoid the problem of using figure, table, and section instead of Figure, Table, and Section
+
+%Print Figure followed by the mark generated for the label passed
+\def\reffig#1{Figure~\ref{#1}}
+
+%Print Table followed by the mark generated for the label passed
+\def\reftab#1{Table~\ref{#1}}
+
+%Print Section followed by the mark generated for the label passed
+\def\refsec#1{Section~\ref{#1}}
+
+
+% --------------------------------- PAGE SETUP  ---------------------------------
+
+%\RequirePackage[nofoot,letterpaper,lmargin=1in,tmargin=1in,rmargin=1in,bmargin=1in]{geometry}
+
+\setlength\footskip{75\p@}
+
+%The width of the text area is 6.5 inches (16.0 cm)
+\setlength\textwidth{6.5in}
+
+%new for WSC-10
+\setlength\textheight{8.75in} %9.0125in
+%\setlength\textheight{8.76in}  %
+%\headsep=12pt
+\headsep=12pt
+%\headheight = 11pt
+
+%left and right margins are 1 inch (2.54 cm)
+\setlength\oddsidemargin{0in}%{-0.2in}
+\setlength\evensidemargin{0in}%{-0.1in}
+%\setlength\oddsidemargin{-.25in} \setlength\evensidemargin{-.25in}
+
+\setlength\marginparwidth {\z@}
+
+%top margin is set to be 1 inch (2.54 cm)
+%\setlength\topmargin{2.54cm}%{-4pc}%
+%\setlength\topmargin{-2pc}
+%\setlength\topmargin{-19pt}
+\setlength\topmargin{-21.89pt}   % JRW Edit 2/12/13
+\setlength\columnsep{.375in}
+
+%\pdfpagewidth 8.5in
+%\pdfpageheight 11.0in
+
+% --------------------------------- FLOAT SETUP  ---------------------------------
+% Setting the spaces around float (i.e, Figures, Tables etc ...)
+
+
+% distance between two floats
+\setlength{\floatsep}{12pt}
+% dynamic variant (more flexibel) \setlength\floatsep    {12\p@\@plus 2\p@ minus 2pt}
+
+% distance between float and text (above & below)
+\setlength{\textfloatsep}{6pt}
+%\setlength\textfloatsep{12\p@ \@plus 2\p@minus 2pt}
+
+%\textfloatsep - space between last top float or first bottom float and the text
+% space left on top and bottom of an in-text float.
+\setlength{\intextsep}{6pt}
+% \setlength\intextsep   {12\p@ \@plus 2\p@ minus 2pt}
+
+% space above caption
+\setlength{\abovecaptionskip}{6pt}
+% space below caption
+\setlength{\belowcaptionskip}{6pt}
+
+\setcounter{dbltopnumber}{4}
+
+\setcounter{topnumber}{4}
+
+% settings for two column mode - distance between floats
+\setlength{\dblfloatsep}{6pt}
+% settings for two column mode - distance between float and text
+\setlength{\dbltextfloatsep}{6pt}
+
+% --------------------------------- FONT SETUP  ---------------------------------
+
+%\font\titlepageheadfont=tii at 10pt
+
+% --------------------------------- NAMES SETUP  ---------------------------------
+\renewcommand{\refname}{REFERENCES}
+\newcommand\pagename{Page}
+
+% --------------------------------- SPECIAL WORDS
+\newcommand{\BibTeX}{B{\small IB}$\!$\TeX}
+
+% --------------------------------- HEADER SETUP  ---------------------------------
+% --- header of first page (including proceedings caption and names of editors) ---
+% moving up 1st header by approx 6mm to match word template
+\def\firstPageHead {
+  %increase the head height for the two lines editors/proceedings header (to avoid warning by fancyhdr)
+  \setlength{\headheight}{26pt}
+ %setup the header (left, italics containing proceedings caption and editors in 2nd row)
+  \lhead{
+  \fancyplain{
+   \textit{\currentCaption\\
+      \currentEditors , eds.}}{}}
+} % end of firstPageHead definition
+
+%****WSC setup for Running Heads of LaTeX Papers from second page on***
+\def\WSCpagesetup#1{
+
+% setting up general page style
+\pagestyle{fancyplain}
+
+% setting up page style of first page
+\thispagestyle{plain}
+\firstPageHead{}
+
+% setting up running header (authors) of subsequent pages
+\chead{\fancyplain{}{\itshape #1}}
+
+% setting up seperation parameters
+%\headsep=72pt
+\rhead{}
+\cfoot{}
+\renewcommand{\headrulewidth}{0pt} % (renewcommand needed in fancyhdr to remove top decorative line)
+%\headrulewidth=0pt  % ("setlength" needed in fancyheading to remove top decorative line)
+
+\input{wscbib.tex}           % Set up BiBTeX macros
+
+% needed to make the tex document look more like the word counterpart :-(
+\setlength{\baselineskip}{12.7pt}
+}
+
+% --------------------------------- TITLE SETUP  ---------------------------------
+% *** WSC formatting of the title (redefinition of title command)
+\renewcommand\title[1]{\gdef\@title{\bf #1}}
+
+%space between title and the abstract, this case has been set to be 3.4 inches (two rows of authors).
+\newlength{\titlevboxsize}
+\setlength\titlevboxsize {3.4in}
+
+\def\authors#1{\gdef\theauthors{#1}}
+\let\aauthor\authors
+
+%definition of maketitle
+
+\def\maketitle{\par\global\titletrue
+ \begingroup
+   \renewcommand\thefootnote{\fnsymbol{footnote}}%
+    \def\@makefnmark{\rlap{\@textsuperscript{\normalfont\@thefnmark}}}%
+     \long\def\@makefntext##1{\parindent 1em\noindent
+             \hb@xt@1.8em{%
+                 \hss\@textsuperscript{\normalfont\@thefnmark}}##1}%
+  % \twocolumn[\@maketitle]%
+
+\@maketitle
+   \@thanks
+ \endgroup
+ \setcounter{footnote}{0}%
+ \let\maketitle\relax
+ \let\@maketitle\relax
+ \gdef\@thanks{}\gdef\@author{}\gdef\@title{}\let\thanks\relax}
+
+\def\@maketitle{%
+%\hbox to \titlevboxsize
+% \vbox  to \titlevboxsize
+
+   %Space between header and title
+   %\vskip 2pc % 1 pc = 12 pt
+{ \vspace*{1.5mm} %8.2mm
+    \hsize\textwidth
+    \linewidth\hsize
+%    \vfil
+    \centering
+    { \@title \par}
+    \vskip 24pt%Controls Text Between Title and Authors
+    { \begin{tabular}[t]{@{}c@{}}\@author \\
+\vrule width 3in height 0pt depth0pt\relax\end{tabular}\par %new for WSC-10: space between authors has been reduced to have the text of 6.5 inches
+
+}\vskip 12pt} }
+%\vrule width 3.5in height 0pt depth0pt\relax\end{tabular}\par
+
+% definition of \and
+
+\def\and{\\
+ \vrule width 3in height 0pt depth0pt\relax %new for WSC-10: space between authors has been reduced to have the text of 6.5 inches
+% \vrule width 3.5in height 0pt depth0pt\relax
+\end {tabular}\hfill%
+\begin{tabular}[t]{@{}c@{}}}
+
+% --------------------------------- EASY AUTHOR BIOGRAPHIES ---------------------------------
+
+\def\addBio#1#2{\noindent {\bf \uppercase{#1}} #2\\
+}
+
+% --------------------------------- SETTING UP COPYRIGHT SPACE ---------------------------------
+
+\def\copyrightspace{%
+  \footnotetext[0]{\mbox{}\vrule \@height 97\p@ \@width \z@}}
+
+% Redefine the abstract environment to be a normal section (without number)
+\renewenvironment{abstract}%
+  {\section*{\abstractname}}
+  {\par}
+
+
+% --------------------------------- SETTING UP ITEM ENVIRONMENTS
+
+
+\newdimen\labelwidthi
+\newdimen\labelwidthii
+\settowidth{\labelwidthi}{M}
+\settowidth{\labelwidthii}{(d)}
+%\leftmargini\labelwidthi    \advance\leftmargini\labelsep
+%\leftmarginii\labelwidthii  \advance\leftmarginii\labelsep
+
+%\leftmargin=.63cm
+\leftmargini=1.2cm
+\leftmarginii=4ex
+\leftmarginii=4ex
+
+% level 1
+\def\@listi{\leftmargin\leftmargini
+\rightmargin0pt
+            \parsep 0\p@
+            \topsep 10\p@
+            \itemsep0\p@}
+\let\@listI\@listi
+\@listi
+
+% level 2
+\def\@listii{\leftmargin\leftmarginii
+\rightmargin0pt
+            \labelsep 1ex
+            \parsep 0\p@
+            \topsep 0\p@
+            \itemsep0\p@}
+\let\@listII\@listii
+\@listii
+
+% level 3
+\def\@listiii{\leftmargin\leftmarginiii
+\rightmargin0pt
+            \parsep 0\p@
+            \topsep 0\p@
+            \itemsep0\p@}
+\let\@listIII\@listiii
+\@listiii
+
+\labelsep=.25in
+\setlength  \labelwidth{\leftmargini}
+\addtolength\labelwidth{-\labelsep}
+
+\renewcommand\labelenumi{\rlap{\rm\theenumi.}}
+
+\renewcommand\labelitemi{\rlap{\textbullet}}
+
+
+% SETTING UP SECTIONS
+
+\def\@seccntformat#1{\hbox to .25in{\csname the#1\endcsname\hss}\relax}
+
+\def\@sect#1#2#3#4#5#6[#7]#8{%
+\ifnum #2>\c@secnumdepth
+    \let\@svsec\@empty
+  \else
+    \refstepcounter{#1}%
+    \protected@edef\@svsec{\@seccntformat{#1}\relax}%
+  \fi
+  \@tempskipa #5\relax
+  \ifdim \@tempskipa>\z@
+    \begingroup
+      #6{%
+        \@hangfrom{\hskip #3\relax\@svsec}%
+          \interlinepenalty \@M #8\@@par}%
+    \endgroup
+    \csname #1mark\endcsname{#7}%
+    \addcontentsline{toc}{#1}{%
+      \ifnum #2>\c@secnumdepth \else
+        \protect\numberline{\csname the#1\endcsname}%
+      \fi
+      #7}%
+  \else
+    \def\@svsechd{%
+      #6{\hskip #3\relax
+      \@svsec #8}%
+      \csname #1mark\endcsname{#7}%
+      \addcontentsline{toc}{#1}{%
+        \ifnum #2>\c@secnumdepth \else
+          \protect\numberline{\csname the#1\endcsname}%
+        \fi
+        #7}}%
+  \fi
+  \@xsect{#5}}
+
+% XTABLE
+
+\def\xtable{table}
+\long\def\@makecaption#1#2{%
+\ifx\@captype\xtable \vskip3pt \else
+  \vskip\abovecaptionskip\fi
+  \sbox\@tempboxa{#1: #2}%
+  \ifdim \wd\@tempboxa >\hsize
+    #1: #2\par
+  \else
+    \global \@minipagefalse
+    \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}%
+  \fi
+  \vskip\belowcaptionskip}
+
+% REDEFINITION OF THE SECTION COMMANDS (spacing around them)
+
+% new from WSC'11: 6 pts after Section
+
+\renewcommand\section{\@startsection {section}{1}{\z@}%
+                                  % {-3.5ex \@plus -1ex \@minus -.2ex}%
+ {-12pt}%
+                                   %{2.3ex \@plus.2ex}%
+{6pt}%
+                                   {\hyphenpenalty10000\normalfont\normalsize\bfseries}}
+\renewcommand\subsection{\@startsection{subsection}{2}{\z@}%
+                         %       {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {-12pt}%
+       %                                     {1.5ex \@plus .2ex}%
+{6pt}%
+                                     {\normalfont\normalsize\hyphenpenalty10000\bfseries}}
+\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\z@}%
+{-12pt}
+      %                               {-3.25ex\@plus -1ex \@minus -.2ex}%
+{6pt}
+     %                                {1.5ex \@plus .2ex}%
+                                     {\normalfont\normalsize\hyphenpenalty10000\bfseries}}
+
+\let\savesubsub\subsubsection
+\def\subsubsection#1{\savesubsub{\ \ #1}}
+
+% REDEFINITION OF FURTHER DOCUMENT LAYOUT PARAMETERS
+
+\parskip=0pt plus .01pt
+
+%\baselineskip=0mm
+
+\let\saveparagraph\paragraph
+\def\paragraph#1{\vskip1sp
+{\bf #1}\hskip1em\relax}
+
+
+\raggedbottom
+
+% hangref environment
+\newenvironment{hangref}{\begin{list}{}{\setlength{\itemsep}{0pt}
+\setlength{\parsep}{0pt}\setlength{\rightmargin}{0pt}
+\setlength{\leftmargin}{+\parindent}
+\setlength{\itemindent}{-\parindent}}}{\end{list}}
+
+
+\newif\iftitle
+\def\@oddhead{\iftitle\global\titlefalse
+\vtop to0pt{\hbox to.9\textwidth{\titlepageheadfont
+\currentCaption\hfill}%
+\vskip2pt \hbox to .9\textwidth{\titlepageheadfont
+\currentEditors , eds.\hfill}%
+\vss} \else \hbox
+to\textwidth{\titlepageheadfont\hfill\thetitle\hfill}\fi}
+
+\def\@evenhead{\iftitle\global\titlefalse\fi%
+\hbox to \textwidth{\hss\titlepageheadfont \theauthors\hss}}
+
+\let\@oddfoot\relax
+\let\@evenfoot\@oddfoot
+
+\def\ttitle#1{\gdef\thetitle{#1}}
+
+%\def\normalsize{%
+%\@setfontsize \normalsize \@xpt \@xiipt \abovedisplayskip 12pt
+%\abovedisplayshortskip 8pt \belowdisplayshortskip 8pt
+%\belowdisplayskip=\abovedisplayskip
+%\let \@listi \@listI}
+%\normalsize
+
+\def\sk{\vskip12pt}
+\let\vs\sk
+\def\bd{\vskip2pt\noindent} %belowdisplay
+
+\spaceskip=3.5pt plus 2pt minus2pt
+
+\parindent=.25in
+
+\hfuzz=1pt
+
+\widowpenalty=10000 \clubpenalty=10000
+
+\def\verbatim{\spaceskip=0pt
+\@verbatim \frenchspacing\@vobeyspaces \@xverbatim}
+
+\newcommand\smscriptsize{\@setfontsize\scriptsize\@vipt\@viipt}
+
+\def\nofloatfigure{\def\@captype{figure}}
+\let\endnofloatfigure\relax
+
+\def\nofloattable{\def\@captype{table}}
+\let\endnofloattable\relax
+
+\newcount\itemcount
+
+\def\spenumerate{\bgroup\leftskip=.25in
+\global\itemcount=0
+\def\item{\global\advance\itemcount by 1
+\vskip1sp \noindent\hskip-.25in\hbox to
+.25in{\the\itemcount.\hss}}}
+
+\def\endspenumerate{\vskip12pt\egroup}
+
+\newif\ifnoindent
+\def\@begintheorem#1#2{\vskip-12pt\vskip1sp
+\trivlist
+   \item[\ifnoindent\global\noindentfalse\else
+\hskip.25in\fi\hskip \labelsep{\bfseries #1\ #2}]\itshape}
+
+\def\@opargbegintheorem#1#2#3{\vskip-12pt\vskip1sp
+\trivlist
+      \item[\ifnoindent\global\noindentfalse\else\hskip.25in\fi%
+\hskip \labelsep{\bfseries #1\ #2\ (#3)}]\itshape}
+
+\def\@endtheorem{\vskip1sp}
+
+% (from apalike.sty)
+% Set length of hanging indentation for bibliography entries.
+%
+\newlength{\bibhang}
+\setlength{\bibhang}{2em}
+
+% Indent second and subsequent lines of bibliographic entries. Stolen
+% from openbib.sty: \newblock is set to {}.
+
+\newdimen\bibindent
+\bibindent=.25in
+\@ifundefined{refname}%
+   {\@ifundefined{chapter}%
+     {\newcommand{\refname}{References}}%
+     {\newcommand{\refname}{Bibliography}}%
+   }%
+   {}%
+
+
+\def\thebibliography#1{\section*{\refname\@mkboth
+   {\uppercase{\refname}}{\uppercase{\refname}}}\list
+   {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}
+\rightmargin=0pt \leftmargin=0pt
+   \leftmargin\labelwidth
+   \advance\leftmargin\labelsep
+   \advance\leftmargin\bibindent
+\advance\leftmargin-24pt
+   \itemindent -\bibindent
+   \listparindent \itemindent
+   \parsep \z@
+   \usecounter{enumi}}
+   \def\newblock{}
+   \sloppy
+   \sfcode`\.=1000\relax}
+
+\endinput
+
+\makeatletter
+\def\@lbibitem[#1]#2{\item[]%[\@biblabel {#1}\hfill ]
+\if@filesw {\let\protect\noexpand\immediate\write\@auxout{
+\string\bibcite {#2}{#1}}}\fi\ignorespaces}
+
+\def\@cite#1#2{{#1\if@tempswa , #2\fi}}
+\makeatother
+
+
+
+\def\Box{\vbox to 6pt{\hrule
+\hbox{\vrule height 4.8pt  \hskip 4.8pt \vrule } \hrule}}
+

BIN
wsc19latex/wsc19paper.pdf


File diff suppressed because it is too large
+ 1058 - 0
wsc19latex/wsc19paper.tex


File diff suppressed because it is too large
+ 4227 - 0
wsc19latex/wsc19style.tex


+ 117 - 0
wsc19latex/wscbib.tex

@@ -0,0 +1,117 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                                                            %
+%     THESE COMMANDS ARE REQUIRED TO WORK WITH WSC.BST TO MAKE BIBLIO     %
+%                                                                            %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\makeatletter
+\let\@internalcite\cite
+%
+\def\cite{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
+    \def\citeauthoryear##1##2##3{##1 ##3}\@internalcite}
+\def\citeNP{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
+    \def\citeauthoryear##1##2##3{##1 ##3}\@internalcite}
+\def\citeN{\def\@citeseppen{-1000}%
+%  Pierre L'Ecuyer's fix for multiple cite bug
+%  Added by Paul J Sanchez on 4 October 2001
+%   \def\@cite##1##2{##1\if@tempswa , ##2)\else{)}\fi}%
+%   \def\citeauthoryear##1##2##3{##1 (##3}\@citedata}
+    \def\@cite##1##2{##1\if@tempswa, ##2)\else{}\fi}%
+    \def\citeauthoryear##1##2##3{##1 (##3)}\@citedata}
+\def\citeA{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
+    \def\citeauthoryear##1##2##3{##1}\@internalcite}
+\def\citeANP{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
+    \def\citeauthoryear##1##2##3{##1}\@internalcite}
+%
+\def\shortcite{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
+    \def\citeauthoryear##1##2##3{##2 ##3}\@internalcite}
+\def\shortciteNP{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
+    \def\citeauthoryear##1##2##3{##2 ##3}\@internalcite}
+\def\shortciteN{\def\@citeseppen{-1000}%
+%  Pierre L'Ecuyer's fix for multiple cite bug
+%  Added by Paul J Sanchez on 2 September 2002
+%  should have caught this last year...
+%   \def\@cite##1##2{##1\if@tempswa , ##2)\else{)}\fi}%
+%   \def\citeauthoryear##1##2##3{##2 (##3}\@citedata}
+% Shane G. Henderson fix for extra right bracket at end of optional material June 8, 2005
+%    \def\@cite##1##2{##1\if@tempswa, ##2)\else{}\fi}%
+    \def\@cite##1##2{##1\if@tempswa, ##2\else{}\fi}%
+    \def\citeauthoryear##1##2##3{##2 (##3)}\@citedata}
+\def\shortciteA{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
+    \def\citeauthoryear##1##2##3{##2}\@internalcite}
+\def\shortciteANP{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
+    \def\citeauthoryear##1##2##3{##2}\@internalcite}
+%
+\def\citeyear{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
+    \def\citeauthoryear##1##2##3{##3}\@citedata}
+\def\citeyearNP{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
+    \def\citeauthoryear##1##2##3{##3}\@citedata}
+%
+% \@citedata and \@citedatax:
+%
+% Place commas in-between citations in the same \citeyear, \citeyearNP,
+% \citeN, or \shortciteN command.
+% Use something like \citeN{ref1,ref2,ref3} and \citeN{ref4} for a list.
+%
+\def\@citedata{%
+    \@ifnextchar [{\@tempswatrue\@citedatax}%
+                  {\@tempswafalse\@citedatax[]}%
+}
+
+\def\@citedatax[#1]#2{%
+\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi%
+  \def\@citea{}\@cite{\@for\@citeb:=#2\do%
+    {\@citea\def\@citea{, }\@ifundefined% by Young
+       {b@\@citeb}{{\bf ?}%
+       \@warning{Citation `\@citeb' on page \thepage \space undefined}}%
+{\csname b@\@citeb\endcsname}}}{#1}}%
+
+% don't box citations, separate with ; and a space
+% also, make the penalty between citations negative: a good place to break.
+%
+\def\@citex[#1]#2{%
+\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi%
+  \def\@citea{}\@cite{\@for\@citeb:=#2\do%
+    {\@citea\def\@citea{; }\@ifundefined% by Young
+       {b@\@citeb}{{\bf ?}%
+       \@warning{Citation `\@citeb' on page \thepage \space undefined}}%
+{\csname b@\@citeb\endcsname}}}{#1}}%
+
+% (from apalike.sty)
+% No labels in the bibliography.
+%
+\def\@biblabel#1{}
+\makeatother
+
+%\newlength{\bibhang}
+%\setlength{\bibhang}{2em}
+
+% Indent second and subsequent lines of bibliographic entries. Taken
+% from openbib.sty: \newblock is set to {}.
+% \renewcommand{\refname}{REFERENCES}
+
+\newdimen\bibindent
+\bibindent=0.0em
+% SEC: was \def\thebibliography#1{\section*{\refname\@mkboth
+% SEC: was   {\uppercase{\refname}}{\uppercase{\refname}}}\list
+\def\thebibliography#1{\section*{\refname}\list
+   {}{\settowidth\labelwidth{[#1]}
+   \leftmargin\parindent
+   \itemindent -\parindent
+   \listparindent \itemindent
+   \itemsep 0pt
+   \parsep 0pt}
+   \def\newblock{}
+   \sloppy
+   \sfcode`\.=1000\relax}
+
+

+ 18 - 0
wsc19latex/wscpaperproc.cls

@@ -0,0 +1,18 @@
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%      Class file for WSC proceedings paper
+%
+%  Effective with WSC 09, the two column format was replaced with
+%  a single column format
+%
+% Parameters (like names of editors) have to be setup using the wscsetup.sty style file.
+%
+% All settings valid for papers and poster abstract should be placed into wsc.sty .
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ProvidesClass{wscpaperproc}
+\NeedsTeXFormat{LaTeX2e}
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
+\ProcessOptions
+\LoadClass[11pt, twoside, onecolumn, letterpaper]{article}
+
+% --------------------------------- REQUIRED PACKAGES ---------------------------------
+\RequirePackage{wsc}

+ 18 - 0
wsc19latex/wscposterproc.cls

@@ -0,0 +1,18 @@
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% 					Class file for WSC poster abstracts
+%
+%  Effective with WSC 09, the two column format was replaced with 
+%  a single column format
+%
+% Parameters (like names of editors) have to be setup using the wscsetup.sty style file.
+%
+% All settings valid for papers and poster abstract should be placed into wsc.sty .
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ProvidesClass{wscposterproc}
+\NeedsTeXFormat{LaTeX2e}
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
+\ProcessOptions 
+\LoadClass[11pt, twoside, onecolumn]{article}
+
+% --------------------------------- REQUIRED PACKAGES ---------------------------------
+\RequirePackage{wsc}

+ 58 - 0
wsc19latex/wscsetup.sty

@@ -0,0 +1,58 @@
+%*******************************************************************************
+%*
+%* ***WSC Configuration File - Base for LaTeX Papers for the WinterSim ***
+%*
+%  Note to editors: The setup parameters section has to be changed for each conference!
+%*
+%
+% ---------------------------------------------------------------------------------------------------------------------
+% Setup parameters (new in '11 ) [single location, not in tex file to be edited by authors]
+%
+% How to use:
+% Add a macro per year at the end of the list. The history can be of use to check the editor lists
+% of WSC paper citations.
+% - The macro definition has the form: \def\editorsYYYY{}
+% - The new macro has to be used in the \currentEditors macro which is used by the style: so you
+%   have to replace the \editorsYYYY macro used in there by the new one
+% Update the \currentYear macro to contain the current year
+%
+% You can search for the places the updates have to be applied to by using the search term
+% "EDITOR".
+
+
+
+% -------------- history of editors ------------------
+
+\def\editors2000{J.~A.~Joines, R.~R.~Barton, K.~Kang, and P.~A.~Fishwick}
+\def\editors2001{B.~A.~Peters, J.~S.~Smith, D.~J.~Medeiros, and M.~W.~Rohrer}
+\def\editors2002{E.~Y\"ucesan, C.-H.~Chen, J.~L.~Snowdon, and J.~M.~Charnes}
+\def\editors2003{S.~Chick, P.~J.~S\`anchez, D.~Ferrin, and D.~J.~Morrice}
+\def\editors2004{R.~G.~Ingalls, M.~D.~Rossetti, J.~S.~Smith, and B.~A.~Peters}
+\def\editors2005{M.~E.~Kuhl, N.~M.~Steiger, F.~B.~Armstrong, and J.~A.~Joines}
+\def\editors2006{L.~F.~Perrone, F.~P.~Wieland, J.~Liu, B.~G.~Lawson, D.~M.~Nicol, and R.~M.~Fujimoto}
+\def\editors2007{S.~G.~Henderson, B.~Biller, M.-H.~Hsieh, J.~Shortle, J.~D.~Tew, and R.~R.~Barton}
+\def\editors2008{S.~J.~Mason, R.~R.~Hill, L.~M\"onch, O.~Rose, T.~Jefferson, J.~W.~Fowler}
+\def\editors2009{M.~D.~Rossetti, R.~R.~Hill, B.~Johansson, A.~Dunkin and R.~G.~Ingalls}
+\def\editors2010{B.~Johansson, S.~Jain, J.~Montoya-Torres, J.~Hugan, and E.~Y\"ucesan}
+\def\editors2011{S.~Jain, R.~R. Creasey, J.~Himmelspach, K.~P.~White, and M.~Fu}
+\def\editors2012{C.~Laroque, J.~Himmelspach, R.~Pasupathy, O.~Rose, and A.~M.~Uhrmacher}
+\def\editors2013{R.~Pasupathy, S.-H.~Kim, A.~Tolk, R.~Hill, and M.~E.~Kuhl}
+\def\editors2014{A.~Tolk, S.~Y. Diallo, I.~O. Ryzhov, L.~Yilmaz, S.~Buckley, and J.~A. Miller}
+\def\editors2015{L.~Yilmaz, W.~K~V.~Chan, I.~Moon, T.~M.~K.~Roeder, C.~Macal, and M.~D.~Rossetti}
+\def\editors2016{T.~M.~K.~Roeder, P.~I.~Frazier, R.~Szechtman, E.~Zhou, T.~Huschka, and S.~E.~Chick}
+\def\editors2017{W.~K.~V.~Chan, A.~D'Ambrogio, G.~Zacharewicz, N.~Mustafee, G.~Wainer, and E.~Page}
+\def\editors2018{M.~Rabe, A.~A.~Juan, N.~Mustafee, A.~Skoogh, S.~Jain, and B.~Johansson}
+\def\editors2019{N.~Mustafee, K.-H.G.~Bae, S.~Lazarova-Molnar, M.~Rabe, C.~Szabo, P.~Haas, and Y.-J.~Son}
+% EDITOR: add new definition above this line
+
+
+
+% -------------- settings for the current year ------------------
+\def\currentYear {2019}               % EDITOR: update with current year
+\def\currentEditors {\editors2019} % EDITOR: update by current editor definition macro
+\def\currentCaption {Proceedings of the \currentYear{} Winter Simulation Conference}
+
+%
+% End of setup parameters
+% % ---------------------------------------------------------------------------------------------------------------------
+%

+ 117 - 0
wscbib.tex

@@ -0,0 +1,117 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                                                            %
+%     THESE COMMANDS ARE REQUIRED TO WORK WITH WSC.BST TO MAKE BIBLIO     %
+%                                                                            %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\makeatletter
+\let\@internalcite\cite
+%
+\def\cite{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
+    \def\citeauthoryear##1##2##3{##1 ##3}\@internalcite}
+\def\citeNP{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
+    \def\citeauthoryear##1##2##3{##1 ##3}\@internalcite}
+\def\citeN{\def\@citeseppen{-1000}%
+%  Pierre L'Ecuyer's fix for multiple cite bug
+%  Added by Paul J Sanchez on 4 October 2001
+%   \def\@cite##1##2{##1\if@tempswa , ##2)\else{)}\fi}%
+%   \def\citeauthoryear##1##2##3{##1 (##3}\@citedata}
+    \def\@cite##1##2{##1\if@tempswa, ##2)\else{}\fi}%
+    \def\citeauthoryear##1##2##3{##1 (##3)}\@citedata}
+\def\citeA{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
+    \def\citeauthoryear##1##2##3{##1}\@internalcite}
+\def\citeANP{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
+    \def\citeauthoryear##1##2##3{##1}\@internalcite}
+%
+\def\shortcite{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
+    \def\citeauthoryear##1##2##3{##2 ##3}\@internalcite}
+\def\shortciteNP{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
+    \def\citeauthoryear##1##2##3{##2 ##3}\@internalcite}
+\def\shortciteN{\def\@citeseppen{-1000}%
+%  Pierre L'Ecuyer's fix for multiple cite bug
+%  Added by Paul J Sanchez on 2 September 2002
+%  should have caught this last year...
+%   \def\@cite##1##2{##1\if@tempswa , ##2)\else{)}\fi}%
+%   \def\citeauthoryear##1##2##3{##2 (##3}\@citedata}
+% Shane G. Henderson fix for extra right bracket at end of optional material June 8, 2005
+%    \def\@cite##1##2{##1\if@tempswa, ##2)\else{}\fi}%
+    \def\@cite##1##2{##1\if@tempswa, ##2\else{}\fi}%
+    \def\citeauthoryear##1##2##3{##2 (##3)}\@citedata}
+\def\shortciteA{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
+    \def\citeauthoryear##1##2##3{##2}\@internalcite}
+\def\shortciteANP{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
+    \def\citeauthoryear##1##2##3{##2}\@internalcite}
+%
+\def\citeyear{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{(##1\if@tempswa , ##2\fi)}%
+    \def\citeauthoryear##1##2##3{##3}\@citedata}
+\def\citeyearNP{\def\@citeseppen{-1000}%
+    \def\@cite##1##2{##1\if@tempswa , ##2\fi}%
+    \def\citeauthoryear##1##2##3{##3}\@citedata}
+%
+% \@citedata and \@citedatax:
+%
+% Place commas in-between citations in the same \citeyear, \citeyearNP,
+% \citeN, or \shortciteN command.
+% Use something like \citeN{ref1,ref2,ref3} and \citeN{ref4} for a list.
+%
+\def\@citedata{%
+    \@ifnextchar [{\@tempswatrue\@citedatax}%
+                  {\@tempswafalse\@citedatax[]}%
+}
+
+\def\@citedatax[#1]#2{%
+\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi%
+  \def\@citea{}\@cite{\@for\@citeb:=#2\do%
+    {\@citea\def\@citea{, }\@ifundefined% by Young
+       {b@\@citeb}{{\bf ?}%
+       \@warning{Citation `\@citeb' on page \thepage \space undefined}}%
+{\csname b@\@citeb\endcsname}}}{#1}}%
+
+% don't box citations, separate with ; and a space
+% also, make the penalty between citations negative: a good place to break.
+%
+\def\@citex[#1]#2{%
+\if@filesw\immediate\write\@auxout{\string\citation{#2}}\fi%
+  \def\@citea{}\@cite{\@for\@citeb:=#2\do%
+    {\@citea\def\@citea{; }\@ifundefined% by Young
+       {b@\@citeb}{{\bf ?}%
+       \@warning{Citation `\@citeb' on page \thepage \space undefined}}%
+{\csname b@\@citeb\endcsname}}}{#1}}%
+
+% (from apalike.sty)
+% No labels in the bibliography.
+%
+\def\@biblabel#1{}
+\makeatother
+
+%\newlength{\bibhang}
+%\setlength{\bibhang}{2em}
+
+% Indent second and subsequent lines of bibliographic entries. Taken
+% from openbib.sty: \newblock is set to {}.
+% \renewcommand{\refname}{REFERENCES}
+
+\newdimen\bibindent
+\bibindent=0.0em
+% SEC: was \def\thebibliography#1{\section*{\refname\@mkboth
+% SEC: was   {\uppercase{\refname}}{\uppercase{\refname}}}\list
+\def\thebibliography#1{\section*{\refname}\list
+   {}{\settowidth\labelwidth{[#1]}
+   \leftmargin\parindent
+   \itemindent -\parindent
+   \listparindent \itemindent
+   \itemsep 0pt
+   \parsep 0pt}
+   \def\newblock{}
+   \sloppy
+   \sfcode`\.=1000\relax}
+
+

+ 18 - 0
wscpaperproc.cls

@@ -0,0 +1,18 @@
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%      Class file for WSC proceedings paper
+%
+%  Effective with WSC 09, the two column format was replaced with
+%  a single column format
+%
+% Parameters (like names of editors) have to be setup using the wscsetup.sty style file.
+%
+% All settings valid for papers and poster abstract should be placed into wsc.sty .
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ProvidesClass{wscpaperproc}
+\NeedsTeXFormat{LaTeX2e}
+\DeclareOption*{\PassOptionsToClass{\CurrentOption}{article}}
+\ProcessOptions
+\LoadClass[11pt, twoside, onecolumn, letterpaper]{article}
+
+% --------------------------------- REQUIRED PACKAGES ---------------------------------
+\RequirePackage{wsc}

+ 58 - 0
wscsetup.sty

@@ -0,0 +1,58 @@
+%*******************************************************************************
+%*
+%* ***WSC Configuration File - Base for LaTeX Papers for the WinterSim ***
+%*
+%  Note to editors: The setup parameters section has to be changed for each conference!
+%*
+%
+% ---------------------------------------------------------------------------------------------------------------------
+% Setup parameters (new in '11 ) [single location, not in tex file to be edited by authors]
+%
+% How to use:
+% Add a macro per year at the end of the list. The history can be of use to check the editor lists
+% of WSC paper citations.
+% - The macro definition has the form: \def\editorsYYYY{}
+% - The new macro has to be used in the \currentEditors macro which is used by the style: so you
+%   have to replace the \editorsYYYY macro used in there by the new one
+% Update the \currentYear macro to contain the current year
+%
+% You can search for the places the updates have to be applied to by using the search term
+% "EDITOR".
+
+
+
+% -------------- history of editors ------------------
+
+\def\editors2000{J.~A.~Joines, R.~R.~Barton, K.~Kang, and P.~A.~Fishwick}
+\def\editors2001{B.~A.~Peters, J.~S.~Smith, D.~J.~Medeiros, and M.~W.~Rohrer}
+\def\editors2002{E.~Y\"ucesan, C.-H.~Chen, J.~L.~Snowdon, and J.~M.~Charnes}
+\def\editors2003{S.~Chick, P.~J.~S\`anchez, D.~Ferrin, and D.~J.~Morrice}
+\def\editors2004{R.~G.~Ingalls, M.~D.~Rossetti, J.~S.~Smith, and B.~A.~Peters}
+\def\editors2005{M.~E.~Kuhl, N.~M.~Steiger, F.~B.~Armstrong, and J.~A.~Joines}
+\def\editors2006{L.~F.~Perrone, F.~P.~Wieland, J.~Liu, B.~G.~Lawson, D.~M.~Nicol, and R.~M.~Fujimoto}
+\def\editors2007{S.~G.~Henderson, B.~Biller, M.-H.~Hsieh, J.~Shortle, J.~D.~Tew, and R.~R.~Barton}
+\def\editors2008{S.~J.~Mason, R.~R.~Hill, L.~M\"onch, O.~Rose, T.~Jefferson, J.~W.~Fowler}
+\def\editors2009{M.~D.~Rossetti, R.~R.~Hill, B.~Johansson, A.~Dunkin and R.~G.~Ingalls}
+\def\editors2010{B.~Johansson, S.~Jain, J.~Montoya-Torres, J.~Hugan, and E.~Y\"ucesan}
+\def\editors2011{S.~Jain, R.~R. Creasey, J.~Himmelspach, K.~P.~White, and M.~Fu}
+\def\editors2012{C.~Laroque, J.~Himmelspach, R.~Pasupathy, O.~Rose, and A.~M.~Uhrmacher}
+\def\editors2013{R.~Pasupathy, S.-H.~Kim, A.~Tolk, R.~Hill, and M.~E.~Kuhl}
+\def\editors2014{A.~Tolk, S.~Y. Diallo, I.~O. Ryzhov, L.~Yilmaz, S.~Buckley, and J.~A. Miller}
+\def\editors2015{L.~Yilmaz, W.~K~V.~Chan, I.~Moon, T.~M.~K.~Roeder, C.~Macal, and M.~D.~Rossetti}
+\def\editors2016{T.~M.~K.~Roeder, P.~I.~Frazier, R.~Szechtman, E.~Zhou, T.~Huschka, and S.~E.~Chick}
+\def\editors2017{W.~K.~V.~Chan, A.~D'Ambrogio, G.~Zacharewicz, N.~Mustafee, G.~Wainer, and E.~Page}
+\def\editors2018{M.~Rabe, A.~A.~Juan, N.~Mustafee, A.~Skoogh, S.~Jain, and B.~Johansson}
+\def\editors2019{N.~Mustafee, K.-H.G.~Bae, S.~Lazarova-Molnar, M.~Rabe, C.~Szabo, P.~Haas, and Y.-J.~Son}
+% EDITOR: add new definition above this line
+
+
+
+% -------------- settings for the current year ------------------
+\def\currentYear {2019}               % EDITOR: update with current year
+\def\currentEditors {\editors2019} % EDITOR: update by current editor definition macro
+\def\currentCaption {Proceedings of the \currentYear{} Winter Simulation Conference}
+
+%
+% End of setup parameters
+% % ---------------------------------------------------------------------------------------------------------------------
+%