$
$@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
$@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
$@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
$
$
$    ----------   Sample of "Complying" with RP2SK    ------------
$
$  In the frequency domain:
$
$  Use the CULL command to split the results into low and high
$  frequency parts and then use STATISTICS to compute the statistics
$  of each part and combine according to RP2SK; i.e.
$
$      Ur = Max + Sig
$
$  Where Max is the maximum response of the larger of the two
$  and Sig is the significant response of the smaller. An example
$  of this is given below.
$
$  Notice that we can write this as:
$
$      Ur = 3.72 Rl [ 1 + 2/3.27  Rs/Rl ]
$
$  where Rl is the RMS of the larger and Rs is the RMS of the
$  smaller. Alternatively, the maximum of the whole response is
$
$      Ut = 3.72 sqrt[ Ml + Ms]
$  or
$      Ut = 3.72 Rl sqrt[ 1  + Ms/Ml ]
$
$  and Ml and Ms are the squares of Rl and Rs respectively. The
$  ratio
$
$      Ur/Ut = [1 + .5376 sqrt(Ms/Ml)] / sqrt[ 1 + Ms/Ml]
$
$  If you find the maximum of this ratio, you will find that
$  it it around 1.13; i.e. the maximum error you will get by
$  using the MOSES computed maximum in lieu of the RP2SK method
$  is 1.13. Thus if you set the multiplier for the "maximum" to
$  3.72 * 1.13 = 4.2 you can use the maximum computed by MOSES
$  instead of what is done below.
$
$  In the time domain:
$
$  You use
$
$     add_col s_high  -filter period 1 5 30 1e5
$     add_col s_low   -combine 5 1 23 -1
$
$  to split a signal into high and low frequency values and
$  then compute the statistics for each part and combine.
$  Again an example of this is given below.
$
$@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
$@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
$@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
$
$
$*********************************************      set basics
$
&TITLE Tanker Motions on Single Point Mooring
&SUBTITLE Sample of "Complying" with RP2SK
&device  -OECHO n -mecho n  -g_default device   \
         -auxin ../verify/fishtail.dat
&dimen -dimen meters m-tons
&default -depth 82.5
&pb_parm -flat_tol 1e-4
$
$*********************************************      set variables
$
&SET hgen  = .false.
&SET tstep = .50
$
$*********************************************      difference plot
$
&macro rp2sk
   &buildg -s
   ar u n d
   &loop k 1 101
      &set ar = &number(real (%k-1)/100.)
      &set n  = &number(sqrt %ar)
      &set n  = &number(real 1+.5376*%n)
      &set d  = &number(sqrt 1+%ar)
      &set u  = &number(real %n/%d)
      %ar %u %n %d
   &endloop
 
   plot 1 2 -t_lef 'RP2SK Max/MOSES Max' \
            -t_x   'Zeroth Moment Min/Zeroth Moment Max'
   end
&endmacro
rp2sk
$
$*********************************************      read model
$
inmodel
$
$*********************************************      initial state
$
&INSTATE -LOC shutank 0 0 -7.56 0 0 0
$
$*********************************************      gen hydrodynamics?
$
&if %hgen &then
   hydrodynamics
      g_pressure shutank shutank
      e_total shutank
   end
&endif
$
$*********************************************      connections
$
MEDIT
   *bow 0 0 29.7
   ~ROPE1 h_cat 8000 -b_tension  570  -LEN 200.0   -depanc -22.14 \
           -CONEPY    .00     .00  \
                     50.0     1.
   CONNECTOR   HAWSER  ~ROPE1 *bow -anchor  180 200
   END
$
$*********************************************      environment
$
&env s1 -wind 00 180 -cur .50 180 -sea issc 180 10 10 \
        -TIME 1582 %tstep
&instate -loc shutank 0 0 -7.56 0 0 0 -lines @
$
$*********************************************      spectral response
$
freq_response
   sresponse s1 -period  500 450 400 350 300 250 200 180 160 150 140 \
                         130 120 110 100 90    \
                         80   70  60  50 40 30 \
                         25.  20.  19.  18.  17. 16.  15.  14.5    \
                         14. 13.5  13.  12.5 12. 11.5 11.  10.5    \
                         10.  9.5   9.   8.5  8.  7.5  7.   6.5    \
                         6.  5.5   5.   4.5  4.  3. -head 180
   fr_point
     REPORT
     statistics    1 3  -type freq   $ both low and high frequencies
     cull 2 0 30   $ only low  frequencies
        statistics 1 3  -type freq
        end
     cull 2 30 1e5 $ only high frequencies
        statistics 1 3  -type freq
        end
   END
   st_point
      REPORT
   END
end
$
$*********************************************      time domain
$
tdom -newmark .33 .65
$
$*********************************************      post-processing
$
prcpost
    trajectory  -event 0 9000 &number(max %tstep%  5)
          set_var num -num_rows
          add_column s_high  -filter period 1 5 30 1e5
          add_column s_low   -combine 5 1 23 -1
          plot 1  5 -t_left 'Total Surge          '  -t_x 'Time, Sec' -no
          plot 1 23 -t_left 'High Frequency Surge '  -t_x 'Time, Sec' -no
          plot 1 24 -t_left 'Low Frequency Surge  '  -t_x 'Time, Sec' -no
          view       1 5 23 24 -hard -record 4 %num-4
          statistics 1 5 23 24       -record 4 %num-4
          end
end
$
$*********************************************      all done
$
&fini
