├── SHAKE91 User Manual.pdf ├── SHAKE16.xcodeproj ├── project.xcworkspace │ └── contents.xcworkspacedata └── project.pbxproj ├── .gitignore ├── makefile ├── test.sh ├── LICENSE.md ├── test-data ├── INP.DAT ├── DIAM.ACC └── output1.txt ├── README.md ├── Main.f ├── B1.f ├── C1.f └── A1.f /SHAKE91 User Manual.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ocrickard/SHAKE16/HEAD/SHAKE91 User Manual.pdf -------------------------------------------------------------------------------- /SHAKE16.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Compiled Object files 2 | *.slo 3 | *.lo 4 | *.o 5 | *.obj 6 | 7 | # Precompiled Headers 8 | *.gch 9 | *.pch 10 | 11 | # Compiled Dynamic libraries 12 | *.so 13 | *.dylib 14 | *.dll 15 | 16 | # Fortran module files 17 | *.mod 18 | *.smod 19 | 20 | # Compiled Static libraries 21 | *.lai 22 | *.la 23 | *.a 24 | *.lib 25 | 26 | # Executables 27 | *.exe 28 | *.out 29 | *.app 30 | 31 | *.xcscheme 32 | 33 | xcuserdata/ 34 | 35 | SHAKE91 36 | 37 | SHAKE16 38 | 39 | output/ 40 | -------------------------------------------------------------------------------- /makefile: -------------------------------------------------------------------------------- 1 | 2 | build: output/build/A1.o output/build/B1.o output/build/C1.o output/build/Main.o 3 | gfortran output/build/A1.o output/build/B1.o output/build/C1.o output/build/Main.o -o SHAKE16 4 | 5 | output/build/: 6 | mkdir -p output/build 7 | 8 | output/build/A1.o: A1.f output/build/ 9 | gfortran -c A1.f -o output/build/A1.o 10 | 11 | output/build/B1.o: B1.f output/build/ 12 | gfortran -c B1.f -o output/build/B1.o 13 | 14 | output/build/C1.o: C1.f output/build/ 15 | gfortran -c C1.f -o output/build/C1.o 16 | 17 | output/build/Main.o: Main.f output/build/ 18 | gfortran -c Main.f -o output/build/Main.o 19 | 20 | install: build 21 | cp SHAKE16 /usr/local/bin/SHAKE16 22 | 23 | test: install 24 | sh test.sh 25 | 26 | clean: 27 | rm -rf output/ 28 | rm -f SHAKE16 29 | 30 | uninstall: clean 31 | rm -f /usr/local/bin/SHAKE16 32 | -------------------------------------------------------------------------------- /test.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | # test.sh 4 | # SHAKE16 5 | # 6 | # Created by Oliver Rickard on 7/9/16. 7 | # Copyright © 2016 Oliver Rickard. All rights reserved. 8 | 9 | rm -rf output/test 10 | mkdir -p output/test 11 | 12 | cd test-data 13 | 14 | SHAKE16 INP.DAT ../output/test/output1.txt ../output/test/output2.txt 15 | 16 | cd .. 17 | 18 | file1diff=$(diff -u test-data/output1.txt output/test/output1.txt) 19 | file2diff=$(diff -u test-data/output2.txt output/test/output2.txt) 20 | 21 | if [ "$file1diff" == "" ] 22 | then 23 | echo "output file 1 identical, test passed" 24 | else 25 | echo "output file 1 did not match, test failed. diff:" 26 | echo $file1diff 27 | fi 28 | 29 | if [ "$file2diff" == "" ] 30 | then 31 | echo "output file 2 identical, test passed" 32 | else 33 | echo "output file 2 did not match, test failed. diff:" 34 | echo $file1diff 35 | fi 36 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | # Public Domain License 2 | 3 | This is free and unencumbered software released into the public domain. 4 | 5 | Anyone is free to copy, modify, publish, use, compile, sell, or 6 | distribute this software, either in source code form or as a compiled 7 | binary, for any purpose, commercial or non-commercial, and by any 8 | means. 9 | 10 | In jurisdictions that recognize copyright laws, the author or authors 11 | of this software dedicate any and all copyright interest in the 12 | software to the public domain. We make this dedication for the benefit 13 | of the public at large and to the detriment of our heirs and 14 | successors. We intend this dedication to be an overt act of 15 | relinquishment in perpetuity of all present and future rights to this 16 | software under copyright law. 17 | 18 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 19 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 20 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 21 | IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR 22 | OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 23 | ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 24 | OTHER DEALINGS IN THE SOFTWARE. 25 | 26 | For more information, please refer to 27 | -------------------------------------------------------------------------------- /test-data/INP.DAT: -------------------------------------------------------------------------------- 1 | option 1 - dynamic soil properties - (max is thirteen): 2 | 1 3 | 3 4 | 11 #1 modulus for clay (seed & sun 1989) upper range 5 | 0.0001 0.0003 0.001 0.003 0.01 0.03 0.1 0.3 6 | 1. 3. 10. 7 | 1.000 1.000 1.000 0.981 0.941 0.847 0.656 0.438 8 | 0.238 0.144 0.110 9 | 11 damping for clay (Idriss 1990) - 10 | 0.0001 0.0003 0.001 0.003 0.01 0.03 0.1 0.3 11 | 1. 3.16 10. 12 | 0.24 0.42 0.8 1.4 2.8 5.1 9.8 15.5 13 | 21. 25. 28. 14 | 11 #2 modulus for sand (seed & idriss 1970) - upper Range 15 | 0.0001 0.0003 0.001 0.003 0.01 0.03 0.1 0.3 16 | 1. 3. 10. 17 | 1.000 1.000 0.990 0.960 0.850 0.640 0.370 0.180 18 | 0.080 0.050 0.035 19 | 11 damping for sand (Idriss 1990) - (about LRng from SI 1970) 20 | 0.0001 0.0003 0.001 0.003 0.01 0.03 0.1 0.3 21 | 1. 3. 10. 22 | 0.24 0.42 0.8 1.4 2.8 5.1 9.8 15.5 23 | 21. 25. 28. 24 | 8 #3 ATTENUATION OF ROCK AVERAGE 25 | .0001 0.0003 0.001 0.003 0.01 0.03 0.1 1.0 26 | 1.000 1.000 0.9875 0.9525 0.900 0.810 0.725 0.550 27 | 5 DAMPING IN ROCK 28 | .0001 0.001 0.01 0.1 1. 29 | 0.4 0.8 1.5 3.0 4.6 30 | 3 1 2 3 31 | Option 2 -- Soil Profile 32 | 2 33 | 1 17 Example -- 150-ft layer; input:Diam @ .1g 34 | 1 2 5.00 .050 .125 1000. 35 | 2 2 5.00 .050 .125 900. 36 | 3 2 10.00 .050 .125 900. 37 | 4 2 10.00 .050 .125 950. 38 | 5 1 10.00 .050 .125 1000. 39 | 6 1 10.00 .050 .125 1000. 40 | 7 1 10.00 .050 .125 1100. 41 | 8 1 10.00 .050 .125 1100. 42 | 9 2 10.00 .050 .130 1300. 43 | 10 2 10.00 .050 .130 1300. 44 | 11 2 10.00 .050 .130 1400. 45 | 12 2 10.00 .050 .130 1400. 46 | 13 2 10.00 .050 .130 1500. 47 | 14 2 10.00 .050 .130 1500. 48 | 15 2 10.00 .050 .130 1600. 49 | 16 2 10.00 .050 .130 1800. 50 | 17 3 .010 .140 4000. 51 | Option 3 -- input motion: 52 | 3 53 | 1900 4096 .02 DIAM.ACC (8f10.6) 54 | .10 25. 3 8 55 | Option 4 -- sublayer for input motion {within (1) or outcropping (0): 56 | 4 57 | 17 0 58 | Option 5 -- number of iterations & ratio of avg strain to max strain 59 | 5 60 | 0 8 0.50 61 | Option 6 -- sublayers for which accn time histories are computed & saved: 62 | 6 63 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 64 | 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 65 | 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 66 | Option 6 -- sublayers for which accn time histories are computed & saved: 67 | 6 68 | 16 17 17 69 | 1 1 0 70 | 0 1 0 71 | option 7 -- sublayer for which shear stress or strain are computed & saved: 72 | 7 73 | 4 1 1 0 1800 -- stress in level 4 74 | 4 0 1 0 1800 -- strain in level 4 75 | option 7 -- sublayer for which shear stress or strain are computed & saved: 76 | 7 77 | 8 1 1 0 1800 -- stress in level 8 78 | 8 0 1 0 1800 -- strain in level 8 79 | option 9 -- compute & save response spectrum: 80 | 9 81 | 1 0 82 | 1 0 981.0 83 | 0.05 84 | option 10 -- compute & save amplification spectrum: 85 | 10 86 | 17 0 1 0 0.125 - surface/rock outcrop 87 | execution will stop when program encounters 0 88 | 0 89 |  -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # SHAKE16 2 | 3 | This is a modernized version of SHAKE91 to run with modern fortran compilers. Here's what we changed: 4 | 5 | 1. Removed the archaic FORTRAN capitalization in most of the files. 6 | 2. Converted to modernized `do` loop syntax for core subroutines and improved indentation. 7 | 3. Fixed several issues that prevented compilation with modern gfortran. 8 | 4. Added a makefile. 9 | 5. Allowed file input from command-line arguments instead of interactive program. 10 | 11 | ## Building 12 | 13 | To build SHAKE on a Unix-based system, first install gfortran. If you are on a mac, you can use homebrew: 14 | 15 | ``` 16 | brew install gfortran 17 | ``` 18 | 19 | Then clone this repo to your machine, and run: 20 | 21 | ``` 22 | make install 23 | ``` 24 | 25 | This will compile the source files using gfortran, and copy linked binary to `/usr/local/bin/SHAKE16`. 26 | 27 | ## Usage 28 | 29 | To invoke SHAKE16, ensure that the binary is in your PATH, then simply invoke `SHAKE16` from the command line. 30 | 31 | ``` 32 | $ SHAKE16 33 | ``` 34 | 35 | You will then be asked for the name of the input file. You may provide the relative path to the CWD to the input file. 36 | 37 | ``` 38 | Name of Input File = 39 | INP.DAT 40 | ``` 41 | 42 | Next, the program will ask for the output file names. 43 | ``` 44 | Name of Output File #1 (input, peak values .. etc) = 45 | > output1.txt 46 | Name of Output File #2 (time histories .. etc) = 47 | > output2.txt 48 | ``` 49 | 50 | Hit enter after finishing inputting each file name. If all is successful the program will perform the computations, and write the output data to the files you specified. 51 | 52 | ### Command-line interface 53 | 54 | In order to make the program easier to script and execute from other programs, I have added the ability to specify the input/output files directly from the command-line. If no arguments are provided, the traditional behavior above is used. 55 | 56 | ``` 57 | SHAKE16 INP.DAT output1.txt output2.txt 58 | ``` 59 | 60 | ### Input files 61 | 62 | Please refer to the [SHAKE91 Manual](https://github.com/ocrickard/SHAKE16/raw/master/SHAKE91%20User%20Manual.pdf) for more information on the input file parameters and output format. 63 | 64 | [Example of input file](https://github.com/ocrickard/SHAKE16/blob/master/Input/INP.DAT) 65 | 66 | [Example of output file 1](https://github.com/ocrickard/SHAKE16/blob/master/Input/output1.txt) 67 | 68 | [Example of output file 2](https://github.com/ocrickard/SHAKE16/blob/master/Input/output2.txt) 69 | 70 | ### Testing 71 | 72 | After compiling the source it's recommended that you run the test suite. The tests run some verified inputs and compare with outputs generated by the original program. 73 | 74 | ``` 75 | make test 76 | ``` 77 | 78 | If successful, you should see output like: 79 | 80 | ``` 81 | Note: The following floating-point exceptions are signalling: IEEE_DENORMAL 82 | output file 1 identical, test passed 83 | output file 2 identical, test passed 84 | ``` 85 | 86 | If you see test failures, you should file an issue with information about your platform. 87 | 88 | ## License 89 | 90 | The original source was published into the public domain. In keeping with that practice, we have kept an open source public domain license. You are free to use, modify, copy, distribute this source or any resulting programs in any way you wish with no restrictions. 91 | 92 | https://github.com/ocrickard/SHAKE16/blob/master/LICENSE.md 93 | 94 | ## AS-IS Software 95 | 96 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 97 | 98 | ## Original Readme 99 | 100 | Program: SHAKE-91 101 | 102 | Title: Equivalent Linear Seismic Response Analysis of Horizontally 103 | Layered Soil Deposits 104 | 105 | Developer: P. B. Schnabel, J. Lysmer, and H. B. Seed, Department of Civil 106 | Engineering, University of California, Berkeley 1972. 107 | 108 | Modified: I. M. Idriss and J. I. Sun, Department of Civil & Environmental 109 | Engineering, University of California, Davis 1992. 110 | 111 | Category: Geotechnical 112 | 113 | Platform: PC DOS 6, MS PowerStation Fortran, v. 1.0 114 | 115 | Reference: Idriss, I.M., and J.I. Sun, "User's Manual for SHAKE91," 116 | Department of Civil & Environmental Engineering, University of California, 117 | Davis, California, November 1992. 118 | 119 | Schnabel, P.B., J. Lysmer, and H.B. Seed, "SHAKE - A Computer Program for 120 | Earthquake Response Analysis of Horizontally Layered Sites," Earthquake 121 | Engineering Research Center, Report No. UCB/EERC-72/12. University of 122 | California, Berkeley, December 1972. 123 | 124 | Summary: The SHAKE program has been by far the most widely used program 125 | for computing the seismic response of horizontally layered soil deposits. 126 | The program computes the response of a semi-infinite horizontally layered 127 | soil deposit overlying a uniform half-space subjected to vertically 128 | propagating shear waves. The analysis is done in the frequency domain, 129 | and, therefore, for any set of properties, it is a linear analysis. An 130 | iterative procedure is used to account for the nonlinear behavior of the 131 | soils. The object motion (i.e., the motion that is considered to be known) 132 | can be specified at the top of any sublayer within the soil profile or at 133 | the corresponding outcrop. 134 | 135 | The main modifications incorporated in SHAKE91 include the following: 136 | The number of sublayers was increased from 20 to 50; this should permit a 137 | more accurate representation of deeper and/or softer soil deposits. All 138 | built-in modulus reduction and damping relationships were removed. These 139 | relationships are now specified by the user. The maximum shear velocity 140 | or the maximum modulus are now specified for each sublayer; again these 141 | are part of the input and therefore the program no longer calculates 142 | modulus values as a function of either confining pressure or shear 143 | strength. Object motion is now read from a separate file. Other clean-up 144 | includes: renumbering of options, elimination of infrequently used options, 145 | user specified periods for calculating spectral ordinates. 146 | 147 | [SHAKE91 Manual](https://github.com/ocrickard/SHAKE16/raw/master/SHAKE91%20User%20Manual.pdf) 148 | -------------------------------------------------------------------------------- /SHAKE16.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXFileReference section */ 10 | B1E657991D31F33200B4E9E2 /* test.sh */ = {isa = PBXFileReference; lastKnownFileType = text.script.sh; path = test.sh; sourceTree = ""; }; 11 | B1F11EC91D31419000180392 /* A1.f */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.fortran; path = A1.f; sourceTree = ""; }; 12 | B1F11ECA1D31419000180392 /* B1.f */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.fortran; path = B1.f; sourceTree = ""; }; 13 | B1F11ECB1D31419000180392 /* C1.f */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.fortran; path = C1.f; sourceTree = ""; }; 14 | B1F11ECC1D31419000180392 /* Main.f */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.fortran; path = Main.f; sourceTree = ""; }; 15 | B1F11ECD1D31419000180392 /* makefile */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.make; path = makefile; sourceTree = ""; }; 16 | /* End PBXFileReference section */ 17 | 18 | /* Begin PBXGroup section */ 19 | B1F11EBE1D31410E00180392 = { 20 | isa = PBXGroup; 21 | children = ( 22 | B1F11EC91D31419000180392 /* A1.f */, 23 | B1F11ECA1D31419000180392 /* B1.f */, 24 | B1F11ECB1D31419000180392 /* C1.f */, 25 | B1F11ECC1D31419000180392 /* Main.f */, 26 | B1E657991D31F33200B4E9E2 /* test.sh */, 27 | B1F11ECD1D31419000180392 /* makefile */, 28 | ); 29 | sourceTree = ""; 30 | }; 31 | /* End PBXGroup section */ 32 | 33 | /* Begin PBXLegacyTarget section */ 34 | B1F11EC31D31410E00180392 /* SHAKE16 */ = { 35 | isa = PBXLegacyTarget; 36 | buildArgumentsString = "$(ACTION)"; 37 | buildConfigurationList = B1F11EC61D31410E00180392 /* Build configuration list for PBXLegacyTarget "SHAKE16" */; 38 | buildPhases = ( 39 | ); 40 | buildToolPath = /usr/bin/make; 41 | buildWorkingDirectory = /Users/ocrickard/src/SHAKE16; 42 | dependencies = ( 43 | ); 44 | name = SHAKE16; 45 | passBuildSettingsInEnvironment = 1; 46 | productName = SHAKE16; 47 | }; 48 | /* End PBXLegacyTarget section */ 49 | 50 | /* Begin PBXProject section */ 51 | B1F11EBF1D31410E00180392 /* Project object */ = { 52 | isa = PBXProject; 53 | attributes = { 54 | LastUpgradeCheck = 0710; 55 | ORGANIZATIONNAME = "Oliver Rickard"; 56 | TargetAttributes = { 57 | B1F11EC31D31410E00180392 = { 58 | CreatedOnToolsVersion = 7.1.1; 59 | }; 60 | }; 61 | }; 62 | buildConfigurationList = B1F11EC21D31410E00180392 /* Build configuration list for PBXProject "SHAKE16" */; 63 | compatibilityVersion = "Xcode 3.2"; 64 | developmentRegion = English; 65 | hasScannedForEncodings = 0; 66 | knownRegions = ( 67 | en, 68 | ); 69 | mainGroup = B1F11EBE1D31410E00180392; 70 | projectDirPath = ""; 71 | projectRoot = ""; 72 | targets = ( 73 | B1F11EC31D31410E00180392 /* SHAKE16 */, 74 | ); 75 | }; 76 | /* End PBXProject section */ 77 | 78 | /* Begin XCBuildConfiguration section */ 79 | B1F11EC41D31410E00180392 /* Debug */ = { 80 | isa = XCBuildConfiguration; 81 | buildSettings = { 82 | ALWAYS_SEARCH_USER_PATHS = NO; 83 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 84 | CLANG_CXX_LIBRARY = "libc++"; 85 | CLANG_ENABLE_MODULES = YES; 86 | CLANG_ENABLE_OBJC_ARC = YES; 87 | CLANG_WARN_BOOL_CONVERSION = YES; 88 | CLANG_WARN_CONSTANT_CONVERSION = YES; 89 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 90 | CLANG_WARN_EMPTY_BODY = YES; 91 | CLANG_WARN_ENUM_CONVERSION = YES; 92 | CLANG_WARN_INT_CONVERSION = YES; 93 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 94 | CLANG_WARN_UNREACHABLE_CODE = YES; 95 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 96 | COPY_PHASE_STRIP = NO; 97 | DEBUG_INFORMATION_FORMAT = dwarf; 98 | ENABLE_STRICT_OBJC_MSGSEND = YES; 99 | ENABLE_TESTABILITY = YES; 100 | GCC_C_LANGUAGE_STANDARD = gnu99; 101 | GCC_DYNAMIC_NO_PIC = NO; 102 | GCC_NO_COMMON_BLOCKS = YES; 103 | GCC_OPTIMIZATION_LEVEL = 0; 104 | GCC_PREPROCESSOR_DEFINITIONS = ( 105 | "DEBUG=1", 106 | "$(inherited)", 107 | ); 108 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 109 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 110 | GCC_WARN_UNDECLARED_SELECTOR = YES; 111 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 112 | GCC_WARN_UNUSED_FUNCTION = YES; 113 | GCC_WARN_UNUSED_VARIABLE = YES; 114 | MTL_ENABLE_DEBUG_INFO = YES; 115 | ONLY_ACTIVE_ARCH = YES; 116 | }; 117 | name = Debug; 118 | }; 119 | B1F11EC51D31410E00180392 /* Release */ = { 120 | isa = XCBuildConfiguration; 121 | buildSettings = { 122 | ALWAYS_SEARCH_USER_PATHS = NO; 123 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 124 | CLANG_CXX_LIBRARY = "libc++"; 125 | CLANG_ENABLE_MODULES = YES; 126 | CLANG_ENABLE_OBJC_ARC = YES; 127 | CLANG_WARN_BOOL_CONVERSION = YES; 128 | CLANG_WARN_CONSTANT_CONVERSION = YES; 129 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 130 | CLANG_WARN_EMPTY_BODY = YES; 131 | CLANG_WARN_ENUM_CONVERSION = YES; 132 | CLANG_WARN_INT_CONVERSION = YES; 133 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 134 | CLANG_WARN_UNREACHABLE_CODE = YES; 135 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 136 | COPY_PHASE_STRIP = NO; 137 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 138 | ENABLE_NS_ASSERTIONS = NO; 139 | ENABLE_STRICT_OBJC_MSGSEND = YES; 140 | GCC_C_LANGUAGE_STANDARD = gnu99; 141 | GCC_NO_COMMON_BLOCKS = YES; 142 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 143 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 144 | GCC_WARN_UNDECLARED_SELECTOR = YES; 145 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 146 | GCC_WARN_UNUSED_FUNCTION = YES; 147 | GCC_WARN_UNUSED_VARIABLE = YES; 148 | MTL_ENABLE_DEBUG_INFO = NO; 149 | }; 150 | name = Release; 151 | }; 152 | B1F11EC71D31410E00180392 /* Debug */ = { 153 | isa = XCBuildConfiguration; 154 | buildSettings = { 155 | DEBUGGING_SYMBOLS = YES; 156 | DEBUG_INFORMATION_FORMAT = dwarf; 157 | GCC_GENERATE_DEBUGGING_SYMBOLS = YES; 158 | GCC_OPTIMIZATION_LEVEL = 0; 159 | OTHER_CFLAGS = ""; 160 | OTHER_LDFLAGS = ""; 161 | PRODUCT_NAME = "$(TARGET_NAME)"; 162 | }; 163 | name = Debug; 164 | }; 165 | B1F11EC81D31410E00180392 /* Release */ = { 166 | isa = XCBuildConfiguration; 167 | buildSettings = { 168 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 169 | OTHER_CFLAGS = ""; 170 | OTHER_LDFLAGS = ""; 171 | PRODUCT_NAME = "$(TARGET_NAME)"; 172 | }; 173 | name = Release; 174 | }; 175 | /* End XCBuildConfiguration section */ 176 | 177 | /* Begin XCConfigurationList section */ 178 | B1F11EC21D31410E00180392 /* Build configuration list for PBXProject "SHAKE16" */ = { 179 | isa = XCConfigurationList; 180 | buildConfigurations = ( 181 | B1F11EC41D31410E00180392 /* Debug */, 182 | B1F11EC51D31410E00180392 /* Release */, 183 | ); 184 | defaultConfigurationIsVisible = 0; 185 | defaultConfigurationName = Release; 186 | }; 187 | B1F11EC61D31410E00180392 /* Build configuration list for PBXLegacyTarget "SHAKE16" */ = { 188 | isa = XCConfigurationList; 189 | buildConfigurations = ( 190 | B1F11EC71D31410E00180392 /* Debug */, 191 | B1F11EC81D31410E00180392 /* Release */, 192 | ); 193 | defaultConfigurationIsVisible = 0; 194 | defaultConfigurationName = Release; 195 | }; 196 | /* End XCConfigurationList section */ 197 | }; 198 | rootObject = B1F11EBF1D31410E00180392 /* Project object */; 199 | } 200 | -------------------------------------------------------------------------------- /Main.f: -------------------------------------------------------------------------------- 1 | C $NOFLOATCALLS 2 | C $NODEBUG 3 | C ................................................................... 4 | program SHAKE91 5 | character*256 FIN,FOUT,PUNCH 6 | common X(25620) 7 | common /TIME/ T(9) 8 | common /WGK/ WW, GT, SKO 9 | C ................................................................... 10 | write(*,100) 11 | 100 format(2X,'*****************************************************'/ 12 | + 2X,'* SHAKE -- A COMPUTER PROGRAM FOR EARTHQUAKE RESPONSE *'/ 13 | + 2X,'* ANALYSIS OF HORIZONTALLY LAYERED SITES *'/ 14 | + 2X,'* by: Per B. Schnabel & John Lysmer -- 1970 *'/ 15 | + 2X,'* ------------------------------------------------------- *'/ 16 | + 2X,'* shake85 IBM-PC version of SHAKE *'/ 17 | + 2X,'* by: S.S. (Willie) Lai, January 1985 *'/ 18 | + 2X,'* ------------------------------------------------------- *'/ 19 | + 2X,'* shake88 : New modulus reduction curves for clays added*'/ 20 | + 2X,'* using results from Sun et al (1988) *'/ 21 | + 2X,'* by: J. I. Sun & Ramin Golesorkhi *'/ 22 | + 2X,'* February 26, 1988 *'/ 23 | + 2X,'* ------------------------------------------------------- *'/ 24 | + 2X,'* SHAKE90/91: Adjust last iteration; Input now is either *'/ 25 | + 2X,'* Gmax or max Vs; up to 13 material types can *'/ 26 | + 2X,'* be specified by user; up to 50 Layers can *'/ 27 | + 2X,'* be specified; object motion can be read in *'/ 28 | + 2X,'* from a separate file and can have user *'/ 29 | + 2X,'* specified format; Different periods for *'/ 30 | + 2X,'* response spectral calculations; options *'/ 31 | + 2X,'* are renumbered; and general cleanup *'/ 32 | + 2X,'* by: J. I. Sun, I. M. Idriss & P. Dirrim *'/ 33 | + 2X,'* June 1990 - February 1991 *'/ 34 | + 2X,'* ------------------------------------------------------- *'/ 35 | + 2X,'* SHAKE91 : General cleanup and finalization of input/ *'/ 36 | + 2X,'* output format ... etc *'/ 37 | + 2X,'* by: I. M. Idriss *'/ 38 | + 2X,'* December 1991 *'/ 39 | + 2X,'***********************************************************') 40 | 41 | C We allow users to specify input/output file names via command-line 42 | C arguments. First argument is defined to be the input file, second and 43 | C third are the output files. 44 | 45 | call get_command_argument(1, FIN) 46 | 47 | if (len_trim(FIN) .gt. 0) then 48 | call get_command_argument(2, FOUT) 49 | 50 | call get_command_argument(3, PUNCH) 51 | else 52 | C No command-line arguments were provided, use traditional format 53 | write(*,200) 54 | 200 format(4X,'Name of Input File =') 55 | read(*,10) FIN 56 | 57 | write(*,300) 58 | 300 format(4X,'Name of Output File #1 input, peak values .. etc =') 59 | read(*,10) FOUT 60 | 61 | write(*,400) 62 | 400 format(4X,'Name of Output File #2 time histories .. etc =') 63 | read(*,10) PUNCH 64 | 65 | 10 format(A32) 66 | end if 67 | 68 | open(5,FILE=FIN,STATUS='OLD') 69 | open(6,FILE=FOUT,STATUS='NEW') 70 | open(7,FILE=PUNCH,STATUS='NEW') 71 | 72 | write(6,100) 73 | WW = .0624 74 | GT = 32.2 75 | MAMAX=4096 76 | C ...................................................................... 77 | C 78 | NAX = MAMAX + 5 79 | NAA = NAX + 3*(MAMAX + 4) 80 | NS = NAA + 2*MAMAX 81 | NINV = NS + NAX/8 + 1 82 | NTOT = NINV + NAX/8 + 1 83 | if (SKO .LT. .000001) SKO = .45 84 | write(6,2000) MAMAX, NTOT 85 | C 86 | callSHAKIT(X(1), X(NAX), X(NAA), X(NS), X(NINV)) 87 | C 88 | stop 89 | C **************************************************** 90 | 1000 format(I5, F10.0) 91 | 2000 format( 45H MAX. NUMBER OF TERMS IN FOURIER TRANSFORM = I10/ 92 | 1 45H NECESSARY LENGTH OF BLANK COMMON X = I10) 93 | end 94 | C******************************************************************** 95 | subroutine EARTHQ(X,AX,S,INV) 96 | C*********************************************************************** 97 | C 98 | C THIS ROUTINE READS THE MOTION IN THE TIME DOMAIN, ADDS TRAILING 99 | C ZEROS, SCALES THE VALUES, FIND MAXIMUM VALUE AND VARIOUS PARAMETERS 100 | C AND TRANSFER THE MOTION INTO THE FREQUENCY DOMAIN. 101 | C 102 | C CODED BY PBS SEPT. 1970 103 | C 104 | C X = INPUT MOTION 105 | C AX = TEMPORARY STORAGE OF X 106 | C TITLE = IDENTIFICATION FOR MOTION 107 | C DT = TIME STEP BETWEEN VALUES IN TIME DOMAIN 108 | C NV = NUMBER OF ACC. VALUES TO BE READ 109 | C MA = LENGTH OF MOTION INCLUDING TRAILING ZEROS 110 | C MMA = LENGTH OF SIGNIFICANT PART OF MOTION 111 | C XF = MULTIPLICATION FACTOR FOR ACCELERATION VALUES 112 | C DF = FREQUENCY STEPS IN FREQ. DOMAIN 113 | C 114 | C*********************************************************************** 115 | C 116 | character*6 TITLE 117 | character*30 FINPEQ 118 | character*80 HEAD 119 | character*12 FMAT 120 | complex X, AX 121 | dimension XR(8),X(300),AX(3,270),S(70),INV(70) 122 | common /EQ/ MFOLD,MA2,TITLE(5),DT, MA , MMA, DF, MX 123 | common/FRCUT/ NCUT,NZERO 124 | common /JISCK/ JIS,FINPEQ 125 | C 126 | PI2 = 6.283185307 127 | read(5, 1001) NV, MA, DT, FINPEQ, FMAT 128 | read(5, 1004) XF,XMAX,FMAX,NHEAD, NPL 129 | if (FMAX .LT. .001) FMAX = 100000. 130 | if (FMAT .EQ. ' ') FMAT = '(8F9.6,I7)' 131 | MA2 = 2 132 | 2 if (MA2.GE.MA) go to 3 133 | MA2 = MA2 * 2 134 | go to 2 135 | 3 MA=MA2 136 | C .................................................................... 137 | write(6, 2012) FINPEQ, NV, MA, NHEAD, NPL, DT, FMAT 138 | write (*,2026) FINPEQ,FMAT 139 | open(8, FILE=FINPEQ, STATUS='OLD') 140 | write (6,2021) 141 | do 4 I=1,NHEAD 142 | read(8, 2022) HEAD 143 | 4 write(6, 2022) HEAD 144 | C write (6,2023) 145 | MMA = NV + NV / 10 146 | if (MMA .GT. MA) MMA=MA 147 | MA2 = MA + 2 148 | MFOLD = MA2/2 149 | MFOLD = MFOLD + 1 150 | DF = 1./(MA*DT) 151 | FMA = FLOAT(MA) 152 | MX = (ALOG10(FMA)/ALOG10(2.))- 1 153 | 1 NMX = 2**(MX+1) 154 | if (MA .LE. NMX) go to 11 155 | MX = MX + 1 156 | go to 1 157 | 11 NCARDS = (NV-1)/NPL + 1 158 | JL=NPL*NCARDS-NV 159 | NV = NV + 1 160 | N = 0 161 | LC = 0 162 | write(6,2024) 163 | do 31 I = 1,NCARDS 164 | LC = LC + 1 165 | read(8,FMAT) (XR(J), J=1,NPL) 166 | if (I .NE. NCARDS) go to 6 167 | if (JL .EQ. 0) go to 6 168 | JL=NPL+1-JL 169 | do 5 J=JL,NPL 170 | 5 XR(J)=0. 171 | C--------------------------------------------------------------- 172 | C ONLY PRINT OUT A FEW OF THE FIRST AND THE LAST LINES of Input Motion 173 | C--------------------------------------------------------------- 174 | 6 ICHECK = NCARDS - I 175 | if (I .LE. 5 .OR. ICHECK .LT. 5) write(6,2008) I,(XR(J), J=1,NPL) 176 | if (I .EQ. 10) write (6,2009) 177 | 2009 format(3X,'........ INPUT MOTION READ NOT ECHOED...........') 178 | C endIF 179 | C 180 | C FIND MAX. INPUT ACC. (XMAX) 181 | C 182 | 311 do 31 J = 1,NPL,2 183 | N = N + 1 184 | X(N) = CMPLX(XR(J),XR(J+1)) 185 | 31 continue 186 | close (8) 187 | N = N + 1 188 | do 32 I = N,MFOLD 189 | 32 X(I) = 0. 190 | callXMX(X,MA,XM,NXMAX) 191 | if (XMAX.LT. .000001) go to 300 192 | XF = XMAX/XM 193 | 300 do 30 I = 1,N 194 | 30 X(I) = X(I)*XF 195 | XMAX = XM*XF 196 | TMAX = FLOAT(NXMAX-1)*DT 197 | write(6,2014) XM,TMAX,XF,XMAX 198 | C 199 | callRFFT(X,MX,INV,S,IFERR,1) 200 | C 201 | C REMOVE FREQUENCIES ABOVE FMAX AND FIND MAX. ACC. OF NEW MOTION 202 | C 203 | FREQ = 0. 204 | SXX = 0. 205 | SFX = 0. 206 | NCUT=0 207 | do 33 I = 1,MFOLD 208 | if (FREQ .LE. FMAX) go to 34 209 | NCUT=NCUT+1 210 | X(I)=0.0 211 | 34 continue 212 | XA = CABS(X(I)) 213 | SXX= SXX + XA*XA 214 | SFX = SFX + FREQ*XA*XA 215 | AX(1,I) = X(I) 216 | FREQ = FREQ + DF 217 | 33 continue 218 | SFX = SFX/SXX 219 | NCUT=MFOLD-NCUT 220 | NZERO=NCUT+1 221 | write(6,2005) SFX 222 | if (FMAX.GT.FREQ) return 223 | callRFSN(X,MX,INV,S,IFERR,-2) 224 | callXMX(X,MA,XM,NXMAX) 225 | do 72 I = 1,MFOLD 226 | 72 X(I) = AX(1,I) 227 | write(6,2001) XM,FMAX 228 | C 229 | 1001 format(2I5, F10.3, A30, A12) 230 | 1002 format(8F9.5,I7) 231 | 1003 format(8F10.0) 232 | 1004 format(3F10.0,2I5) 233 | 2001 format(21H MAX ACCELERATION = F10.5, 22H FOR FREQUENCIES REMOV 234 | 19HED ABOVE F10.2, 7H C/SEC.) 235 | 2003 format(17H ACC. CARD NO. I4,16H OUT OF SEQUENCE ) 236 | 2005 format(25H MEAN SQUARE FREQUENCY = F10.2, 7H C/SEC. ) 237 | C2008 format(2X, I5, 5X, 8F15.6) 238 | 2008 format(1X,I5,1X, 8F9.6) 239 | 2012 format(/1X, ' FILE NAME FOR INPUT MOTION = ', A30,/ 240 | + 1X, ' NO. OF INPUT ACC. POINTS = ',I5,/ 241 | + 1X, ' NO. OF POINTS USED IN FFT = ',I5/ 242 | + 1X, ' NO. OF HEADING LINES = ',I5/ 243 | + 1X, ' NO. OF POINTS PER LINE = ',I5/ 244 | + 1X, ' TIME STEP FOR INPUT MOTION = ',F6.4/ 245 | + 1X, ' format FOR OF TIME HISTORY = ', A12, /) 246 | 2014 format(/23H MAXIMUM ACCELERATION = F9.5/ 247 | 1 23H AT TIME = F6.2, 4H SEC/ 248 | 1 44H THE VALUES WILL BE MULTIPLIED BY A FACTOR = F7.3/ 249 | 3 44H TO GIVE NEW MAXIMUM ACCELERATION = F9.5 ) 250 | 2021 format (/1X,'***** H E A D E R ') 251 | 2022 format (A80) 252 | 2023 format (1X,'*************************************************' 253 | 1 ,'*****************') 254 | 2024 format (' ** FIRST & LAST 5 LINES OF INPUT MOTION *****'/) 255 | 2025 format (' *****************************************************'/) 256 | 2026 format(/,1X, ' READING INPUT MOTION FROM ----> ',A30/ 257 | + 1X, ' format OF INPUT MOTION USED --> ',A12) 258 | return 259 | end 260 | -------------------------------------------------------------------------------- /B1.f: -------------------------------------------------------------------------------- 1 | C $NOFLOATCALLS 2 | C $NODEBUG 3 | C************************************ 4 | subroutine AMP( N1,IN,INT,LL,LT,KPL,IDAMP,NA,DF) 5 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 6 | C 7 | C THIS ROUTINE COMPUTES THE AMPLIFICATION SPECTRUM BETWEEN ANY TWO 8 | C LAYERS 9 | C 10 | C N1 = NUMBER OF SOIL LAYERS EXCLUDING ROCK 11 | C IN = NUMBER OF SUBLAYER FROM WHICH AMPLIFICATION IS COMP. 12 | C INT = SUBLAYER TYPE 13 | C 0 - OUTCROPPING LAYER 14 | C 1 - LAYER WITHIN PROFILE 15 | C LL = NUMBER OF SUBLAYER TO WHICH AMPLIFICATION IS COMP. 16 | C LT = SUBLAYER TYPE 17 | C 0 - OUTCROPPING LAYER 18 | C 1 - LAYER WITHIN PROFILE 19 | C DF = FREQUENCY STEPS IN AMP. FUNCTION 20 | C NA = CURVE NUMBER IN PLOTTING 21 | C IDAMP = IDENTIFICATION 22 | C 23 | C CODED PER B SCHNABEL FEB. 1971 24 | C modified to increase number of sublayers to 50 25 | C February 1991 26 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 27 | complex G, V, PLUS, MINUS 28 | complex E, F, EE, FF, A, EX, AIN, IPI2,AA 29 | character*60 ABSIS 30 | character*6 ID,IDNT,IDAMP 31 | C 32 | dimension IDAMP (27,11),T(200) 33 | common /JOE4/ ST(27,200) 34 | common /SOILA/ IDNT(6),BL(51),GL(51),FACT(51),H(51),R(51),BF(51) 35 | common /CSOIL/ G(51), V(51), PLUS(51), MINUS(51) 36 | common /CCG/ ID(27,11) 37 | C 38 | ABSIS = ' CYCLES/SEC. ' 39 | C 40 | IPI2 = CMPLX(0., 6.283185307) 41 | FREQ = 0. 42 | ST(NA,1) = 1. 43 | do 19 I = 2,200 44 | E = 1. 45 | FF = 1. 46 | FREQ = FREQ + DF 47 | A = FREQ*IPI2 48 | do 191 K = 1,N1 49 | if (K.NE.IN) go to 192 50 | AIN = E + FF 51 | if (INT.EQ.0) AIN = 2.*E 52 | 192 if (K.NE.LL) go to 11 53 | AA = E + FF 54 | if (LT.EQ.0) AA = 2.*E 55 | 11 EX = CEXP(H(K)*A/V(K)) 56 | EE = E*EX 57 | F = FF/EX 58 | E = EE*PLUS(K) + MINUS(K)*F 59 | FF = PLUS(K)*F + MINUS(K)*EE 60 | 191 continue 61 | if (IN.NE.N1+1) go to 193 62 | AIN = E + FF 63 | if (INT.EQ.0) AIN = 2.*E 64 | 193 if (LL .NE.N1+1) go to 21 65 | AA = E + FF 66 | if (LT.EQ.0) AA = 2.*E 67 | 21 ST(NA,I) = CABS(AA/AIN) 68 | 19 continue 69 | do 23 I = 1,200 70 | 23 T(I) = DF*FLOAT(I-1) 71 | AMAX = 0. 72 | write(6,2) 73 | do 22 I = 1,200 74 | if (KPL .GE. 2) write(6,1) T(I), ST(NA,I) 75 | if (ST(NA,I) .LT. AMAX) go to 22 76 | TMAX = T(I) 77 | AMAX = ST(NA,I) 78 | 22 continue 79 | if (NA.LT.9) NA=NA+1 80 | PERIOD = 1./TMAX 81 | if (TMAX.LT. .0001) write(6,1001) AMAX, TMAX 82 | if (TMAX.GT. .0001) write(6,1001) AMAX, TMAX,PERIOD 83 | if (KPL.EQ.0) return 84 | write(6,1000) 85 | N = NA-1 86 | NA = 1 87 | return 88 | 1 format(1X,F10.4, 3X, F10.4) 89 | 2 format(/2X,'FREQUENCY AMPLITUDE') 90 | 1000 format(33H1 PLOT OF AMPLIFICATION SPECTRA /) 91 | 1001 format(25H MAXIMUM AMPLIFICATION = F6.2/ 92 | 1 25H FOR FREQUENCY = F6.2, 7H C/SEC. / 93 | 1 25H PERIOD = F6.2, 5H SEC. ) 94 | end 95 | C****************************************** 96 | subroutine UTPR(KK,DPTH,LS,K2,LH,LT,X,AX,S,INV) 97 | C*********************************************************************** 98 | C 99 | C THIS ROUTINE TRANSFERS THE VALUES IN AX(LH, ) INTO THE TIME DOMAIN 100 | C IN X( ), TRANSFERS RESULTS TO OUTPUT FILE 101 | C 102 | C KK = 5 TABULATE MAX. ACC. 103 | C 6 PRINT MAX ACC. SEPARATELY 104 | C DPTH = DEPTH OF LAYER 105 | C X( ) = OBJECT MOTION 106 | C AX(LS, )= COMPUTED MOTION 107 | C LS = COMPUTED MOTION NUMBER 108 | C 0 IF OBJECT MOTION 109 | C LH = SUBLAYER NUMBER 110 | C LT = SUBLAYER TYPE 111 | C 0 - OUTCROPPING 112 | C 1 - INSIDE 113 | C S,INV SCRATCH ARRAYS 114 | C 115 | C CODED PER B SCHNABEL OCT. 1970 116 | C MODIFIED PBS AUG. 1971 117 | C modified to increase number of layers to 50 118 | C*********************************************************************** 119 | character*6 TITLE,IDNT 120 | complex SAVE 121 | complex X, AX 122 | C 123 | dimension XR(8) 124 | dimension X(300),AX(3,270),S(70),INV(70) 125 | common /SOILA/ IDNT(6),BL(51),GL(51),FACT(51),H(51),R(51),BF(51) 126 | common /EQ/ MFOLD,MA2,TITLE(5),DT, MA , MMA, DF,MX 127 | C 128 | FREQ = 0. 129 | SFX = 0. 130 | SXX = 0. 131 | C TRANSFORM VALUES IN X OR IN AX INTO THE TIME DOMAIN 132 | do 24 I = 1,MFOLD 133 | if (LS.EQ.0) go to 241 134 | SAVE = X(I) 135 | X(I) = AX(LS,I) 136 | AX(LS,I) = SAVE 137 | 241 XA = CABS(X(I)) 138 | SXX= SXX + XA*XA 139 | SFX = SFX + XA*FREQ*XA 140 | FREQ = FREQ + DF 141 | 24 continue 142 | SFX = SFX/SXX 143 | C 144 | call RFSN(X,MX,INV,S,IFERR,-2) 145 | C 146 | call XMX(X,MA,XMAX,NMAX) 147 | TMAX = DT*FLOAT(NMAX-1) 148 | XEND = 0. 149 | N = MA/20 150 | NN = 9*N 151 | N = 8*N 152 | do 25 I = N,NN 153 | XABS = REAL(X(I)) 154 | XABS = ABS(XABS) 155 | if (XABS.GT.XEND) XEND = XABS 156 | XABS = AIMAG(X(I)) 157 | XABS = ABS(XABS) 158 | if (XABS.GT.XEND) XEND = XABS 159 | 25 continue 160 | XEND = XEND/XMAX 161 | C 162 | C SAVE OUTPUT 163 | N = 1 164 | NN = 4 165 | NCARDS=MA/8 166 | NC = NCARDS 167 | if (K2.EQ.0) NC = 0 168 | C if (KK.EQ.5) go to 252 169 | if (KK.EQ.6) go to 252 170 | if (LT.EQ.0) write(6,2000) LH, (IDNT(I),I=1,6) 171 | if (LT.EQ.1) write(6,2002) LH, (IDNT(I),I=1,6) 172 | write(6, 2005) SFX 173 | write(6,2003) XMAX, TMAX 174 | 252 if (KK.EQ.6.AND.LT.EQ.0) write(6,2001) DPTH,XMAX,TMAX,SFX,XEND,NC 175 | if (KK.EQ.6.AND.LT.EQ.1) write(6,2010) DPTH,XMAX,TMAX,SFX, XEND,NC 176 | if (K2.EQ.0) go to 262 177 | write(7,2006) XMAX, (TITLE(I),I=1,5) 178 | if (LT.EQ.1) write(7,2002) LH, (IDNT(I),I=1,6) 179 | if (LT.EQ.0) write(7,2000) LH, (IDNT(I),I=1,6) 180 | do 26 I = 1,NCARDS 181 | K = 0 182 | do 261 J = N,NN 183 | K = K+ 1 184 | XR(K) = REAL(X(J)) 185 | K = K + 1 186 | XR(K) = AIMAG(X(J)) 187 | 261 continue 188 | write(7,2009) (XR(J),J=1,8),I 189 | if (K2 .EQ. 2) write(6,2019) (XR(J), J = 1,8), I 190 | NN = 4 + NN 191 | N = N + 4 192 | 26 continue 193 | 262 call RFFT(X,MX,INV,S,IFERR,2) 194 | if (LS.EQ.0) return 195 | do 27 I = 1,MFOLD 196 | SAVE = AX(LS,I) 197 | AX(LS,I) = X(I) 198 | 27 X(I) = SAVE 199 | return 200 | C 201 | 2000 format(43H ACCELERATION VALUES AT OUTCROPPING LAYER I3,3H - 6A6) 202 | 2001 format(5X,6HOUTCR. F15.1,F15.5,2F15.2,F20.3,I20) 203 | 2010 format(5X,6HWITHIN F15.1,F15.5,2F15.2,F20.3,I20) 204 | 2002 format(42H ACCELERATION VALUES AT THE TOP OF LAYER I3,3H - 6A6) 205 | 2003 format(/15H MAX. ACC. = F9.6,11H AT TIME = F6.3, 5H SEC. /) 206 | 2005 format(/26H MEAN SQUARE FREQUENCY = F10.2/) 207 | 2006 format(21X,6HXMAX= F7.4,5A6) 208 | 2008 format(2X, I5, 5X, 8F15.6) 209 | 2009 format(8F9.6,I7) 210 | 2019 format(8F14.6,I10) 211 | end 212 | C************************************** 213 | subroutine REDUCE(IFR,X,AX,LL) 214 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 215 | C THIS ROUTINE INCREASES TIME INTERVAL AND REDUCES NUMBER OF VALUES 216 | C 217 | C IFR = DIVIDING FACTOR ON LENGTH OF RECORD 218 | C MULTIPLICATION FACTOR ON TIME STEP 219 | C MUST BE A POWER OF 2. 220 | C DT = TIMESTEP IN SEC. 221 | C DF = FREQUENCY STEP IN C/SEC. 222 | C MA = NUMBER OF POINTS USED IN FOURIER TRANSFORM 223 | C X = FOURIER TRANSFORM OF OBJECT MOTION 224 | C AX = FOURIER TRANSFORM OF COMPUTED MOTIONS 225 | C 226 | C 227 | C CODED BY PER B. SCHNABEL DEC. 1970. 228 | C MODIFIED SEPT. 1971 229 | C 230 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 231 | character*6 TITLE 232 | complex X, AX 233 | C 234 | dimension X( 68), AX(3, 64), LL(3) 235 | common /EQ/ MFOLD,MA2,TITLE(5),DT, MA , MMA, DF,MX 236 | common/FRCUT/ NCUT,NZERO 237 | C 238 | F1 = .5/DT 239 | FR = FLOAT(IFR) 240 | DT = DT*FR 241 | MA = MA/IFR 242 | MMA = MMA/IFR 243 | MA2 = MA + 2 244 | MFOLD = MA2/2 245 | N = MFOLD + 1 246 | do 12 I = MFOLD,N 247 | X(I) = 0. 248 | C 249 | do 12 L = 1,3 250 | if (LL(L).LE.0) go to 12 251 | AX(L,I) = 0. 252 | 12 continue 253 | MFOLD = MFOLD + 1 254 | F2 = .5/DT 255 | write(6,1000) F1,F2,DT, MA 256 | FMA = FLOAT(MA) 257 | MX = (ALOG10(FMA)/ALOG10(2.))-1. 258 | if (MA.GT.2**(MX+1)) MX=MX+1 259 | IF(NCUT.LE.MFOLD) go to 15 260 | NCUT=MFOLD 261 | 15 continue 262 | 1000 format( 20H FREQUENCIES FROM F6.2, 3H TO F6.2,14H C/SEC ARE REM 263 | 15HOVED / 264 | 216H NEW TIMESTEP = F5.4/19H NUMBER OF VALUES = I5) 265 | return 266 | end 267 | C***************************** 268 | subroutine INCR(IFR,X,AX) 269 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 270 | C THIS ROUTINE INCREASES NUMBER OF POINTS IN THE RECORD 271 | C BY DECREASING TIMESTEP 272 | C 273 | C IFR = MULTIPLYING FACTOR ON LENGTH OF RECORD 274 | C MUST BE A POWER OF 2. 275 | C DT = TIMESTEP IN SEC. 276 | C DF = FREQUENCY STEP IN C/SEC. 277 | C MA = NUMBER OF POINTS USED IN FOURIER TRANSFORM 278 | C X = FOURIER TRANSFORM OF OBJECT MOTION 279 | C AX = FOURIER TRANSFORM OF COMPUTED MOTIONS 280 | C 281 | C 282 | C CODED BY PER B. SCHNABEL DEC. 1970. 283 | C MODIFIED OCT. 1971 284 | C 285 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 286 | complex X, AX 287 | character*6 TITLE 288 | C 289 | dimension X( 68), AX(3, 64) 290 | common /EQ/ MFOLD,MA2,TITLE(5),DT, MA , MMA, DF,MX 291 | C 292 | F1 = .5/DT 293 | FR = FLOAT(IFR) 294 | DT = DT/FR 295 | N = MFOLD- 1 296 | MA = MA*IFR 297 | MMA = MMA*IFR 298 | MA2 = MA + 2 299 | MFOLD = MA2/2 300 | MFOLD = MFOLD + 1 301 | do 10 I = N, MFOLD 302 | X(I) = 0. 303 | do 10 L = 1,3 304 | 10 AX(L,I) = 0. 305 | F2 = .5/DT 306 | write(6,1000) F1,F2,DT, MA 307 | FMA = FLOAT(MA) 308 | MX = (ALOG10(FMA)/ALOG10(2.))-1. 309 | if (MA.GT.2**(MX+1)) MX=MX+1 310 | 1000 format(27H FREQUENCIES ADDED FROM F6.2,3H TO F6.2/ 311 | 216H NEW TIME STEP = F5.4/19H NUMBER OF VALUES = I5/) 312 | return 313 | end 314 | C*********************************************************** 315 | subroutine MOTION(N1,IN,INT,LL,LT, X,AX) 316 | *********************************************************** 317 | C THIS ROUTINE CALCULATES THE MOTION IN ANY TWO SOIL LAYERS OR IN 318 | C ROCK FROM MOTION GIVEN IN ANY LAYER OR IN ROCK 319 | C 320 | C N1 = NUMBER OF SOIL LAYERS EXCLUDING ROCK 321 | C IN = NUMBER OF LAYER WHERE OBJECT MOTION IS GIVEN 322 | C INT = MOTION TYPE 323 | C IF EQUEL 0 OUTCROPPING LAYER 324 | C LL() = NUMBER OF LAYERS WHERE OUTPUT MOTION IS WANTED 325 | C MAX 3 LAYERS 326 | C LT() = MOTION TYPE 327 | C 0 - OUTCROPPING LAYER 328 | C 1 - LAYER WITHIN PROFILE 329 | C X() = OBJECT MOTION 330 | C AX() = OUTPUT MOTION 331 | C 332 | C CODED BY PER B SCHNABEL OCT 1970 333 | C modified to increase the number of layers to 50 334 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 335 | integer LL(3), LT(3) 336 | character*6 TITLE,IDNT 337 | complex AA(3) 338 | complex X, AX 339 | complex G, V, PLUS, MINUS 340 | complex E, F, EE, FF, A, EX, AIN, IPI2 341 | C 342 | dimension X(300),AX(3,270),S(70) 343 | common /EQ/ MFOLD,MA2,TITLE(5),DT, MA , MMA, DF,MX 344 | common /SOILA/ IDNT(6),BL(51),GL(51),FACT(51),H(51),R(51),BF(51) 345 | common /CSOIL/ G(51), V(51), PLUS(51), MINUS(51) 346 | common/FRCUT/ NCUT,NZERO 347 | C 348 | IPI2 = CMPLX(0., 6.283185307) 349 | do 20 L = 1,3 350 | if (LL(L) .GT. 0) AX(L,1) = X(1) 351 | IF(NCUT.EQ.MFOLD) go to 20 352 | do 30 I=NZERO,MFOLD 353 | AX(L,I)=CMPLX(0.,0.) 354 | 30 continue 355 | 20 continue 356 | FREQ = 0. 357 | do 19 I=2,NCUT 358 | E = 1. 359 | FF = 1. 360 | FREQ = FREQ + DF 361 | A = FREQ*IPI2 362 | do 191 K = 1,N1 363 | if (K.NE.IN) go to 192 364 | AIN = E + FF 365 | if (INT.EQ.0) AIN = 2.*E 366 | C FIND SUBLAYER WHERE MOTION IS WANTED 367 | 192 do 11 L = 1,3 368 | if (K.NE.LL(L)) go to 11 369 | C AMPLIFICATION FACTOR FOR SUBLAYER WITHIN PROFILE 370 | AA(L) = E + FF 371 | C AMPLIFICATION FACTOR FOR OUTCROPPING SUBLAYER 372 | if (LT(L).EQ.0) AA(L) = 2.*E 373 | 11 continue 374 | EX = CEXP(H(K)*A/V(K)) 375 | EE = E*EX 376 | F = FF/EX 377 | E = EE*PLUS(K) + MINUS(K)*F 378 | FF = PLUS(K)*F + MINUS(K)*EE 379 | 191 continue 380 | if (IN.NE.N1+1) go to 193 381 | AIN = E + FF 382 | if (INT.EQ.0) AIN = 2.*E 383 | 193 do 21 L = 1,3 384 | if (LL(L).NE.N1+1) go to 21 385 | AA(L) = E + FF 386 | if (LT(L).EQ.0) AA(L) = 2.*E 387 | 21 continue 388 | do 23 L = 1,3 389 | if (LL(L) .GT. 0) AX(L,I) = X(I)*AA(L)/AIN 390 | 23 continue 391 | 19 continue 392 | return 393 | end 394 | C************************************************* 395 | subroutine CXSOIL(N1) 396 | C*********************************************************************** 397 | C 398 | C THIS ROUTINE CALCULATES THE complex SOIL PROPERTIES AND TRANSFER 399 | C FUNCTIONS FOR THE LAYERS 400 | C 401 | C N1 = NUMBER OF SOIL LAYERS 402 | C BL = RATIO OF CRITICAL DAMPING 403 | C GL = SHEAR MODULUS 404 | C R = DENSITY 405 | C G = complex SHEAR MODULUS 406 | C V = complex SHEAR WAVE VELOCITY 407 | C PLUS = complex TRANSFER FUNCTION 408 | C MINUS = complex TRANSFER FUNCTION 409 | C 410 | C CODED BY PER B SCHNABEL OCT 1971 411 | C 412 | C*********************************************************************** 413 | C 414 | complex G, V, PLUS, MINUS, MU 415 | character*6 IDNT 416 | common /SOILA/ IDNT(6),BL(51),GL(51),FACT(51),H(51),R(51),BF(51) 417 | common /CSOIL/ G(51), V(51), PLUS(51), MINUS(51) 418 | C 419 | N = N1 + 1 420 | do 1 I = 1,N 421 | GIMAG=2.*BL(I)*GL(I)*SQRT(1.-BL(I)*BL(I)) 422 | GREAL=GL(I)*(1.-2.*BL(I)*BL(I)) 423 | G(I)=CMPLX(GREAL,GIMAG) 424 | V(I) = CSQRT(G(I)/R(I)) 425 | 1 continue 426 | do 2 I = 1,N1 427 | J = I + 1 428 | MU = CSQRT(R(I)/R(J)*G(I)/G(J)) 429 | PLUS(I) = (1. + MU)/2. 430 | MINUS(I)= (1. - MU)/2. 431 | 2 continue 432 | return 433 | end 434 | C********************************************* 435 | subroutine STRAIN( LL, LGS, LPCH, LPL,LNV,X,AX,AA,N1,S,INV) 436 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 437 | C 438 | C THIS subroutine COMPUTES STRAIN AND/OR STRESS TIME-HISTORY AT THE 439 | C TOP OF ANY LAYER FOR ACCELERATION HISTORY KNOWN IN ANY LAYER 440 | C TWO RESPONSE HISTORIES ARE COMPUTED IN ONE RUN 441 | C 442 | C LL = SUBLAYER NUMBER WHERE RESPONSE IS TO BE COMPUTED 443 | C LGS = SWITCH FOR STRESS OR STRAIN 444 | C LPCH = SWITCH FOR SAVING OUTPUT 445 | C LPL = SWITCH FOR PLOT 446 | C X = FOURIER TRANSFORM OF OBJECT MOTION 447 | C AX(1, ) FOURIER TRANSFORM OF SURFACE MOTION 448 | C AX(2, ) FOURIER TRANSFORM OF FIRST COMPUTED RESPONSE 449 | C AX(3, ) FOURIER TRANSFORM OF SECOND RESPONSE 450 | C AA(1, ) TIME HISTORY OF FIRST RESPONSE 451 | C AA(2, ) TIME HISTORY OF SECOND RESPONSE 452 | C 453 | C CODED BY PER B. SCHNABEL JULY 1971 454 | C 455 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 456 | C 457 | integer TP 458 | character*6 TITLE,IDNT,ID 459 | character*60 ABSIS 460 | complex X, AX 461 | complex G, V, PLUS, MINUS 462 | complex E,F,EE, A,AH,IPI2, AE,AF,EX,AI 463 | C 464 | dimension AE(2), AF(2) 465 | dimension X(1), AX(3,1), AA(2,1), S(1), INV(1) 466 | dimension LL(2), LGS(2), LPCH(2), LPL(2), LNV(2) 467 | C 468 | common /SOILA/ IDNT(6),BL(51),GL(51),FACT(51),H(51),R(51),BF(51) 469 | common /SOILB/ FAC(51), WL(51), TP(51), DEPTH(51), WEIGHT(51) 470 | common /CSOIL/ G(51), V(51), PLUS(51), MINUS(51) 471 | common /EQ/ MFOLD,MA2,TITLE(5),DT, MA , MMA, DF,MX 472 | common /CCG/ ID(27,11) 473 | common /FRCUT/ NCUT,NZERO 474 | common /TIME/ T(9) 475 | C 476 | ABSIS = ' TIME IN SEC ' 477 | IPI2 = CMPLX(0.,6.283185307) 478 | GT = 32.2 479 | AX(2,1) = 0. 480 | AX(3,1) = 0. 481 | FREQ = 0. 482 | AI = GT/IPI2 483 | C 484 | C STARTING AT THE SURFACE THE STRAIN IS COMPUTED SUCCESSIVELY DOWNWARDS 485 | C FOR EACH FREQUENCY 486 | do 1 I=2,NCUT 487 | E = AX(1,I)/2. 488 | F = E 489 | FREQ = FREQ + DF 490 | AH = AI/FREQ 491 | A = FREQ*IPI2 492 | do 11 K = 1,N1 493 | do 12 L = 1,2 494 | if (K.NE.LL(L)) go to 12 495 | AE(L) = E/V(K) 496 | AF(L) = F/V(K) 497 | 12 continue 498 | EX = CEXP(H(K)*A/V(K)) 499 | E = E*EX 500 | F = F/EX 501 | EE = E*PLUS(K) + MINUS(K)*F 502 | F = F*PLUS(K) + MINUS(K)*E 503 | E = EE 504 | 11 continue 505 | do 13 L = 1,2 506 | if (LL(L).NE.N1+1) go to 13 507 | AE(L) = E/V(N1+1) 508 | AF(L) = F/V(N1+1) 509 | 13 continue 510 | do 14 L = 1,2 511 | if (LL(L).GT.0) AX(L+1,I) = (AE(L) -AF(L))*AH 512 | 14 continue 513 | 1 continue 514 | do 2 I = 1,MFOLD 515 | 2 AX(1,I) = X(I) 516 | do 3 L = 1,2 517 | if (LL(L).EQ.0) go to 3 518 | X(1) = 0. 519 | do 31 I=2,NCUT 520 | 31 X(I) = AX(L+1,I) 521 | IF(NCUT.EQ.MFOLD) go to 33 522 | do 34 II=NZERO,MFOLD 523 | X(II)=CMPLX(0.,0.) 524 | 34 continue 525 | 33 continue 526 | call RFSN(X,MX,INV,S,IFERR,-2) 527 | do 32 I =1,MFOLD 528 | AA(L,2*I-1) =REAL(X(I))*100. 529 | 32 AA(L,2*I) = AIMAG(X(I))*100. 530 | 3 continue 531 | C 532 | do 4 I = 1,MFOLD 533 | 4 X(I) = AX(1,I) 534 | C COMPUTE STRESS IF WANTED AND SAVE COMPUTED RESPONSES 535 | do 5 L = 1,2 536 | if (LL(L) .EQ. 0) go to 5 537 | NVAL = LNV(L) 538 | if (NVAL.LE.0) NVAL = MMA 539 | if (NVAL.GT.MA) NVAL = MA 540 | if (NVAL.GT.2049) NVAL = 2049 541 | do 51 I = 1,5 542 | 51 ID(L,I) = TITLE(I) 543 | N = LL(L) 544 | ID(L,6) = 'STRAIN' 545 | if (LGS(L) .EQ.0) go to 53 546 | ID(L,6) = 'STRESS' 547 | do 52 I = 1,NVAL 548 | 52 AA(L,I) = GL(N)*AA(L,I)/100. 549 | 53 if (LPCH(L).EQ.0) go to 54 550 | write(7,2000) (ID(L,I), I=1,11),N 551 | N = 1 552 | NCARDS = NVAL/8 553 | do 55 K = 1,NCARDS 554 | NN = N + 7 555 | write(7,2001) (AA(L,I), I = N,NN), K 556 | 55 N = N + 8 557 | 54 if (LPL(L).EQ.0) go to 5 558 | N = 0 559 | NSKIP = 1 560 | do 56 I = 1,NVAL,NSKIP 561 | N = N + 1 562 | if (NSKIP.GT.1) AA(L,N) = AA(L,I) 563 | 56 T(N) = DT*FLOAT(I-1) 564 | IF (LGS(L).EQ.0) write(6,2002) 565 | if (LGS(L).EQ.1) write(6,2003) 566 | if (LPL(L).EQ.0) go to 5 567 | if (LPL(2).EQ.2) go to 5 568 | if (L.EQ.1) go to 58 569 | do 57 I = 1,N 570 | 57 AA(1,I) = AA(2,I) 571 | do 50 I = 1,11 572 | 50 ID(1,I) = ID(2,I) 573 | 58 continue 574 | go to 5 575 | 5 continue 576 | 2000 format(11A6,5HLAYER I5) 577 | 2001 format(8F9.6,I7) 578 | 2002 format(41H1 TIME HISTORY OF STRAIN IN PERCENT ) 579 | 2003 format(41H1 TIME HISTORY OF STRESS IN KSF ) 580 | return 581 | end 582 | -------------------------------------------------------------------------------- /test-data/DIAM.ACC: -------------------------------------------------------------------------------- 1 | "Loma P. Eqk","Diamond Hts","H1_90","init. vel:"," .307 c/s","disp: -0.016 cm" 2 | "Total No. of Points :",2000,"@ DT =",.02 3 | "Peak Acceleration (g) =",.1128945,"@ Time (sec) :",10.92 4 | -0.001694 -0.001668 -0.000086 -0.001356 -0.000678 0.000700 -0.001209 -0.000604 5 | 0.000730 0.000737 0.002496 0.004583 0.001644 0.001377 0.002408 -0.000352 6 | -0.001073 -0.000359 -0.000486 0.000344 0.000767 -0.002507 -0.003164 -0.002890 7 | -0.004086 0.000143 0.004340 0.003943 0.002350 -0.001087 -0.002345 0.001716 8 | -0.001943 -0.007436 -0.004493 0.000827 0.002915 0.003241 0.003055 0.002658 9 | 0.000427 -0.004136 -0.003028 -0.000838 -0.002276 -0.001812 0.001115 0.003311 10 | 0.001864 -0.000239 0.000791 0.000851 -0.001547 -0.002527 0.000200 0.000655 11 | -0.000471 0.000688 0.000945 -0.000546 -0.002902 -0.003491 -0.001628 -0.001385 12 | -0.003043 -0.001848 0.000875 0.000099 -0.001642 -0.003771 -0.002435 0.001233 13 | 0.000819 -0.000807 -0.000241 -0.001293 -0.005039 -0.000678 0.007648 0.008433 14 | 0.004818 0.002257 0.000604 -0.001110 -0.008870 -0.011163 -0.004329 -0.003366 15 | -0.007247 -0.005439 -0.002484 -0.000915 0.002911 0.002304 -0.000665 -0.003886 16 | -0.001194 0.000960 0.000686 0.001837 0.003389 0.002882 0.003548 0.002697 17 | 0.001076 0.002274 0.001608 0.000630 0.001862 -0.000294 -0.002319 0.000186 18 | 0.001365 -0.000886 -0.004538 -0.003392 0.001014 0.001379 0.002100 0.007094 19 | 0.002208 -0.002484 0.001616 0.003293 0.003662 0.004620 -0.000229 -0.001311 20 | 0.002551 0.000860 -0.000537 -0.001242 -0.001721 -0.001763 -0.002372 -0.002648 21 | 0.000259 0.003633 0.004537 0.001823 -0.002995 -0.003562 -0.003144 -0.000344 22 | 0.003829 0.004396 0.001452 0.001899 0.004383 0.004011 0.000239 -0.001984 23 | -0.001388 -0.001846 -0.000132 0.005887 0.009513 0.009848 0.001360 -0.007753 24 | -0.005173 -0.000503 0.001653 0.003539 0.006998 0.006807 0.003377 -0.000251 25 | -0.000654 -0.001472 -0.000127 -0.000155 -0.002503 -0.004025 -0.000711 0.005261 26 | 0.005479 0.001935 -0.002359 -0.003332 -0.004193 -0.001785 0.001871 0.004474 27 | 0.000611 -0.005991 -0.004130 -0.000614 0.000894 0.000391 -0.003241 -0.003037 28 | 0.000056 0.003188 0.003930 0.004174 0.001093 -0.002645 -0.004384 -0.005302 29 | -0.003192 -0.000471 0.001316 0.000414 0.000659 0.000613 0.002800 0.001639 30 | -0.003481 -0.004204 -0.004006 -0.002045 -0.000963 -0.000601 0.001067 0.004456 31 | 0.003584 -0.000761 -0.002678 -0.004728 -0.003415 0.001026 0.004521 0.004340 32 | -0.000887 -0.005663 -0.001953 0.004278 0.003570 0.002758 0.005397 0.002853 33 | -0.000657 -0.001040 0.001224 0.001542 -0.001502 -0.001535 0.000096 -0.001752 34 | -0.003870 0.000750 0.001975 -0.000246 0.002258 0.001836 0.003462 0.005544 35 | -0.000380 -0.003984 -0.002286 -0.002177 -0.003739 -0.004571 -0.002984 -0.000183 36 | 0.002044 0.001495 0.000289 0.000593 0.001428 0.004345 0.002685 -0.001390 37 | -0.000359 -0.001626 -0.002922 -0.001016 0.001172 0.004464 0.005217 0.002208 38 | 0.001047 -0.000827 -0.001187 0.000507 0.000336 0.000019 -0.001311 -0.002773 39 | -0.001880 -0.000511 -0.001214 -0.001891 0.000711 0.003728 0.005710 0.004480 40 | 0.004184 0.002803 0.001455 0.001215 0.002295 0.000126 -0.006733 -0.006657 41 | -0.002528 -0.000628 -0.002312 -0.002247 -0.001140 -0.001689 -0.000899 0.000599 42 | 0.000956 0.001614 0.001397 -0.000075 -0.001246 -0.000804 -0.004439 -0.005563 43 | -0.002228 0.003055 0.003269 -0.001274 0.000109 0.003038 0.003512 0.001718 44 | 0.000778 0.000366 -0.001303 -0.003341 -0.004943 -0.005321 -0.002055 -0.002918 45 | -0.002979 0.002682 0.003089 0.001132 0.000943 -0.000824 -0.000332 0.001003 46 | -0.001313 -0.002020 0.000714 -0.000649 -0.003094 -0.003129 -0.002937 -0.000076 47 | -0.000848 -0.002021 0.000052 0.001581 -0.001095 -0.005456 -0.001731 0.000154 48 | -0.004414 -0.004524 -0.001166 -0.001168 -0.005872 -0.005656 -0.000991 0.001769 49 | 0.000918 -0.001332 0.001839 0.003290 -0.003425 -0.007953 -0.004021 0.001497 50 | 0.000948 -0.002342 -0.002784 0.000434 0.000878 -0.003241 -0.003914 -0.002610 51 | -0.001929 -0.003044 -0.004120 -0.003919 -0.005210 -0.004526 -0.007085 -0.012259 52 | -0.012238 -0.006059 0.005402 0.020569 0.036057 0.045097 0.045739 0.041771 53 | 0.037582 0.031582 0.021626 0.010788 0.003231 -0.002315 -0.007514 -0.007418 54 | -0.000370 0.009306 0.008381 -0.005028 -0.017140 -0.021963 -0.023338 -0.025274 55 | -0.030535 -0.034226 -0.028104 -0.018538 -0.012258 -0.008433 -0.000961 0.008535 56 | 0.014380 0.013543 0.010685 0.012377 0.019994 0.026016 0.027201 0.026591 57 | 0.030729 0.030882 0.018019 0.000653 -0.015281 -0.027287 -0.034784 -0.037626 58 | -0.035639 -0.028025 -0.021897 -0.015036 -0.004768 0.004273 0.003743 -0.002573 59 | -0.008947 -0.008903 -0.007140 -0.004542 0.001555 0.002371 -0.003230 -0.011758 60 | -0.018667 -0.020852 -0.015623 -0.007468 -0.000712 0.002343 0.002610 0.005275 61 | 0.007688 0.009965 0.015151 0.020120 0.020391 0.016229 0.008886 0.002766 62 | -0.002068 -0.009660 -0.012533 -0.007249 0.000199 0.001665 -0.002091 -0.008089 63 | -0.015438 -0.018187 -0.013849 -0.011179 -0.012852 -0.015029 -0.015793 -0.013632 64 | -0.008222 0.000634 0.004974 -0.002665 -0.013094 -0.014546 -0.008360 -0.000811 65 | 0.002442 -0.000411 -0.006186 -0.007842 -0.006664 -0.006177 -0.010944 -0.017605 66 | -0.019400 -0.014764 -0.006262 0.008532 0.024251 0.030849 0.030493 0.026434 67 | 0.019778 0.003124 -0.020737 -0.037570 -0.045544 -0.044007 -0.034449 -0.012687 68 | 0.011303 0.028532 0.039765 0.047580 0.052066 0.051371 0.048686 0.049351 69 | 0.051299 0.046035 0.035848 0.033027 0.043510 0.052435 0.053231 0.048926 70 | 0.046545 0.044648 0.041149 0.039934 0.040921 0.034679 0.024581 0.020096 71 | 0.026375 0.033715 0.027758 0.011097 0.000320 -0.002272 -0.015654 -0.043356 72 | -0.075087 -0.101901 -0.112895 -0.101637 -0.090408 -0.090627 -0.086970 -0.067639 73 | -0.033663 0.002873 0.034090 0.057036 0.070044 0.073345 0.072071 0.067972 74 | 0.060937 0.050785 0.034027 0.007955 -0.020762 -0.044443 -0.056809 -0.058977 75 | -0.062483 -0.063387 -0.057764 -0.044977 -0.033235 -0.026146 -0.020090 -0.020907 76 | -0.025619 -0.020799 -0.003319 0.015427 0.025139 0.023087 0.020137 0.022445 77 | 0.020068 0.005054 -0.010602 -0.018972 -0.021442 -0.026512 -0.036538 -0.039812 78 | -0.025885 -0.004091 0.006381 0.010371 0.016477 0.023500 0.028763 0.035045 79 | 0.038726 0.044266 0.054089 0.051189 0.027710 -0.002237 -0.015949 -0.015790 80 | -0.014502 -0.023596 -0.037055 -0.043152 -0.039625 -0.031340 -0.019549 -0.002964 81 | 0.012357 0.025780 0.028512 0.013793 -0.002683 0.001614 0.019892 0.020185 82 | -0.002482 -0.022297 -0.015273 0.002434 -0.002304 -0.021201 -0.036382 -0.038000 83 | -0.040046 -0.045092 -0.033966 -0.007276 0.018207 0.029987 0.034682 0.046685 84 | 0.062432 0.057071 0.029705 0.000305 -0.023179 -0.041544 -0.052515 -0.055226 85 | -0.055023 -0.042269 -0.017781 0.002049 0.006819 0.005023 0.008289 0.010394 86 | 0.006959 -0.001743 -0.005326 0.004010 0.013214 0.010433 0.003081 0.005391 87 | 0.009382 0.004284 -0.002490 -0.003106 0.002850 0.004686 -0.004901 -0.024095 88 | -0.029330 -0.006777 0.019289 0.022466 0.008804 -0.003880 -0.012497 -0.018579 89 | -0.016469 0.003606 0.025018 0.025001 0.016429 0.019685 0.032982 0.050073 90 | 0.052219 0.039314 0.023605 0.008949 -0.001224 -0.005347 -0.002875 0.001135 91 | 0.007521 0.015623 0.022235 0.021012 0.012526 -0.001133 -0.017423 -0.025249 92 | -0.020804 -0.012402 -0.008612 -0.010801 -0.012419 -0.007888 0.004411 0.012341 93 | 0.006798 -0.002584 -0.008368 -0.003269 0.004687 0.005090 -0.001596 -0.007264 94 | -0.009261 -0.010119 -0.007510 -0.003518 -0.002892 -0.010076 -0.017438 -0.017770 95 | -0.011611 -0.007822 -0.006613 -0.004079 0.000798 0.005448 0.006415 0.002915 96 | 0.001411 0.000447 -0.005314 -0.012332 -0.015254 -0.008044 0.000322 0.004349 97 | 0.003521 0.004852 0.009267 0.011354 0.007019 0.002417 -0.000055 -0.003484 98 | -0.004500 -0.007532 -0.009375 -0.006268 -0.000733 -0.002891 -0.009676 -0.011989 99 | -0.013264 -0.019567 -0.024535 -0.019170 -0.009777 -0.005377 -0.004549 0.003132 100 | 0.014041 0.018925 0.017447 0.011312 0.004206 0.002464 0.000424 -0.002655 101 | -0.001801 0.000132 -0.002883 -0.005102 -0.000092 0.008215 0.014608 0.015520 102 | 0.013558 0.009810 0.004143 -0.001799 -0.001025 0.005360 0.011481 0.017205 103 | 0.017183 0.014162 0.011525 0.008592 0.007608 0.012006 0.019673 0.019089 104 | 0.011468 0.004223 0.003158 0.006387 0.008234 0.004571 0.001338 0.001582 105 | 0.002279 0.004994 0.007745 0.011032 0.014061 0.009259 0.000568 -0.004336 106 | -0.005861 -0.005999 -0.007326 -0.007172 -0.007111 -0.002370 0.005395 0.010891 107 | 0.012175 0.012447 0.011099 0.006534 0.004386 0.002747 0.000748 -0.000664 108 | 0.003035 0.008207 0.009710 0.007302 0.004451 0.006933 0.012229 0.010202 109 | 0.002236 -0.002507 -0.003041 -0.005954 -0.009743 -0.013162 -0.011570 -0.003797 110 | 0.000366 -0.002567 -0.007371 -0.011708 -0.017609 -0.023601 -0.026627 -0.026420 111 | -0.024758 -0.016897 -0.004587 0.006468 0.010001 0.010333 0.012463 0.012902 112 | 0.008739 0.002577 -0.002515 -0.002634 -0.000284 -0.000165 0.001345 0.004921 113 | 0.011013 0.015775 0.013274 0.004142 -0.004251 -0.007608 -0.008041 -0.010242 114 | -0.012670 -0.009213 -0.005185 -0.006523 -0.008072 -0.004587 -0.001662 -0.002604 115 | -0.004957 -0.007746 -0.010384 -0.012654 -0.010651 -0.010906 -0.013015 -0.012545 116 | -0.013982 -0.014961 -0.011428 -0.005566 0.001225 0.009358 0.017775 0.021373 117 | 0.020444 0.015604 0.011574 0.010458 0.007472 0.002150 0.001593 0.002968 118 | 0.004820 0.009966 0.010723 0.006377 0.001690 -0.004192 -0.009610 -0.007129 119 | 0.001085 0.005488 0.005772 0.002767 -0.003051 -0.008450 -0.010222 -0.009992 120 | -0.009275 -0.007480 -0.009053 -0.009976 -0.009709 -0.007535 -0.008063 -0.010135 121 | -0.008984 -0.007549 -0.006933 -0.006674 -0.008924 -0.008855 -0.004997 -0.000970 122 | 0.000160 -0.003333 -0.004227 -0.002407 -0.003691 -0.006719 -0.007014 -0.004795 123 | -0.000558 0.005855 0.012256 0.012697 0.008045 0.003962 0.000853 0.000938 124 | -0.000673 -0.002046 -0.000570 0.002330 0.003272 0.005050 0.006899 0.004370 125 | 0.000552 -0.003256 -0.005588 -0.005775 -0.002846 -0.002103 -0.001021 0.000988 126 | 0.003943 0.006536 0.008919 0.010462 0.007796 0.005229 0.007128 0.010280 127 | 0.011809 0.013912 0.013314 0.008918 0.003139 0.000859 0.000712 0.001546 128 | -0.000929 -0.006313 -0.006744 -0.003406 -0.002442 -0.003884 -0.002174 0.000549 129 | 0.003355 0.002453 0.000768 0.000422 -0.001477 -0.002334 -0.001259 0.000410 130 | -0.001244 -0.003477 -0.004707 -0.004507 -0.002623 -0.002716 -0.006044 -0.009466 131 | -0.009996 -0.012927 -0.020451 -0.023110 -0.019696 -0.014184 -0.008676 -0.002550 132 | 0.003248 0.007791 0.007601 0.002746 -0.001456 -0.006902 -0.011451 -0.013375 133 | -0.013851 -0.009153 -0.002808 0.001960 0.002214 0.001531 0.004499 0.007891 134 | 0.010616 0.010536 0.010879 0.008533 0.003979 0.000857 -0.000079 0.000195 135 | -0.003641 -0.007674 -0.007285 -0.002657 0.000033 -0.000330 0.001062 0.002663 136 | 0.002462 -0.001139 -0.005834 -0.007882 -0.006556 -0.005007 -0.002494 0.000889 137 | 0.003847 0.005292 0.004831 0.005328 0.004518 0.003005 0.001519 0.000142 138 | -0.000661 -0.002117 -0.000906 0.000906 0.003831 0.003406 0.002515 0.005419 139 | 0.007703 0.004096 -0.003291 -0.005558 -0.003282 0.000258 0.003215 0.005027 140 | 0.007606 0.010190 0.009617 0.007799 0.006878 0.003579 -0.000327 -0.000876 141 | -0.000446 0.002006 0.000631 0.000006 0.002008 0.005350 0.007327 0.003681 142 | 0.000505 -0.003011 -0.001931 -0.000232 0.001550 0.001757 0.002710 0.005776 143 | 0.007139 0.006835 0.005554 0.006392 0.005116 0.004155 0.001970 -0.000481 144 | -0.000898 -0.000887 -0.002186 -0.005460 -0.005231 -0.003197 0.001057 0.004359 145 | 0.004405 0.003520 0.000505 -0.000967 -0.000984 -0.001059 -0.000982 -0.001165 146 | -0.000041 0.003617 0.006337 0.006971 0.005449 0.001901 0.000967 0.002223 147 | 0.002074 0.001688 0.000210 -0.001514 -0.002090 -0.001347 -0.000116 0.000453 148 | -0.000941 -0.002424 -0.001161 0.001343 0.001542 0.000560 0.001097 0.002693 149 | 0.003334 0.002261 0.000241 -0.001233 -0.001183 -0.001360 -0.002552 -0.004614 150 | -0.005166 -0.005226 -0.003297 -0.001842 -0.001939 -0.000702 0.001836 0.002571 151 | -0.001018 -0.004816 -0.005137 -0.003597 -0.004007 -0.003038 0.000002 0.003171 152 | 0.003453 0.000733 0.000930 0.004107 0.005068 0.002532 0.000087 0.001316 153 | 0.003043 0.001544 -0.000855 0.000846 0.003535 0.003487 0.001363 0.000160 154 | 0.000224 0.000158 0.000287 0.000150 0.000803 0.000468 0.001121 0.002604 155 | 0.002705 0.003577 0.003127 0.000789 -0.000813 -0.000509 0.000285 0.000022 156 | -0.001420 -0.002297 -0.002320 -0.002475 -0.002206 -0.002469 -0.001068 0.002463 157 | 0.004038 0.002979 0.003303 0.005281 0.006538 0.006393 0.002318 -0.002169 158 | -0.004365 -0.004935 -0.004372 -0.001893 -0.000019 0.000936 0.003235 0.004056 159 | 0.002769 0.000978 -0.000355 -0.001701 -0.000231 0.000676 -0.000630 -0.003094 160 | -0.005463 -0.005107 -0.004897 -0.004990 -0.006322 -0.007632 -0.007521 -0.006856 161 | -0.004762 -0.002740 -0.000671 -0.001034 -0.002622 -0.002701 -0.002416 -0.001847 162 | -0.000233 0.002083 0.003484 0.003127 0.002846 0.002692 0.003993 0.005515 163 | 0.005199 0.003889 0.002936 0.001721 0.001481 0.002498 0.001250 -0.000918 164 | -0.003122 -0.002895 -0.003638 -0.005215 -0.005005 -0.003509 -0.002260 -0.002299 165 | -0.002864 -0.001622 0.001754 0.002319 0.000435 -0.002091 -0.002135 0.000847 166 | 0.002439 0.003889 0.005037 0.005660 0.004354 0.002605 0.002653 0.002612 167 | 0.001902 -0.000329 -0.000853 -0.000232 0.001863 0.003150 0.004018 0.005211 168 | 0.004868 0.002398 0.000278 0.000008 0.000770 0.002657 0.001672 0.000521 169 | -0.000631 -0.001494 -0.001017 0.001360 0.003610 0.003069 0.001949 -0.001148 170 | -0.002363 -0.000376 0.000088 -0.001033 -0.002515 -0.002258 -0.000162 0.000085 171 | 0.001006 0.001811 0.000662 0.000532 -0.000825 -0.002689 -0.002893 -0.001037 172 | 0.000096 -0.000683 -0.003123 -0.005028 -0.004785 -0.004092 -0.004858 -0.005169 173 | -0.004602 -0.004149 -0.002757 -0.002597 -0.001822 -0.001901 -0.002060 -0.000704 174 | -0.000262 -0.000513 -0.001791 -0.002786 -0.003422 -0.004716 -0.005882 -0.004602 175 | -0.003657 -0.003442 -0.003725 -0.004135 -0.002390 -0.000385 0.000224 -0.000936 176 | -0.002434 -0.003645 -0.002181 -0.001171 -0.000119 0.000093 -0.000418 -0.000869 177 | -0.001155 -0.000932 -0.000753 -0.001933 -0.003268 -0.003378 -0.002737 -0.001023 178 | -0.000504 -0.000190 0.000285 -0.000526 -0.000592 0.001454 0.003361 0.004520 179 | 0.002842 0.001463 0.000441 -0.000634 -0.000352 -0.000401 -0.000715 -0.000688 180 | -0.000959 -0.000881 -0.000932 -0.000903 -0.000936 -0.000896 -0.001997 -0.003600 181 | -0.002646 -0.002769 -0.003731 -0.002599 -0.000320 0.001214 0.002031 0.002099 182 | 0.001156 0.001086 0.000903 0.000911 0.000761 0.001175 0.000313 0.000228 183 | 0.000588 0.001344 0.001794 0.000479 0.000464 0.000346 0.000359 0.000450 184 | 0.001031 0.001175 0.000775 0.001148 0.002859 0.002335 0.000378 -0.001681 185 | -0.002395 -0.001158 -0.001388 -0.001223 -0.000452 -0.000065 0.000199 -0.001309 186 | -0.001154 -0.000008 0.001175 0.002967 0.002440 0.000881 -0.001326 -0.002500 187 | -0.002463 -0.002482 -0.002563 -0.000927 0.000119 0.000036 0.000056 0.001530 188 | 0.003063 0.003489 0.004106 0.003860 0.003094 0.002686 0.002705 0.003050 189 | 0.004838 0.004245 0.003620 0.003095 0.002851 0.002379 0.000541 -0.000309 190 | -0.001389 -0.000804 -0.000042 0.001656 0.002676 0.002900 0.003032 0.002775 191 | 0.002661 0.004166 0.003753 0.002670 0.001284 -0.000328 -0.001157 -0.000957 192 | -0.000077 -0.000290 -0.000076 -0.000294 -0.000074 -0.000389 0.000914 0.001613 193 | 0.001323 0.001122 0.001072 0.000576 -0.001085 -0.000853 -0.000516 -0.001164 194 | -0.002132 -0.002182 -0.001795 -0.001132 -0.000160 -0.000463 -0.000137 -0.000543 195 | 0.000254 0.002180 0.002390 0.002310 0.002434 0.002251 0.002473 0.002155 196 | 0.002834 0.004033 0.002976 0.000926 -0.000369 -0.000283 -0.000411 -0.000516 197 | -0.001357 -0.001256 -0.000507 0.001367 0.002411 0.002144 0.002338 0.002257 198 | 0.000354 -0.000575 -0.001298 -0.003249 -0.002416 -0.000701 -0.000430 -0.000477 199 | 0.000165 0.000576 0.000609 0.001917 0.002240 0.002131 0.002320 0.000843 200 | -0.000663 -0.000251 -0.001954 -0.003051 -0.003208 -0.002577 -0.000768 -0.000489 201 | -0.000667 -0.000068 0.001370 0.001837 0.001055 -0.000120 -0.000969 -0.001761 202 | -0.000603 -0.000703 0.000118 0.002001 0.001934 0.000505 -0.000802 -0.002683 203 | -0.003343 -0.003029 -0.003463 -0.002281 -0.000589 0.001382 0.002247 0.001945 204 | 0.002293 0.001506 -0.000168 -0.001252 -0.002013 -0.003109 -0.002582 -0.000623 205 | -0.000650 -0.000055 0.000440 -0.000333 -0.000482 0.000818 0.000790 -0.000270 206 | -0.000239 -0.000489 0.000003 0.000003 0.000060 -0.000209 -0.001608 -0.002143 207 | -0.002189 -0.001720 -0.000745 -0.000880 -0.001643 -0.001857 -0.000466 0.000702 208 | 0.000719 -0.000023 -0.000569 -0.000498 -0.000947 -0.000128 0.000849 0.000805 209 | 0.000946 0.000902 0.001067 0.000940 0.001788 0.003401 0.003663 0.003543 210 | 0.001911 0.000950 0.001023 0.000893 0.000965 0.000915 0.000224 -0.001386 211 | -0.000622 0.001095 0.001003 0.001274 0.000993 -0.000119 0.000388 0.001260 212 | 0.001228 0.001369 0.000179 -0.001268 -0.000208 0.001147 0.001263 0.001179 213 | 0.001251 0.001064 0.001388 -0.000088 -0.001514 -0.001304 -0.001430 -0.001272 214 | -0.001367 -0.001290 -0.001334 -0.001261 -0.001253 -0.001212 -0.001228 -0.001209 215 | -0.001092 -0.001197 -0.000664 0.000127 0.000210 -0.000647 -0.000783 -0.000677 216 | -0.000720 -0.000551 -0.000703 -0.000463 -0.000666 0.000029 0.001808 0.002115 217 | 0.001986 0.002280 0.000594 -0.000434 -0.000434 -0.000720 -0.000534 -0.000477 218 | 0.001025 0.002067 0.002035 0.002116 0.002039 0.002125 0.002009 0.002211 219 | 0.001310 -0.000283 -0.000457 -0.000588 -0.000419 -0.000925 -0.002099 -0.002651 220 | -0.002383 -0.001868 -0.000917 -0.000500 -0.000540 -0.000529 -0.000513 -0.000556 221 | -0.000487 -0.000593 -0.000417 -0.001024 -0.001528 -0.000692 -0.000601 -0.000591 222 | -0.000819 -0.000472 -0.002170 -0.003171 -0.003177 -0.003290 -0.003196 -0.003278 223 | -0.003213 -0.003268 -0.003228 -0.003259 -0.003241 -0.003254 -0.003249 -0.003254 224 | -0.003250 -0.003259 -0.003247 -0.003274 -0.003237 -0.003271 -0.001194 -0.000635 225 | -0.000532 -0.000645 -0.000425 -0.001482 -0.002789 -0.002732 -0.002859 -0.002904 226 | -0.002739 -0.000687 -0.000645 -0.000568 -0.000601 -0.000591 -0.000597 -0.000596 227 | -0.000608 -0.000657 -0.000744 -0.000653 -0.000798 -0.000576 -0.000981 0.000703 228 | 0.002062 0.001905 0.002001 0.000993 0.001935 0.001933 0.001971 0.001961 229 | 0.001946 0.001975 0.001929 0.001976 0.001917 0.001972 0.001915 0.001919 230 | 0.001799 0.001851 0.001726 0.001692 0.002151 0.003966 0.004042 0.001912 231 | 0.001629 0.001598 0.001621 0.001568 0.001656 0.001506 0.001751 0.001392 232 | 0.003008 0.003167 0.001796 0.001921 0.002817 0.004385 0.004108 0.004387 233 | 0.004113 0.002175 0.001587 0.001706 0.001611 0.001763 0.001739 0.001855 234 | 0.001820 0.001838 0.001826 0.001819 0.001829 0.001801 0.001830 0.001787 235 | 0.001828 0.001776 0.001826 0.001775 0.001805 0.001779 0.000237 -0.001051 236 | 0.000261 0.001455 -0.000357 -0.000993 -0.000009 0.000034 -0.000842 -0.000801 237 | -0.000885 -0.000806 -0.001026 -0.000795 -0.001049 -0.000340 -0.000016 -0.000647 238 | -0.000515 0.000588 -0.000315 -0.000794 -0.001081 -0.000293 0.001415 0.001959 239 | 0.000800 -0.000751 0.000743 0.000708 0.000867 -0.000101 -0.000805 -0.001058 240 | -0.001011 -0.001037 -0.001032 -0.000992 0.001206 0.001623 0.001755 0.000918 241 | -0.000949 -0.000830 -0.001072 -0.000940 -0.001282 -0.001246 -0.001042 -0.001094 242 | -0.001038 -0.000970 -0.001008 -0.000938 -0.003098 -0.003534 -0.002959 -0.003627 243 | -0.003364 -0.003702 -0.003599 -0.001996 -0.000984 -0.001073 -0.000964 -0.001066 244 | -0.000970 -0.001075 -0.000956 -0.001120 -0.000936 -0.002039 -0.003682 -0.003678 245 | -0.003768 -0.003724 -0.003743 -0.003746 -0.003733 -0.003764 -0.003726 -0.003778 246 | -0.003723 -0.003789 -0.003721 -0.003803 -0.003708 -0.003848 -0.003422 -0.001397 247 | -0.001227 -0.001113 -0.001250 -0.001075 -0.001320 -0.000957 -0.001127 -0.000207 248 | 0.000888 0.000410 0.001497 0.001450 0.001539 0.003207 0.004192 0.004000 249 | 0.004209 0.003945 0.004607 0.004357 0.004119 0.003705 0.002579 0.001774 250 | 0.001345 0.002029 0.003633 0.004110 0.004086 0.004056 0.004223 0.002753 251 | 0.001352 0.001639 0.001365 0.001602 0.001387 0.001505 0.000402 -0.001137 252 | -0.001180 -0.001222 -0.001202 -0.001212 -0.001217 -0.001072 0.000252 -0.000560 253 | -0.000910 0.000950 0.001431 0.001505 0.001475 0.001494 0.001485 0.001486 254 | 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 255 | -------------------------------------------------------------------------------- /C1.f: -------------------------------------------------------------------------------- 1 | C $NODEBUG 2 | C ...................................................................... 3 | SUBROUTINE SHAKIT(X,AX,AA,S,INV) 4 | C ...................................................................... 5 | INTEGER TP 6 | CHARACTER*6 TITLE,ID,IDNT,IDAMP,IBLANK 7 | CHARACTER*60 ABSIS, ABSPR,ABSCL 8 | CHARACTER*80 OPHEAD 9 | CHARACTER*30 FINPEQ 10 | COMPLEX X, AX 11 | COMPLEX G, V, PLUS, MINUS 12 | C 13 | DIMENSION LL(3), LT(3),LNSW(3) 14 | DIMENSION LLL(2), LLGS(2),LLPCH(2),LLPL(2),LNV(2),SK(2) 15 | DIMENSION X(300),AX(3,270),AA(2,550),S(70),INV(70) 16 | DIMENSION LL5(15), LT5(15), LP5(15),LP(3) 17 | DIMENSION IDAMP(27,11),MMM(3) 18 | C 19 | COMMON /EQ/ MFOLD,MA2,TITLE(5),DT, MA , MMA, DF,MX 20 | COMMON /SOILA/ IDNT(6),BL(51),GL(51),FACT(51),H(51),R(51),BF(51) 21 | COMMON /SOILB/ FAC(51), WL(51), TP(51), DEPTH(51), WEIGHT(51) 22 | COMMON /SOILC/ MSOIL,MWL 23 | COMMON /CSOIL/ G(51), V(51), PLUS(51), MINUS(51) 24 | COMMON /CCG/ ID(27,11) 25 | COMMON /JISCK/ JIS,FINPEQ 26 | COMMON/FRCUT/ NCUT,NZERO 27 | COMMON /TIME/ T(9) 28 | C originallly coded by Per Schnabel in 1970-71 29 | C modified by Sun, Dirrim & Idriss in 1990-91 to 30 | C increase number of layers to 50; 31 | C renumber the Options & other cleanup 32 | C 33 | IBLANK = ' ' 34 | ABSIS = ' TIME IN SECONDS ' 35 | ABSCL = ' CYCLES/SEC' 36 | ABSPR = ' PERIOD IN SEC. ' 37 | c 38 | C * * * * * * * * * 39 | C 40 | DO 102 I = 1,3 41 | LL(I) = 0 42 | 102 LT(I) = 0 43 | DO 103 L = 1,9 44 | DO 103 I = 1,11 45 | ID(L,I) = IBLANK 46 | 103 IDAMP(L,I) = IBLANK 47 | NF = 0 48 | NR=0 49 | NP=0 50 | NA = 1 51 | C 52 | C * * * * * * * * * 53 | KK = -1 54 | C ................................... 55 | 101 READ (5,1700) OPHEAD 56 | 1700 FORMAT(A80) 57 | C 58 | IF(KK.GE.1.AND.KK.LE.11) WRITE(*,24) KK 59 | READ(5,1000,END=999) KK 60 | IF (KK .EQ. 0) STOP 61 | WRITE(*,23) KK 62 | C ******************** Options **************** 63 | IF (KK .EQ. 1) GO TO 8 64 | IF (KK .EQ. 2) GO TO 2 65 | IF (KK .EQ. 3) GO TO 1 66 | IF (KK .EQ. 4) GO TO 3 67 | IF (KK .EQ. 5) GO TO 4 68 | IF (KK .EQ. 6) GO TO 5 69 | IF (KK .EQ. 7) GO TO 16 70 | IF (KK .EQ. 8) GO TO 6 71 | IF (KK .EQ. 9) GO TO 9 72 | IF (KK .EQ. 10) GO TO 15 73 | IF (KK .EQ. 11) GO TO 13 74 | C * * * * * * * * * 75 | 1 WRITE(6,1002) KK 76 | CALL EARTHQ(X,AX, S, INV) 77 | NSN = 0 78 | GO TO 101 79 | C * * * * * * * * * 80 | 2 WRITE(6,2002) KK 81 | CALL SOILIN(N1) 82 | NSN = 1 83 | C 84 | C FIND FUNDAMENTAL PERIOD OF DEPOSIT FROM AVERAGE SHEAR WAVE VELOCITY 85 | C AND FROM THE PERIOD WHICH GIVE MAXIMUM AMPLIFICATION 86 | SH = 0. 87 | N = N1 + 1 88 | SHV = 0. 89 | DO 21 I = 1,N1 90 | SH = SH + H(I) 91 | 21 SHV = SHV + H(I)*SQRT(GL(I)/R(I)) 92 | VSAV = SHV/SH 93 | TT = 4.*SH/VSAV 94 | WRITE(6,4006) TT, VSAV 95 | DFA = .01/TT 96 | CALL AMP(N1,N ,1,1,0,0,IDAMP, 9, DFA) 97 | GO TO 101 98 | C * * * * * * * * * 99 | 3 WRITE(6,3002) KK 100 | READ(5,1000) IN, INT 101 | IF (INT .EQ. 0) WRITE(6,3001) IN 102 | IF (INT .NE. 0) WRITE(6,3000) IN 103 | GO TO 101 104 | C * * * * * * * * * 105 | 4 WRITE(6,4007) KK 106 | READ(5,4000) KS,ITMAX,PRMUL 107 | WRITE(6,4001) ITMAX,PRMUL 108 | LL(1) = 1 109 | LT(1) = 0 110 | JIS = 0 111 | WRITE(*,2029) 112 | 2029 FORMAT(/) 113 | DO 41 L = 1,ITMAX 114 | WRITE(*,2028) L 115 | 2028 FORMAT(1H+,12X,19H ITERATION NUMBER , I2) 116 | IF (IN.EQ.1) GO TO 412 117 | CALL MOTION(N1,IN, INT, LL, LT, X,AX) 118 | IF (L .EQ. ITMAX) JIS = 1 119 | 412 CALL STRT( L, N1, DGMAX,PRMUL,X,AX,AA,S,INV) 120 | C IF (DGMAX.LT.ERR) GO TO 411 121 | 41 CONTINUE 122 | C 123 | C FIND FUNDAMENTAL PERIOD OF DEPOSIT FROM AVERAGE SHEAR WAVE VELOCITY 124 | C AND FROM THE PERIOD WHICH GIVE MAXIMUM AMPLIFICATION 125 | 411 SH = 0. 126 | N = N1 + 1 127 | SHV = 0. 128 | DO 43 I = 1,N1 129 | SH = SH + H(I) 130 | 43 SHV = SHV + H(I)*SQRT(GL(I)/R(I)) 131 | VSAV = SHV/SH 132 | TT = 4.*SH/VSAV 133 | WRITE(6,4006) TT, VSAV 134 | DFA = .01/TT 135 | CALL AMP(N1,N ,1,1,0,0,IDAMP, 9, DFA) 136 | C 137 | IF (KS .EQ. 0) GO TO 101 138 | C SAVE NEW SET OF SOIL DATA BASED ON NEW PROPERTIES 139 | WRITE(7,4003) MSOIL,N,MWL,(IDNT(I),I=1,6),(TITLE(I),I=1,4) 140 | DO 42 I = 1,N1 141 | 42 WRITE(7,4004) I,TP(I), H(I), GL(I), BL(I), WL(I), FAC(I) ,BF(I) 142 | WRITE(7,4005) N,GL(N),BL(N),WL(N) 143 | GO TO 101 144 | C * * * * * * * * * 145 | 5 WRITE(6,5001) KK 146 | READ(5,1000) (LL5(L),L=1,15) 147 | READ(5,1000) (LT5(L),L=1,15) 148 | READ(5,1000) (LP5(L),L=1,15) 149 | WRITE(6,5002) FINPEQ,(IDNT(I),I=1,6) 150 | I = 0 151 | DO 51 LOOP = 1,5 152 | DO 511 L = 1,3 153 | I = I + 1 154 | LL(L) = LL5(I) 155 | LT(L) = LT5(I) 156 | LP(L) = LP5(I) 157 | C 158 | IF (LL(1).EQ.0) GO TO 101 159 | 511 CONTINUE 160 | C 161 | CALL MOTION(N1,IN, INT, LL, LT, X,AX) 162 | DO 51 L = 1,3 163 | N = LL(L) 164 | K = L 165 | IF (N.EQ.0) GO TO 101 166 | IF (N.LE.N1) DPTH = DEPTH(N) - H(N)/2. 167 | IF (N.GT.N1) DPTH = DEPTH(N-1) + H(N-1)/2. 168 | CALL UTPR(KK,DPTH,K,LP(L),LL(L),LT(L),X,AX,S,INV) 169 | 51 CONTINUE 170 | GO TO 101 171 | C * * * * * * * * * 172 | 6 WRITE(6,6002) KK 173 | READ(5,1000) K2 174 | LS = 0 175 | LN = IN 176 | IF (K2.EQ.0) WRITE(6,6000) LN 177 | IF (K2.EQ.1) WRITE(6,6001) LN 178 | 62 CALL UTPR(KK,DPTH,LS,K2,LN,INT ,X,AX,S,INV) 179 | GO TO 101 180 | C * * * * * * * * * 181 | 7 WRITE(6,7002) KK 182 | READ(5,7001) LL1,LT1,XF,DTNEW 183 | IF (DTNEW.LT..001) DTNEW=DT 184 | IF (LL1 .EQ.0) GO TO 71 185 | C CHECK IF MOTION IN SUBLAYER LL1 IS IN AX() 186 | DO 72 I = 1,3 187 | IF (LL1.NE.LL(I) .OR. LT1.NE.LT(I)) GO TO 72 188 | L = I 189 | GO TO 720 190 | 72 CONTINUE 191 | LL(1) = LL1 192 | LT(1) = LT1 193 | L = 1 194 | CALL MOTION(N1,IN, INT, LL, LT, X,AX) 195 | 720 DO 75 I = 1,MFOLD 196 | 75 X(I) = AX(L,I)*XF 197 | NEW = LL(L) 198 | INT = LT(L) 199 | GO TO 73 200 | 71 DO 74 I = 1,MFOLD 201 | 74 X(I) = X(I)*XF 202 | NEW = IN 203 | 73 IN = NEW 204 | WRITE(6,7000) NEW , XF,DT, DTNEW 205 | IF(IN.NE.1) GO TO 76 206 | DO 77 II=1,MFOLD 207 | AX(1,II)=X(II) 208 | 77 CONTINUE 209 | 76 CONTINUE 210 | DT = DTNEW 211 | DF = 1./(MA*DT) 212 | GO TO 101 213 | C * * * * * * * * * 214 | 8 WRITE(6,8001) KK 215 | CALL CG 216 | GO TO 101 217 | C * * * * * * * * * 218 | 9 WRITE(6,9002) KK 219 | READ(5,1000) LL1, LT1 220 | IF (LL1.NE.0) GO TO 171 221 | WRITE(6,9001) 222 | LS = 0 223 | LN = IN 224 | GO TO 173 225 | 171 DO 170 I = 1,3 226 | IF (LL1.NE.LL(I) .OR. LT1.NE.LT(I)) GO TO 170 227 | LS = I 228 | GO TO 172 229 | 170 CONTINUE 230 | LS = 1 231 | LL(1) = LL1 232 | LT(1) = LT1 233 | CALL MOTION(N1,IN, INT, LL, LT, X,AX) 234 | 172 LN = LL(LS) 235 | C WRITE(6,9000) LN 236 | 173 CALL RESP(LN,LS,NR,X,AX,AA,S,INV) 237 | GO TO 101 238 | C * * * * * * * * * 239 | 10 WRITE(6,1010) KK 240 | READ(5,1000) IFR 241 | CALL REDUCE(IFR,X,AX,LL) 242 | MMM(1)=MX 243 | MMM(2)=0 244 | MMM(3)=0 245 | CALL FFT(X,MMM,INV,S,0,IFERR) 246 | GO TO 101 247 | C * * * * * * * * * 248 | 11 WRITE(6,1101) KK 249 | READ(5,1000) IFR 250 | CALL INCR(IFR,X,AX) 251 | MMM(1)=MX 252 | MMM(2)=0 253 | MMM(3)=0 254 | CALL FFT(X,MMM,INV,S,0,IFERR) 255 | GO TO 101 256 | C * * * * * * * * * 257 | 12 WRITE(6,1203) KK 258 | READ(5,1000) K1, NSW, N 259 | IF (INT.EQ. 0) WRITE(6,1201) IN 260 | IF (INT.EQ. 1) WRITE(6,1202) IN 261 | NF = NF + 1 262 | IF (N.LE.0) N= MFOLD - 1 263 | IF (N.GT.2049) N=2049 264 | DO 120 I = 1,N 265 | 120 AA(NF,I) = CABS(X(I)) 266 | DO 121 I = 1,5 267 | 121 ID(NF,I) = TITLE(I) 268 | DO 126 I = 6,11 269 | 126 ID(NF,I) = IBLANK 270 | IF (NSW.EQ.0) GO TO 123 271 | M = N-1 272 | DO 124 LOOP = 1,NSW 273 | AA(NF,1) = (3.*AA(NF,1) + AA(NF,2))/4. 274 | AA(NF,N) = (3.*AA(NF,N) + AA(NF,N-1))/4. 275 | DO 124 I = 2,M 276 | 124 AA(NF,I) = (AA(NF,I-1) + 2.*AA(NF,I) + AA(NF,I+1))/4. 277 | 123 IF (K1.NE.1) GO TO 101 278 | DO 122 I = 1,N 279 | T(I ) = FLOAT(I-1)*DF 280 | 122 CONTINUE 281 | WRITE(6,1200) 282 | NF = 0 283 | GO TO 101 284 | C * * * * * * * * * 285 | 13 WRITE(6,1301) KK 286 | DO 180 I = 1,2 287 | 180 READ(5,1000) LL(I), LT(I), LP(I), LNSW(I), LLL(I) 288 | CALL MOTION(N1, IN, INT, LL, LT, X, AX) 289 | NF = 0 290 | DO 184 L = 1,2 291 | IF (LL(L).EQ.0) GO TO 101 292 | IF (LT(L).EQ.0) WRITE(6,1201) LL(L) 293 | IF (LT(L).EQ.1) WRITE(6,1202) LL(L) 294 | N = LLL(L) 295 | IF (N.LE.0) N = MFOLD - 1 296 | IF (N.GT.2049) N = 2049 297 | NF = NF + 1 298 | IF (NF.LE.2) GO TO 182 299 | WRITE(6,1800) 300 | 1800 FORMAT(// 24H TOO MANY ARRAYS STORED /) 301 | GO TO 101 302 | 182 DO 188 I = 1,5 303 | 188 ID(NF,I) = TITLE(I) 304 | DO 187 I = 6,11 305 | 187 ID(NF,I) = IDNT(I-5) 306 | DO 185 I = 1,N 307 | 185 AA(NF,I) = CABS(AX(L,I)) 308 | NSW = LNSW(L) 309 | IF (NSW.EQ.0) GO TO 181 310 | M = N-1 311 | DO 186 LOOP = 1,NSW 312 | AA(NF,1) = (3.*AA(NF,1) + AA(NF,2))/4. 313 | AA(NF,N) = (3.*AA(NF,N) + AA(NF,N-1))/4. 314 | DO 186 I = 2,M 315 | 186 AA(NF,I) = (AA(NF,I-1) + 2.*AA(NF,I) + AA(NF,I+1))/4. 316 | IF (LP(L).EQ.0) GO TO 184 317 | 181 DO 183 I = 1,N 318 | 183 T(I) = DF*FLOAT(I-1) 319 | C WRITE(6,1200) 320 | 184 CONTINUE 321 | WRITE(6,1204) 322 | 1204 FORMAT(1X,' FREQ FOURIER AMPLITUDES') 323 | 1205 FORMAT(1X,F10.4,2F15.6) 324 | DO 133 I=1,N 325 | 133 WRITE(6,1205) T(I),(AA(NF,I), NF=1, 2) 326 | GO TO 101 327 | C * * * * * * * * * 328 | 14 WRITE(6,1404) KK 329 | READ(5,1000) NSKIP, NN, NSW 330 | NP = NP + 1 331 | CALL RFSN(X,MX,INV,S,IFERR,-2) 332 | IF (NN.LE.0) NN = MMA/NSKIP 333 | IF (NN.GT.2049) NN = 2049 334 | NN = NN*NSKIP 335 | N = 0 336 | DO 136 I=1, NN, NSKIP 337 | N = N + 1 338 | T(N) = FLOAT(I-1)*DT 339 | 136 CONTINUE 340 | N = 0 341 | M = NN/2 342 | DO 130 I = 1,M 343 | N = N + 1 344 | AA(NP,N) = REAL(X(I)) 345 | N = N + 1 346 | AA(NP,N) = AIMAG(X(I)) 347 | 130 CONTINUE 348 | IF (NSKIP.EQ.1) GO TO 135 349 | N = 0 350 | DO 134 I = 1,NN ,NSKIP 351 | N = N + 1 352 | AA(NP,N) = AA(NP,I) 353 | 134 CONTINUE 354 | 135 CALL RFFT(X,MX,INV,S,IFERR,2) 355 | DO 131 I = 1,5 356 | 131 ID(NP,I) = TITLE(I) 357 | DO 132 I = 6,11 358 | ID(NP,I) = IDNT(I-5) 359 | IF (NSN.EQ.0) ID(NP,I) = IBLANK 360 | 132 CONTINUE 361 | IF (NSW.EQ.1) GO TO 101 362 | NP = 0 363 | GO TO 101 364 | C * * * * * * * * * 365 | 15 WRITE(6,1502) KK 366 | READ(5,1400) LIN, LINT ,LOUT,LOTP,DFA,(IDAMP(NA,I),I=1,6) 367 | KP = 2 368 | WRITE(6,1401) LIN,LOUT 369 | IF (LOTP.EQ.0) WRITE(6,1403) 370 | IF (LINT.EQ.0) WRITE(6,1402) 371 | CALL AMP(N1, LIN, LINT, LOUT, LOTP, KP, IDAMP,NA, DFA) 372 | GO TO 101 373 | C * * * * * * * * * 374 | 16 WRITE(6,1601) KK 375 | DO 151 L = 1,2 376 | READ(5,1500) LLL(L),LLGS(L),LLPCH(L),LLPL(L),LNV(L),SK(L), 377 | 1(ID(L,I),I=7,11) 378 | IF (LLL(L).GT.0) WRITE(6,1501) LLL(L),SK(L),(ID(L,I),I=7,11) 379 | 151 CONTINUE 380 | DO 152 L = 1,3 381 | 152 LT(L) = 0 382 | LL(3) = 0 383 | LL(2) = 0 384 | LL(1) = 1 385 | CALL MOTION(N1, IN, INT, LL, LT, X, AX) 386 | CALL STRAIN(LLL,LLGS,LLPCH,LLPL,LNV,X,AX,AA,N1,S,INV) 387 | DO 153 I = 1,3 388 | 153 LL(I) = 0 389 | GO TO 101 390 | C * * * * * * * * * 391 | C 392 | 23 FORMAT(5X,'Option NO.',I5,' is started.') 393 | 24 FORMAT(5X,'Option NO.',I5,' has been concluded.') 394 | 1000 FORMAT(15I5) 395 | 1002 FORMAT(/16H1****** OPTION I3, 396 | 1 58H *** READ INPUT MOTION ) 397 | 2002 FORMAT(/16H1****** OPTION I3, 398 | 1 58H *** READ SOIL PROFILE ) 399 | 3000 FORMAT(/32H OBJECT MOTION IN LAYER NUMBER I3/) 400 | 3001 FORMAT(33H OBJECT MOTION IN LAYER NUMBER I3,12H OUTCROPPING ) 401 | 3002 FORMAT(16H1****** OPTION I3, 402 | 1 58H *** READ WHERE OBJECT MOTION IS GIVEN ) 403 | 4000 FORMAT( 2I5, 7F10.0) 404 | 4001 FORMAT( 405 | 148H MAXIMUM NUMBER OF ITERATIONS = ,I5/ 406 | 148H FACTOR FOR UNIFORM STRAIN IN TIME DOMAIN = ,F6.2/) 407 | 4003 FORMAT(3I5,6A6, 4A6) 408 | 4004 FORMAT(2I5,4X,1H1,F10.2,F10.0,2F10.3,10X,F10.3, F5.2) 409 | 4005 FORMAT(I5,9X,1H110X,F10.0,2F10.3) 410 | 4006 FORMAT(/10H PERIOD = F5.2,' FROM AVERAGE SHEAR VELOCITY =',F8.0/) 411 | 4007 FORMAT(/16H1****** OPTION I3, 412 | 1 58H *** OBTAIN STRAIN COMPATIBLE SOIL PROPERTIES ) 413 | 5001 FORMAT(/16H1****** OPTION I3, 414 | 1 58H *** COMPUTE MOTION IN NEW SUBLAYERS ) 415 | 5002 FORMAT(/15H EARTHQUAKE - A30/ 17H SOIL DEPOSIT - 6A6/ 416 | 1 5X,6HLAYER , 417 | 2 10X,5HDEPTH ,8X,9HMAX. ACC. 10X, 4HTIME ,6X, 12HMEAN SQ. FR. , 418 | 3 9X, 10HACC. RATIO , 6X, 14H TH SAVED , 419 | 4/22X, 2HFT ,12X, 1HG ,16X, 4HSEC ,9X, 5HC/SEC ,13X,10HQUIET ZONE 420 | 5 7X, 11HACC. RECORD ) 421 | 6000 FORMAT(/37H PRINT ACCELERATION IN LAYER ,I3) 422 | 6001 FORMAT(/46H PRINT AND PUNCH ACCELERATION IN LAYER ,I3) 423 | 6002 FORMAT(16H1****** OPTION I3, 424 | 1 58H *** PRINT OR PUNCH OBJECT MOTION ) 425 | 7000 FORMAT(/21H SET MOTION IN LAYER ,I3,17H AS OBJECT MOTION / 426 | 141H MULTIPLICATION FACTOR FOR NEW MOTION = ,F6.3/ 427 | 227H TIMESTEP DT CHANGED FROM , F6.3, 3H TO, F6.3, 5H SEC./) 428 | 7001 FORMAT(2I5, 5F10.0) 429 | 7002 FORMAT(16H1****** OPTION I3, 430 | 1 58H *** CHANGE OBJECT MOTION ) 431 | 8001 FORMAT(/16H1****** OPTION I3, 432 | 1 58H *** READ RELATION BETWEEN SOIL PROPERTIES AND STRAIN ) 433 | 9000 FORMAT( 36H COMPUTE RESPONSE SPECTRUM IN LAYER I3) 434 | 9001 FORMAT(43H COMPUTE RESPONSE SPECTRUM OF OBJECT MOTION ) 435 | 9002 FORMAT(/16H1****** OPTION I3, 436 | 1 58H *** COMPUTE RESPONSE SPECTRUM ) 437 | 1010 FORMAT(16H1****** OPTION I3, 438 | 1 58H *** INCREASE TIMESTEP //) 439 | 1101 FORMAT(16H1****** OPTION I3, 440 | 1 58H *** DECREASE TIMESTEP //) 441 | 1200 FORMAT(26H1 FOURIER SPECTRA ') 442 | 1201 FORMAT(15H LAYER NUMBER I4, 12H OUTCROPPING /) 443 | 1202 FORMAT(14H LAYER NUMBER I4) 444 | 1203 FORMAT(16H1****** OPTION I3, 445 | 1 58H *** PLOT OF FOURIER SPECTRUM OF OBJECT MOTION ) 446 | 1301 FORMAT(16H1****** OPTION I3, 447 | 1 58H *** FOURIER SPECTRUM OF COMPUTED MOTION ) 448 | 1400 FORMAT(4I5, F10.0, 6A6) 449 | 1401 FORMAT(/41H AMPLIFICATION SPECTRUM BETWEEN LAYER I4, 4H AND I4) 450 | 1402 FORMAT(26H INPUT LAYER OUTCROPPING ) 451 | 1403 FORMAT(26H OUTPUT LAYER OUTCROPPING ) 452 | 1404 FORMAT(16H1****** OPTION I3, 453 | 1 58H *** PLOT TIME HISTORY OF OBJECT MOTION ) 454 | 1500 FORMAT(5I5,F10.0, 5A6) 455 | 1501 FORMAT(/ 49H COMPUTE STRESS OR STRAIN HISTORY AT THE TOP OF 456 | 1 6H LAYER ,I5 /21H SCALE FOR PLOTTING ,F10.4/15H IDENTIFICATION 457 | 2 3H - ,5A6,6X) 458 | 1502 FORMAT(/16H1****** OPTION I3, 459 | 1 58H *** COMPUTE AMPLIFICATION FUNCTION ) 460 | 1601 FORMAT(/16H1****** OPTION I3, 461 | 1 58H *** COMPUTE STRESS/STRAIN HISTORY ) 462 | C 463 | 999 STOP 464 | END 465 | C********************************************************************* 466 | SUBROUTINE STRT( IT,N1,DGMAX,PRMUL,X,AX,AA,SF,INV) 467 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 468 | C 469 | C THIS ROUTINE CALCULATES STRAIN IN THE MIDDLE OF EACH LAYER AND FIND 470 | C NEW SOIL PROPERTIES COMPATIBLE WITH THE STRAINS 471 | C 472 | C IT = ITERATION NUMBER 473 | C N1 = NUMBER OF LAYERS EXCLUDING ROCK 474 | C DGMAX = MAX ERROR IN SOIL PARAMETERS B OR G IN PERCENT 475 | C X = OBJECT MOTION 476 | C AX(1, ) = ACCELERATION VALUES AT THE SURFACE 477 | C AX(2, ) = INCIDENT WAVE-COMPONENT 478 | C AX(3, ) = REFLECTED WAVE-COMPONENT 479 | C PRMUL = RATIO EFF. STRAIN/MAX. STRAIN 480 | C 481 | C CODED PER B SCHNABEL OCT. 1970 482 | C MODIFIED PBS SEPT. 1971 483 | C 484 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 485 | INTEGER TP 486 | CHARACTER*6 TITLE,IDNT 487 | CHARACTER*30 FINPEQ 488 | COMPLEX IPI2, EX, E, F, EE, FF 489 | COMPLEX X, AX 490 | COMPLEX G, V, PLUS, MINUS 491 | C 492 | DIMENSION TMAX(51),EMAX(51),STR(51) 493 | DIMENSION X( 68), AX(3, 64), AA(2,128),SF(10), INV(10), ratio(51) 494 | COMMON /EQ/ MFOLD,MA2,TITLE(5),DT, MA , MMA, DF,MX 495 | COMMON /SOILA/ IDNT(6),BL(51),GL(51),FACT(51),H(51),R(51),BF(51) 496 | COMMON /SOILB/ FAC(51), WL(51), TP(51), DEPTH(51), WEIGHT(51) 497 | COMMON /SOILC/ MSOIL,MWL 498 | COMMON /SOILD/ GLMAX(51) 499 | COMMON /SOILDG/ S(27,20), AS(27,20), BS(27,20), NV(27) 500 | COMMON /CSOIL/ G(51), V(51), PLUS(51), MINUS(51) 501 | COMMON /JISCK/ JIS,FINPEQ 502 | COMMON/FRCUT/ NCUT,NZERO 503 | C 504 | DO 43 I = 1,MFOLD 505 | AA(1,I) = REAL(X(I)) 506 | 43 AA(2,I) = AIMAG(X(I)) 507 | DO 1 I = 1,MFOLD 508 | AX(2,I) = AX(1,I)/2. 509 | 1 AX(3,I) = AX(2,I) 510 | PI2=6.283185307 511 | IPI2=CMPLX(0.,PI2) 512 | GT = 32.2 513 | DO 2 K = 1,N1 514 | C WRITE(*,2029) K 515 | FREQ = 0. 516 | X(1) = 0. 517 | FF = GT/(IPI2*V(K)) 518 | EE = H(K)/2.*IPI2/V(K) 519 | DO 20 I=2,NCUT 520 | FREQ = FREQ + DF 521 | EX = CEXP(FREQ*EE) 522 | X(I) = (AX(2,I)*EX - AX(3,I)/EX)*FF/FREQ 523 | EX = EX*EX 524 | E = AX(2,I)*EX 525 | F = AX(3,I)/EX 526 | AX(2,I)= PLUS(K)*E + MINUS(K)*F 527 | AX(3,I)= PLUS(K)*F + MINUS(K)*E 528 | 20 CONTINUE 529 | EMAX(K) = 0. 530 | IF(NCUT.EQ.MFOLD) GO TO 22 531 | DO 122 II=NZERO,MFOLD 532 | X(II)=CMPLX(0.,0.) 533 | 122 CONTINUE 534 | 22 CONTINUE 535 | C 536 | C DETERMINE MAX. STRAIN BY INVERTING FOURIER TRANSFORM OF STRAIN 537 | C INTO THE TIME DOMAIN 538 | C 539 | CALL RFSN(X,MX,INV,SF,IFERR,-2) 540 | CALL XMX(X,MA,XMAX,NXMAX) 541 | C 542 | EMAX(K) = XMAX 543 | TMAX(K) = FLOAT(NXMAX-1)*DT 544 | 2 CONTINUE 545 | IF (IT.GT.1) WRITE(6,2002) 546 | WRITE(6,2017) FINPEQ, (IDNT(I),I=1,6) 547 | WRITE(6,2027) IT 548 | C WRITE(6,2037) PRMUL 549 | WRITE(6,2000) 550 | DGMAX = 0. 551 | DO 23 I = 1,N1 552 | EM = EMAX(I)*PRMUL*100. 553 | EMAX(I) = EMAX(I)*100. 554 | IF (TP(I) .NE. 0) GO TO 231 555 | STR(I) = EMAX(I)*GL(I)*10. 556 | WRITE(6,2107) I, TP(I), DEPTH(I), EM , BL(I), GL(I) 557 | GO TO 23 558 | C 559 | C USE UNIFORM STRAIN AMPLITUDE (EM) TO GET NEW VALUES FOR DAMPING 560 | C AND SHEAR MODULUS 561 | 231 IN = TP(I)*2 - 1 562 | SS= ABS(EM) 563 | SL = ALOG10(SS) 564 | LL = NV(IN) 565 | DO 31 L = 1,LL 566 | IF (SS.LE. S(IN,L)) GO TO 311 567 | 31 CONTINUE 568 | L = LL 569 | 311 GN =AS(IN,L)*SL +BS(IN,L) 570 | GG = GN*FACT(I)/1000. 571 | IN = IN + 1 572 | LL = NV(IN) 573 | DO 32 L = 1,LL 574 | IF (SS.LE. S(IN,L)) GO TO 321 575 | 32 CONTINUE 576 | L = LL 577 | 321 B =AS(IN,L)*SL +BS(IN,L) 578 | B = B*BF(I) 579 | C ---------------------------------------------------------------------- 580 | C SHEAR STRESSES ARE COMPUTED USING CURRENT MODULI 581 | C 582 | STR(I) = EMAX(I)*GL(I)*10. 583 | RATIO(I) = GL(I) / GLMAX(I) 584 | C ---------------------------------------------------------------------- 585 | B = B/100. 586 | DG = (GG - GL(I))*100./GG 587 | DB = ( B - BL(I))*100./B 588 | WRITE(6,2007) I, TP(I), DEPTH(I), EM, B, BL(I), DB, GG, GL(I), DG, 589 | + RATIO(I) 590 | IF (ABS(DG) .GT. DGMAX) DGMAX = ABS(DG) 591 | IF (ABS(DB) .GT. DGMAX) DGMAX = ABS(DB) 592 | IF (JIS .EQ. 1) GO TO 23 593 | BL(I) = B 594 | GL(I) = GG 595 | 23 CONTINUE 596 | IF (JIS .NE. 1) GO TO 53 597 | WRITE(6,2011) 598 | WRITE(6,2001) (I,TP(I), H(I),DEPTH(I), EMAX(I), STR(I), TMAX(I), 599 | 1 I = 1,N1) 600 | 53 CALL CXSOIL(N1) 601 | DO 44 I = 1,MFOLD 602 | 44 X(I) = CMPLX(AA(1,I),AA(2,I)) 603 | RETURN 604 | C 605 | 2000 FORMAT(/23H VALUES IN TIME DOMAIN // 606 | 1,' NO TYPE DEPTH UNIFRM. <---- DAMPING ----> <---- SHEAR', 607 | 2' MODULUS -----> G/Go'/ 608 | 3' (FT) STRAIN NEW USED ERROR NEW USED', 609 | 4' ERROR RATIO'/ 610 | 5'--- ---- ---- ------- ----- ------ ------ ------- -------', 611 | 6' ------ -----') 612 | 2002 FORMAT(1H1) 613 | 2011 FORMAT(/23H VALUES IN TIME DOMAIN // 614 | 1 2X, 5HLAYER ,2X,4HTYPE ,6X,9HTHICKNESS ,10X, 5HDEPTH ,5X, 615 | 2 10HMAX STRAIN ,5X, 10HMAX STRESS ,10X, 4HTIME / 616 | 3 23X, 2HFT 14X, 2HFT 9X, 5HPRCNT 12X, 3HPSF 13X, 3HSEC /) 617 | 2001 FORMAT(2I6, 2F15.1, F15.5,2F15.2) 618 | 2007 FORMAT(2I3, F7.1, F8.5, F6.3, 1X, F6.3 ,F9.1, 1X, 619 | 1 F9.1,1X, F9.1, F9.1, F8.3) 620 | 2107 FORMAT(2I3, F8.1, F9.5, 2F7.3, F8.1, 2F10.1, F8.1, F7.3) 621 | 2027 FORMAT(19H ITERATION NUMBER I2) 622 | 2029 FORMAT(1H+,20X,'Processing layer no. ',I2) 623 | 2030 FORMAT(1H+' ') 624 | 2017 FORMAT(5X,15HEARTHQUAKE - A30/5X,15HSOIL PROFILE - 6A6/) 625 | 2037 FORMAT(56H THE CALCULATION HAS BEEN CARRIED OUT IN THE TIME DOMAI 626 | 121HN WITH EFF. STRAIN = ,F3.2, 1H* 12H MAX. STRAIN ) 627 | END 628 | C**************************************************************** 629 | SUBROUTINE SOILIN(N1) 630 | C*********************************************************************** 631 | C 632 | C THIS ROUTINE READS PROPERTIES OF A SOIL PROFILE, ASSIGNS VALUES TO 633 | C EACH LAYER, CALCULATES TOTAL PRESSURE AND DEPTH IN MIDDLE OF 634 | C EACH LAYER AND PRINTS THE RESULTS 635 | C 636 | C IDNT = IDENTIFIER FOR SOIL PROFILE 637 | C BL = RATIO OF CRITICAL DAMPING 638 | C GL = SHEAR MODULUS 639 | C FACT = FACTOR FOR CALCULATING SHEAR MODULUS FROM STRAIN 640 | C H = LAYER THICKNESS 641 | C R = DENSITY 642 | C WL = UNIT WEIGHT 643 | C TP = SOIL TYPE 644 | C DEPTH = DEPTH TO MIDDLE OF LAYER 645 | C WEIGTH = TOTAL PRESSURE 646 | C ML = NUMBER OF LAYERS INCLUDING HALFSPACE 647 | C N1 = NUMBER OF SUBLAYERS EXCLUDING HALFSPACE 648 | C NLN = NUMBER OF SUBLAYERS IN EACH LAYER 649 | C W = UNIT WEIGHT 650 | C VS = SHEAR WAVE VELOCITY 651 | C BFAC = FACTOR ON DAMPING 652 | C FACTOR = FACTOR ON SHEAR MODULUS 653 | C HL = THICKNESS OF LAYER 654 | C H = THICKNESS OF SUBLAYER 655 | C GMOD = SHEAR MODULUS 656 | C B = CRITICAL DAMPING RATIO 657 | C 658 | C CODED BY PER B SCHNABEL OCT. 1970 659 | C MODIFIED APRIL 1972 660 | C 661 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 662 | C 663 | INTEGER TP, TYPE 664 | CHARACTER*6 IDNT 665 | DIMENSION SMEAN(51) 666 | C 667 | COMMON /SOILA/ IDNT(6),BL(51),GL(51),FACT(51),H(51),R(51),BF(51) 668 | COMMON /SOILB/ FAC(51), WL(51), TP(51), DEPTH(51), WEIGHT(51) 669 | COMMON /SOILC/ MSOIL,MWL 670 | COMMON /SOILD/ GLMAX(51) 671 | COMMON /WGK/ WW, GT, SKO 672 | C 673 | READ(5,1003) MSOIL, ML, MWL, (IDNT(I),I=1,6) 674 | WRITE(6,2020) MSOIL, (IDNT(I),I=1,6) 675 | C 676 | C READ SOIL PROPERTIES FOR EACH LAYER AND ASSIGN VALUES TO EACH SUBLAYER 677 | C 678 | J = 0 679 | DO 14 N =1, ML 680 | READ(5,1004) K, TYPE, NLN, HL, GMOD, B , W, VS 681 | FACTOR = 1. 682 | BFAC = 1. 683 | IF (NLN.EQ. 0) NLN = 1 684 | IF (K .EQ. N) GO TO 141 685 | WRITE(6,2004) N 686 | STOP 687 | C 688 | C COMPUTE MODULUS FROM SHEAR WAVE VELOCITY 689 | C 690 | 141 IF (GMOD .EQ. 0.) GMOD = VS*VS*W/GT 691 | DO 14 I = 1,NLN 692 | J = J+1 693 | BL(J) = B 694 | GL(J) = GMOD 695 | GLMAX(J) = GMOD 696 | FAC(J) = 1. 697 | FACT(J) = 1. 698 | BF(J) = 1. 699 | WL(J) = W 700 | H(J) = HL/NLN 701 | TP(J) = TYPE 702 | 14 R(J) = W/GT 703 | N1 = J -1 704 | C 705 | C CALCULATE AVERAGE DEPTH AND TOTAL PRESSURE IN EACH LAYER 706 | C 707 | W1 = WL(1) 708 | IF (MWL .EQ. 1) W1 = WL(1) - WW 709 | DEPTH(1) = H(1)/2. 710 | WEIGHT(1) = H(1)*W1/2. 711 | SMEAN(1) = WEIGHT(1)*(1.+2.*SKO)/3. 712 | IF (N1 .EQ. 1) GO TO 151 713 | DO 15 I = 2,N1 714 | W2 = WL(I) 715 | IF (MWL .LT. I+1) W2 = WL(I) - WW 716 | DEPTH(I) = DEPTH(I-1) + H(I)/2. + H(I-1)/2. 717 | WEIGHT(I) = WEIGHT(I-1) + H(I)*W2/2. + H(I-1)*W1/2. 718 | SMEAN(I) = WEIGHT(I)*(1.+2.*SKO)/3. 719 | 15 W1 = W2 720 | 151 TD = DEPTH(N1) + H(N1)/2. 721 | IF (MWL .LT. N1+1) WD = DEPTH(MWL)- H(MWL)/2. 722 | IF (MWL .EQ. N1+1) WD = DEPTH(MWL-1) + H(MWL-1)/2. 723 | C 724 | C CALCULATE FACTOR FOR SHEAR MODULUS 725 | DO 16 I = 1,N1 726 | IF (TP(I) .EQ. 0) GO TO 16 727 | IF (BF(I).LT..01) BF(I) = 2.53 - .45*ALOG10(WEIGHT(I)*1000.) 728 | NTP = TP(I) 729 | C ---------------------------------------------------------------------- 730 | C A total of 13 G/Gmax material types can be used 731 | c----------------------------------------------------------------------- 732 | FAC(I) = FACT(I) 733 | FACT(I) = GL(I) * 1000. * FACT(I) 734 | c----------------------------------------------------------------------- 735 | 16 CONTINUE 736 | 131 WRITE(6,2021) ML,TD 737 | WRITE(6,2015) 738 | DO 17 I = 1,N1 739 | VS = SQRT( GL(I)/R(I)) 740 | WRITE(6,2005) I, TP(I), H(I),DEPTH(I) 741 | 1,WEIGHT(I),GL(I),BL(I),WL(I),VS 742 | 17 CONTINUE 743 | I = N1 + 1 744 | VS = SQRT(GL(I)/R(I)) 745 | WRITE(6,2105) I, GL(I), BL(I), WL(I), VS 746 | CALL CXSOIL(N1) 747 | 1003 FORMAT(3I5, 6A6) 748 | 1004 FORMAT(3I5, 6F10.0,F5.0) 749 | 2004 FORMAT(17H SOIL CARD NO. I4,17H OUT OF SEQUENCE ) 750 | 2020 FORMAT(22H NEW SOIL PROFILE NO. ,I3,5X,17H IDENTIFICATION ,6A6) 751 | 2021 FORMAT(17H NUMBER OF LAYERS ,I20,10X,16HDEPTH TO BEDROCK,F14.2/) 752 | 2015 FORMAT( ' NO. TYPE THICKNESS DEPTH ', 753 | 1 'Tot. PRESS. MODULUS DAMPING UNIT WT. SHEAR VEL' / 754 | 3 ' (ft) (ft) (ksf) (ksf)', 755 | 4 ' (kcf) (fps)') 756 | 2005 FORMAT(I4,I5,F10.2,F10.2,F10.2,F12.0,F8.3,F9.3,F10.1) 757 | 2105 FORMAT( I4, 3X, 4HBASE 25X, F15.0, F8.3, F9.3, F10.1) 758 | RETURN 759 | END 760 | C $NOFLOATCALLS 761 | C $NODEBUG 762 | C***************************************************** 763 | SUBROUTINE CG 764 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 765 | C 766 | C THE SUBROUTINE READ POINTS ON A CURVE AND GENERATES NEW POINTS 767 | C BETWEEN THE GIVEN POINTS IN ARITHMETIC OR HALFLOGARITMIC SCALE 768 | C NECESSARY SUBROUTINES CURVEG(), 769 | C 770 | C NST = NUMBER OF SOILTYPES 771 | C ABSIS = TITLE ON ORDINATE FOR PLOTTING 772 | C NN = NUMBER OF VALUES IN EACH 10 FOR SEMILOGPLOT 773 | C SC = SCALE FOR PLOTTING 774 | C NC = NUMBER OF CURVES 775 | C NV = NUMBER OF VALUES WHERE STRAIN/PROPERTY-RELATION 776 | C IS GIVEN 777 | C FPL = MULTIPLICATION FACTOR FOR PLOTTING 778 | C ID = IDENTIFICATION 779 | C X = STRAIN VALUES 780 | C Y = PROPERTY VALUES 781 | C 782 | C CODED BY PER B SCHNABEL SEPT 1970 783 | C 784 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 785 | C 786 | CHARACTER*6 ID 787 | CHARACTER*60 ABSIS 788 | C 789 | C DIMENSION Y(27,20), TSTEP(27),NT(27),FPL(27),V(27,200),T(200) 790 | INTEGER ECHO(13) 791 | COMMON /JOE1/ Y(27,20), TSTEP(27),NT(27),FPL(27),V(27,200),T(200) 792 | COMMON /SOILDG/ S(27,20),AS(27,20),BS(27,20), NV(27) 793 | COMMON /CCG/ ID(27,11) 794 | C 795 | ABSIS = ' STRAIN IN PERCENT ' 796 | C 797 | READ(5,*) NST 798 | NC = 2*NST 799 | DO 1 L = 1,NC 800 | READ(5,2001) NV(L), (ID(L,I), I=1,11) 801 | M = NV(L) 802 | READ(5,1002) (S(L,I), I = 1,M) 803 | READ(5,1002) (Y(L,I), I = 1,M) 804 | 1 CONTINUE 805 | C--------------------------------------------- 806 | C ECHO INPUT DYNAMIC PROPERTY CURVES 807 | C--------------------------------------------- 808 | READ (5, 1007) NECHO,(ECHO(I), I=1,NECHO) 809 | C DO 10, I=1, NC, 2 810 | DO 10, K=1,NECHO 811 | C MTYPE=(I+1)/2 812 | MTYPE=ECHO(K) 813 | I=ECHO(K)*2-1 814 | WRITE(6,1003) MTYPE 815 | WRITE(6,1004) I, (ID(I,J), J=1,10), I+1, (ID(I+1,J),J=1,10) 816 | WRITE(6,1005) I,I+1 817 | M=MAX0(NV(I),NV(I+1)) 818 | 10 WRITE(6,1006) (S(I,J),Y(I,J),S(I+1,J),Y(I+1,J), J=1,M) 819 | CALL CURVEG( NC, NV, 2, AS, BS, 10, TSTEP, NT, T, V, S, Y, NSTEP) 820 | C-------------------------- 821 | 1000 FORMAT(3I5,F10.0) 822 | 1001 FORMAT(/I5,F10.2, 11A6) 823 | 1002 FORMAT(8F10.3) 824 | 1003 FORMAT (/' **********************'/ 825 | + ' MATERIAL TYPE NO.',I2,/ 826 | + ' **********************') 827 | 1004 FORMAT(/2(1X,'CURVE NO. ',I2,': ', 10a6/)/) 828 | 1005 FORMAT( ' CURVE NO.',I2,' CURVE NO.',I2,' '/ 829 | 1 ' =================== =================='/ 830 | 2 ' STRAIN G/Gmax STRAIN DAMPING'/ 831 | 3 ' -------- ------- -------- --------') 832 | 1006 FORMAT(1X,F9.4,4X,F6.3,5X,1X,F9.4,4X,F6.2,5X) 833 | 1007 FORMAT(16I5) 834 | 2001 FORMAT(I5, 11A6) 835 | 2002 FORMAT( 12F10.4) 836 | 3000 FORMAT(53H MODULUS AND DAMPING VALUES ARE SCALED FOR PLOTTING ) 837 | 3001 FORMAT(55H CURVES FOR RELATION STRAIN VERSUS SHEAR MODULUS AND 838 | 1 8H DAMPING /) 839 | RETURN 840 | END 841 | 842 | -------------------------------------------------------------------------------- /A1.f: -------------------------------------------------------------------------------- 1 | C********************************************************************** 2 | subroutine CURVEG(NC, NV, K1, A, B, NN, TSTEP, NT, T,V,X,Y,NSTEP) 3 | C*********************************************************************** 4 | C THE PROGRAM GENERATES NEW POINTS ON A CURVE BY LINEAR INTERPOLATION 5 | C USING AN ARITHMETIC OR A HALFLOGARITHMIC SCALE 6 | C 7 | C NV(I) = NUMBER OF VALUES ON CURVE I 8 | C NC = NUMBER OF CURVES 9 | C K1 = SWITCH K1 = 1 ARITHMETIC SCALE 10 | C K1 = 2 HALFLOGARITHMIC SCALE 11 | C A,B = PARAMETERS FOR CALCULATING NEW VALUES 12 | C Y = A*X + B 13 | C X,Y = KNOWN POINTS ON CURVE 14 | C T = VALUES ON ABSISSA WHERE NEW POINTS ARE GENERATED 15 | C V = NEW ORDINATE VALUES 16 | C 17 | C ARITHMETIC SCALE K1 = 1 18 | C NN = NUMBER OF INTERVALS 19 | C TSTEP = LARGEST VALUE IN EACH INTERVAL 20 | C NT = NUMBER OF STEPS IN EACH INTERVAL 21 | C 22 | C HALFLOGARITHMIC SCALE 23 | C NN = NUMBER OF VALUES IN EACH LOG10 24 | C 25 | C CODED BY PER B SCHNABEL SEPT 1970 26 | C 27 | C*********************************************************************** 28 | C 29 | dimension X(27,20),Y(27,20),A(27,20),B(27,20),NV(27),TSTEP(27) 30 | dimension NT(27), T(200), V(27,200) 31 | C 32 | XMIN = 100000000. 33 | XMAX = 0. 34 | do L= 1,NC 35 | M = NV(L) 36 | if (XMAX .lt. X(L,M)) XMAX = X(L,M) 37 | if (XMIN .gt. X(L,1)) XMIN = X(L,1) 38 | M = M - 1 39 | do I = 1,M 40 | X1 = X(L,I) 41 | X2 = X(L,I+1) 42 | if (K1 .eq. 2) X1 = ALOG10(X1) 43 | if (K1 .eq. 2) X2 = ALOG10(X2) 44 | X(L,I) = X(L,I+1) 45 | A(L,I) = (Y(L,I+1) - Y(L,I))/(X2 - X1) 46 | B(L,I) = -A(L,I)*X1 + Y(L,I) 47 | end do 48 | end do 49 | C 50 | call STEPG(K1, NN, TSTEP, NT, XMIN, XMAX, T, NSTEP) 51 | C 52 | do L = 1,NC 53 | M = NV(L) - 1 54 | do I = 1,NSTEP 55 | do J = 1,M 56 | if (T(I) .lt. X(L,J)) go to 31 57 | end do 58 | J = M 59 | 31 TT = T(I) 60 | if (K1 .eq. 2) TT = ALOG10(TT) 61 | V(L,I) = A(L,J)*TT + B(L,J) 62 | end do 63 | end do 64 | return 65 | end 66 | C********************************************************************* 67 | subroutine STEPG(KK, NN, TSTEP, NT, T1, TN, T, NSTEP) 68 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 69 | C 70 | C THE ROUTINE GENERATES STEPS IN LINEAR OR LOGARITHMIC INCREMENT 71 | C 72 | C KK = SWITCH KK = 1 STEP INCREASE OF VALUES 73 | C KK = 2 LOGARITHMIC INCREASE OF VALUES 74 | C NN = NUMBER OF STEPS OR NUMBER OF VALUES IN EACH 10 75 | C TSTEP = LARGEST VALUE IN EACH STEP 76 | C NT = NUMBER OF VALUES IN EACH STEP 77 | C T1 = FIRST VALUE IN LOG-STEP 78 | C TN = LAST VALUE IN LOG-STEP 79 | C T = VALUES GENERATED 80 | C NSTEP = NUMBER OF VALUES 81 | C 82 | C CODED PER B SCHNABEL SEPT. 1970 83 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 84 | C 85 | dimension T(200), TSTEP(27), NT(27) 86 | C 87 | if (KK .eq. 1) then 88 | K = 1 89 | T(K) = 0. 90 | SAVE = 0. 91 | do N = 1,NN 92 | M = NT(N) 93 | STEP = (TSTEP(N) - SAVE)/FLOAT(M) 94 | SAVE = TSTEP(N) 95 | do I = 1,M 96 | K = K + 1 97 | T(K) = T(K-1) + STEP 98 | end do 99 | end do 100 | NSTEP = K 101 | return 102 | else if (KK .eq. 2) then 103 | NST = ALOG10(T1) 104 | if (T1.lt. 1.) NST = NST - 1 105 | STEP = 1./NN 106 | K = 1 107 | TA = 10.**FLOAT(NST) 108 | T(1) = TA 109 | do J = 2,NN 110 | K = K + 1 111 | T(K) = TA*10.**(STEP*FLOAT(J)) 112 | if (T(K) .gt. T1) go to 221 113 | end do 114 | 221 TA = T(K-1) 115 | K = 0 116 | 211 do J = 1,NN 117 | K = K + 1 118 | T(K) = TA*10.**(STEP*FLOAT(J)) 119 | if (T(K) .gt. TN) go to 212 120 | end do 121 | TA = TA*10. 122 | go to 211 123 | 212 NSTEP = K 124 | return 125 | end if 126 | end 127 | C*********************************************************** 128 | subroutine RESP(LN,LS,NN,X,AX,A,S,INV) 129 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 130 | C THIS PROGRAM readS DATA FOR RESPONSE SPECTRUM ANALYSIS 131 | C NECESSARY subroutineS DRCTSP, CMPMAX 132 | C 133 | C NN = RESPONSE SPECTRUM NUMBER 134 | C ND = NUMBER OF DAMPING VALUES 135 | C X = FOURIER TRANSFORM OF OBJECT MOTION 136 | C AX = FOURIER TRANSFORM OF COMPUTED MOTIONS 137 | C T = PERIODS FOR WHICH RESPONSE IS to BE COMPUTED 138 | C 139 | C CODED PER B SCHNABEL DEC. 1970 140 | C New Sets of Periods -- included in February 1991 141 | C 142 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 143 | C 144 | character*6 TITLE,ID,IBLANK,IDNT 145 | character*60 ABSIS 146 | character*32 FPERIOD 147 | character*80 headerd 148 | complex X, AX 149 | C 150 | dimension X(64), AX(3,64),A(2,64), S(10),INV(10) 151 | dimension ID(27,11) 152 | C 153 | common /SOILA/ IDNT(6),BL(51),GL(51),FACT(51),H(51),R(51),BF(51) 154 | common /EQ/ MFOLD,MA2,TITLE(5),DT, MA , MMA, DF,MX 155 | common /RVAL/ NND(27), ZLD(6),T(200), SA(5,200),SV(5,200) 156 | C 157 | IBLANK = ' ' 158 | ABSIS = ' PERIOD IN SEC.' 159 | C 160 | read(5,4) ND, KPER, GGT 161 | 4 format(2I5,F10.2) 162 | read(5,5) (ZLD(I), I = 1,ND) 163 | 5 format(6F10.3) 164 | write(6,9001) LN, (ZLD(I), I = 1,ND) 165 | C ------------------------------------------------------------------- 166 | C if KPER = 0; Periods from 0.03 to 10 sec are included in data block 167 | C in this subroutine 168 | C otherwise, periods are specified by user (maximum is 200 periods) 169 | C ------------------------------------------------------------------- 170 | if (KPER.eq. 0) go to 99 171 | read(5,'(A32)') FPERIOD 172 | write(6,60) FPERIOD 173 | 60 format(' File from which periods were read: ' A32) 174 | open(8,FILE=FPERIOD,STATUS='OLD') 175 | read (8,4) NLINES, NNM 176 | do I = 1, NLINES 177 | read(8,*) headerd 178 | write(6,*) headerd 179 | end do 180 | read(8,*) (T(I), I=1, NNM) 181 | close(8) 182 | go to 101 183 | C ---------------------------------------------------------------------- 184 | C default periods for calculating response spectra 185 | C --------------------------------------------------------------------- 186 | 99 NNM=152 187 | T(1) = .01 188 | data (t(i), i=2,152)/ 189 | 1 0.03, 0.04, 0.05, 0.06, 0.07, 0.08, 0.09, 190 | 2 0.10, 0.11, 0.12, 0.13, 0.14, 0.15, 0.16, 191 | 3 0.17, 0.18, 0.19, 0.20, 0.21, 0.22, 0.23, 192 | 4 0.24, 0.25, 0.26, 0.27, 0.28, 0.29, 0.30, 193 | 5 0.31, 0.32, 0.33, 0.34, 0.35, 0.36, 0.37, 194 | 6 0.38, 0.39, 0.40, 0.41, 0.42, 0.43, 0.44, 195 | 7 0.45, 0.46, 0.47, 0.48, 0.49, 0.50, 0.51, 196 | 8 0.52, 0.53, 0.54, 0.55, 0.56, 0.57, 0.58, 197 | 9 0.60, 0.62, 0.64, 0.66, 0.68, 0.70, 0.72, 198 | T 0.74, 0.76, 0.78, 0.80, 0.82, 0.84, 0.86, 199 | 1 0.88, 0.90, 0.92, 0.94, 0.96, 0.98, 1.00, 200 | 2 1.05, 1.10, 1.15, 1.20, 1.25, 1.30, 1.35, 201 | 3 1.40, 1.45, 1.50, 1.55, 1.60, 1.65, 1.70, 202 | 4 1.75, 1.80, 1.85, 1.90, 1.95, 2.00, 2.05, 203 | 5 2.10, 2.15, 2.20, 2.25, 2.30, 2.35, 2.40, 204 | 6 2.50, 2.60, 2.70, 2.80, 2.90, 3.00, 3.10, 205 | 7 3.20, 3.30, 3.40, 3.50, 3.60, 3.70, 3.80, 206 | 8 3.90, 4.00, 4.10, 4.20, 4.30, 4.40, 4.50, 207 | 9 4.60, 4.70, 4.80, 4.90, 5.00, 5.10, 5.20, 208 | T 5.40, 5.60, 5.80, 6.00, 6.20, 6.40, 6.60, 209 | 1 6.80, 7.00, 7.20, 7.40, 7.60, 7.80, 8.00, 210 | 2 8.50, 9.00, 9.50, 10.00/ 211 | c --------------------------------------------------------------------- 212 | C SAVE VALUES OF X IN AA 213 | 101 do I = 1,MFOLD 214 | A(1,I) = real(X(I)) 215 | A(2,I) = AIMAG(X(I)) 216 | if (LS .ne. 0) then 217 | X(I) = AX(LS,I) 218 | end if 219 | end do 220 | C 221 | C TRANSFORM VALUES IN X OR AX INto THE TIME DOMAIN 222 | call RFSN(X,MX,INV,S,IFERR,-2) 223 | do L = 1,ND 224 | if (NN .ge. 5) NN= 0 225 | NN = NN + 1 226 | do I = 1,5 227 | ID(NN,I) = TITLE(I) 228 | end do 229 | do I = 6,11 230 | ID(NN,I) = IDNT(I-5) 231 | if (LS .eq. 0) ID(NN,I) = IBLANK 232 | end do 233 | C 234 | C COMPUTE RESPONSE FOR ACCELERATION VALUES IN AA(1, )FOR THE PERIODS 235 | C GIVEN IN T( ) 236 | call DRCTSP(NN,MMA, DT, GGT, ID, ZLD(L),NNM,X) 237 | end do 238 | C 239 | C GIVE X BACK ORIGINAL VALUES 240 | do I = 1,MFOLD 241 | X(I) = CMPLX(A(1,I),A(2,I)) 242 | end do 243 | C ============================================================== 244 | 134 NN = 0 245 | return 246 | 1000 format(10I5) 247 | 9000 format( 8F10.3) 248 | 9001 format( 50H RESPONSE SPECTRUM ANALYSIS FOR LAYER NUMBER I4 249 | 1/26H CALCULATED FOR DAMPING 8F10.3) 250 | end 251 | C********************************************************************** 252 | subroutine DRCTSP(NN, KG, DT, GGT, ID, D, M, A) 253 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 254 | C THIS ROUTINE COMPUTES RESPONSE SPECTRA BY THE STEP BY STEP METHOD 255 | C 256 | C NN = RESPONSE SPECTRUM CURVE NUMBER USED (Canceled) 257 | C KG = NUMBER OF ACCELERATION VALUES 258 | C DT = TIME STEP BETWEEN EACH ACCELERATION VALUE 259 | C M = NUMBER OF PERIODS FOR WHICH RESPONSE IS to BE COMPUTED 260 | C T = ARRAY WITH THE PERIODS 261 | C A = ACCELERATION VALUES 262 | C D = CRITICAL DAMPING RATIO 263 | C ID = IDENTIFICATION 264 | C GGT = Acceleration of gravity - cm/sec/sec, or in/sec/sec 265 | C or ft/sec/sec 266 | C 267 | C CODED BY I. M. IDRISS 1967 268 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 269 | C 270 | character*6 ID 271 | dimension A(1) 272 | common /RVAL/ NND(27), ZLD(6),T(200), SA(5,200),SV(5,200) 273 | dimension PRV(200), PAA(200), RD(200) 274 | dimension ID(27,11) 275 | C ..................................................................... 276 | zmax =0 277 | do K = 1, KG 278 | if (zmax .gt. ABS(A(K))) then 279 | A(K) = GGT*A(K) 280 | else 281 | zmax = ABS(A(K)) 282 | end if 283 | end do 284 | PIW = 6.283185307 285 | SV(NN,1) = zmax*GGT*T(1)/PIW 286 | SA(NN,1) = zmax 287 | KUG = KG-1 288 | RD(1) = zmax*GGT*T(1)*T(1)/(PIW*PIW) 289 | PRV(1) = zmax*GGT*T(1)/PIW 290 | PAA(1) = zmax 291 | write(6,112) D 292 | N = 1 293 | YY = SQRT(1.-D*D) 294 | do LOOP = 2, M 295 | W = 6.283185307/T(N) 296 | WD = YY*W 297 | W2 = W*W 298 | W3 = W2*W 299 | call CMPMAX(KUG,T(N),W,W2,W3,WD,D,DT,ZD,ZV,ZA,A) 300 | SV(NN,N) = ZV 301 | SA(NN,N) = ZA/GGT 302 | RD(N) = ZD 303 | PRV(N) = W*ZD 304 | PAA(N) = W2*ZD/GGT 305 | N = N + 1 306 | end do 307 | write(6,312) GGT, (ID(NN,I), I = 1,10),D 308 | SUMSV = 0. 309 | SUMSA = 0. 310 | SUMT = 0. 311 | SVMAX = 0. 312 | SAMAX = 0. 313 | TT1 = .1 314 | TT2 = 0. 315 | do N = 1, M 316 | FREKV = 1./T(N) 317 | if (T(N) .lt. .0999 .or. TT2.gt.2.4999) then 318 | continue 319 | end if 320 | TT2 = (T(N+1) + T(N))/2. 321 | if (TT2.gt.2.5) TT2 = 2.5 322 | TT = TT2 - TT1 323 | SUMSA = SA(NN,N)*TT + SUMSA 324 | SUMSV = SV(NN,N)*TT + SUMSV 325 | SUMT = SUMT + TT 326 | TT1 = TT2 327 | if (SVMAX.lt.SV(NN,N)) SVMAX = SV(NN,N) 328 | if (SAMAX.lt.SA(NN,N)) SAMAX = SA(NN,N) 329 | write(6,322) N,T(N),RD(N),SV(NN,N),PRV(N),SA(NN,N),PAA(N),FREKV 330 | end do 331 | write(6,2002) SUMSA,SUMSV,SAMAX,SVMAX 332 | do K = 1,KG 333 | A(K) = A(K)/GGT 334 | end do 335 | return 336 | C 337 | 112 format(/5X,41HTIMES AT WHICH MAX. SPECTRAL VALUES OCCUR / 338 | 1 10X,33HTD = TIME FOR MAX. RELATIVE DISP. / 339 | 2 10X,33HTV = TIME FOR MAX. RELATIVE VEL. / 340 | 3 10X,33HTA = TIME FOR MAX. ABSOLUTE ACC. / 341 | 4 5X, 15HDAMPING RATIO = F5.2) 342 | 312 format(5X,' SPECTRAL VALUES --'/ 343 | 15X,' [Acceleration of gravity used =' F8.2 ']'/ 344 | 210A6,2X,15HDAMPING RATIO = 345 | 3 F5.2/5X,3HNO.,4X,6HPERIOD,5X,10HREL. DISP.,6X,9HREL. VEL.,3X, 346 | 4 12HPSU.REL.VEL.,6X,9HABS. ACC.,3X,12HPSU.ABS.ACC. 5X,5HFREQ.) 347 | 322 format(I8,F10.2,5F15.5,F10.2) 348 | 402 format(8F9.5) 349 | 412 format(I5,25H ACC. RESPONSE VALUES FOR , 8A6) 350 | 413 format(I5,25H VEL. RESPONSE VALUES FOR , 8A6) 351 | 2002 format(10X,40HVALUES IN PERIOD RANGE .1 to 2.5 SEC. / 352 | 115X,35HAREA OF ACC. RESPONSE SPECTRUM = F10.3/ 353 | 215X,35HAREA OF VEL. RESPONSE SPECTRUM = F10.3/ 354 | 315X,35HMAX. ACCELERATION RESPONSE VALUE = F10.3/ 355 | 415X,35HMAX. VELOCITY RESPONSE VALUE = F10.3) 356 | end 357 | C ******************************************************************** 358 | subroutine CMPMAX (KUG,PR,W,W2,W3,WD,D,DT,ZD,ZV,ZA, UG) 359 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 360 | C 361 | C THIS ROUTINE COMPUTES RESPONSE VALUES FOR ONE SINGLE DEGREE OF 362 | C FREEDOM SYSTEM USING STEP BY STEP METHOD 363 | C 364 | C EXPLANATIOS to PARAMETERS GIVEN IN DRCTSP 365 | C 366 | C CODED BY I. M. IDRISS 1967 367 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 368 | C 369 | C TODO: These arrays need to be checked for size 370 | dimension XD(2), XV(2), T(3) 371 | dimension UG(1) 372 | C 373 | ZA = 0. 374 | ZD = 0. 375 | ZV = 0. 376 | XD(1) = 0. 377 | XV(1) = 0. 378 | F1 = 2.*D/(W3*DT) 379 | F2 = 1./W2 380 | F3 = D*W 381 | F4 = 1./WD 382 | F5 = F3*F4 383 | F6 = 2.*F3 384 | E = EXP(-F3*DT) 385 | S = SIN(WD*DT) 386 | C= COS(WD*DT) 387 | G1 = E*S 388 | G2 = E*C 389 | H1 = WD*G2 - F3*G1 390 | H2 = WD*G1 + F3*G2 391 | do K = 1, KUG 392 | Y = K-1 393 | DUG = UG(K+1) - UG(K) 394 | Z1 = F2*DUG 395 | Z2 = F2*UG(K) 396 | Z3 = F1*DUG 397 | Z4 = Z1/DT 398 | B = XD(1) + Z2 -Z3 399 | A = F4*XV(1) + F5*B + F4*Z4 400 | XD(2) = A*G1 + B*G2 + Z3 - Z2 - Z1 401 | XV(2) = A*H1 - B*H2 - Z4 402 | XD(1) = XD(2) 403 | XV(1) = XV(2) 404 | AA = -F6*XV(1) - W2*XD(1) 405 | F = ABS(XD(1)) 406 | G = ABS(XV(1)) 407 | H = ABS(AA) 408 | if (F .gt. ZD) then 409 | T(1) = Y 410 | ZD = F 411 | end if 412 | if (G .gt. ZV) then 413 | T(2) = Y 414 | ZV = G 415 | end if 416 | if (H .gt. ZA) then 417 | T(3) = Y 418 | ZA = H 419 | end if 420 | end do 421 | do L = 1, 3 422 | T(L) = DT*T(L) 423 | end do 424 | write(6,112) PR, (T(L),L=1,3) 425 | 112 format(5X,5HPER = F5.2,5X,19HTIMES FOR MAXIMA -- ,3X, 426 | 14HTD = F8.4,3X,4HTV = F8.4,3X,4HTA = F8.4) 427 | return 428 | end 429 | C **************************************** 430 | subroutine FFT (A,M,INV,S,IFSET,IFERR) 431 | C* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 432 | C TODO: Check dimensions on these arrays 433 | dimension A(1),INV(1),S(1),N(3),M(3),NP(3),W(2),W2(2),W3(2) 434 | equivalence (N1,N(1)), (N2,N(2)), (N3,N(3)) 435 | 436 | M1=M(1) 437 | M2=M(2) 438 | M3=M(3) 439 | MTT=M1-2 440 | MT=MAX0(2,MTT) 441 | NT=2**MT 442 | 10 if (IABS(IFSET)-1) 610,610,20 443 | 610 MT=MAX0(M(1),M(2),M(3))-2 444 | MT=MAX0(2,MT) 445 | if (MT-20) 630,630,620 446 | 620 IFERR=1 447 | go to 600 448 | 630 IFERR=0 449 | NT=2**MT 450 | NTV2=NT/2 451 | THETA=.7853981634 452 | JSTEP=NT 453 | JDIF=NTV2 454 | S(JDIF)=SIN(THETA) 455 | do L=2,MT 456 | THETA=THETA/2. 457 | JSTEP2=JSTEP 458 | JSTEP=JDIF 459 | JDIF=JSTEP/2 460 | S(JDIF)=SIN(THETA) 461 | JC1=NT-JDIF 462 | S(JC1)=COS(THETA) 463 | JLAST=NT-JSTEP2 464 | if (JLAST-JSTEP .ge. 0) then 465 | do J=JSTEP,JLAST,JSTEP 466 | JC=NT-J 467 | JD=J+JDIF 468 | S(JD)=S(J)*S(JC1)+S(JDIF)*S(JC) 469 | end do 470 | end if 471 | end do 472 | C 473 | C SET UP INV(J) TABLE 474 | MTLEXP=NTV2 475 | LM1EXP=1 476 | INV(1)=0 477 | do L=1,MT 478 | INV(LM1EXP+1)=MTLEXP 479 | do J=2,LM1EXP 480 | JJ=J+LM1EXP 481 | INV(JJ)=INV(J)+MTLEXP 482 | end do 483 | MTLEXP=MTLEXP/2 484 | LM1EXP=LM1EXP*2 485 | end do 486 | if (IFSET .eq. 0) then 487 | return 488 | end if 489 | 20 MTT=MAX0(M(1),M(2),M(3))-2 490 | ROOT2=SQRT(2.) 491 | if (MTT-MT .gt. 0) then 492 | IFERR=1 493 | write(6,1000) 494 | stop 495 | 1000 format(31H --- ERROR IN FOURIER TRANSFORM ) 496 | end if 497 | IFERR=0 498 | C M1=M(1) 499 | C M2=M(2) 500 | C M3=M(3) 501 | N1=2**M1 502 | N2=2**M2 503 | N3=2**M3 504 | if (IFSET .le. 0) then 505 | NX=N1*N2*N3 506 | FN=NX 507 | do I=1,NX 508 | A(2*I-1)=A(2*I-1)/FN 509 | A(2*I)=-A(2*I)/FN 510 | end do 511 | end if 512 | NP(1)=N1*2 513 | NP(2)=NP(1)*N2 514 | NP(3)=NP(2)*N3 515 | do ID=1,3 516 | IL=NP(3)-NP(ID) 517 | IL1=IL+1 518 | MI=M(ID) 519 | if (MI) 330,330,80 520 | 80 IDIF=NP(ID) 521 | KBIT=NP(ID) 522 | MEV=2*(MI/2) 523 | if (MI-MEV .gt. 0) then 524 | KBIT=KBIT/2 525 | KL=KBIT-2 526 | do I=1,IL1,IDIF 527 | KLAST=KL+I 528 | do K=I,KLAST,2 529 | KD=K+KBIT 530 | T=A(KD) 531 | A(KD)=A(K)-T 532 | A(K)=A(K)+T 533 | T=A(KD+1) 534 | A(KD+1)=A(K+1)-T 535 | A(K+1)=A(K+1)+T 536 | end do 537 | end do 538 | if (MI-1 .gt. 0) then 539 | LFIRST=3 540 | JLAST=1 541 | else 542 | go to 330 543 | end if 544 | else 545 | 120 LFIRST=2 546 | JLAST=0 547 | end if 548 | 130 do 320 L=LFIRST,MI,2 549 | JJDIF=KBIT 550 | KBIT=KBIT/4 551 | KL=KBIT-2 552 | do I=1,IL1,IDIF 553 | KLAST=I+KL 554 | do K=I,KLAST,2 555 | K1=K+KBIT 556 | K2=K1+KBIT 557 | K3=K2+KBIT 558 | T=A(K2) 559 | A(K2)=A(K)-T 560 | A(K)=A(K)+T 561 | T=A(K2+1) 562 | A(K2+1)=A(K+1)-T 563 | A(K+1)=A(K+1)+T 564 | T=A(K3) 565 | A(K3)=A(K1)-T 566 | A(K1)=A(K1)+T 567 | T=A(K3+1) 568 | A(K3+1)=A(K1+1)-T 569 | A(K1+1)=A(K1+1)+T 570 | T=A(K1) 571 | A(K1)=A(K)-T 572 | A(K)=A(K)+T 573 | T=A(K1+1) 574 | A(K1+1)=A(K+1)-T 575 | A(K+1)=A(K+1)+T 576 | R=-A(K3+1) 577 | T=A(K3) 578 | A(K3)=A(K2)-R 579 | A(K2)=A(K2)+R 580 | A(K3+1)=A(K2+1)-T 581 | A(K2+1)=A(K2+1)+T 582 | end do 583 | end do 584 | if (JLAST) 310,310,150 585 | 150 JJ=JJDIF+1 586 | ILAST=IL+JJ 587 | do I=JJ,ILAST,IDIF 588 | KLAST=KL+I 589 | do K=I,KLAST,2 590 | K1=K+KBIT 591 | K2=K1+KBIT 592 | K3=K2+KBIT 593 | R=-A(K2+1) 594 | T=A(K2) 595 | A(K2)=A(K)-R 596 | A(K)=A(K)+R 597 | A(K2+1)=A(K+1)-T 598 | A(K+1)=A(K+1)+T 599 | AWR = A(K1)-A(K1+1) 600 | AWI=A(K1+1)+A(K1) 601 | R=-A(K3)-A(K3+1) 602 | T=A(K3)-A(K3+1) 603 | A(K3)=(AWR-R)/ROOT2 604 | A(K3+1)=(AWI-T)/ROOT2 605 | A(K1)=(AWR+R)/ROOT2 606 | A(K1+1)=(AWI+T)/ROOT2 607 | T=A(K1) 608 | A(K1)=A(K)-T 609 | A(K)=A(K)+T 610 | T=A(K1+1) 611 | A(K1+1)=A(K+1)-T 612 | A(K+1)=A(K+1)+T 613 | R=-A(K3+1) 614 | T=A(K3) 615 | A(K3)=A(K2)-R 616 | A(K2)=A(K2)+R 617 | A(K3+1)=A(K2+1)-T 618 | A(K2+1)=A(K2+1)+T 619 | end do 620 | end do 621 | if (JLAST-1) 310,310,170 622 | 170 JJ=JJ+JJDIF 623 | do J=2,JLAST 624 | I=INV(J+1) 625 | IC=NT-I 626 | W(1)=S(IC) 627 | W(2)=S(I) 628 | I2=2*I 629 | I2C=NT-I2 630 | if (I2C) 200,190,180 631 | 180 W2(1)=S(I2C) 632 | W2(2)=S(I2) 633 | go to 210 634 | 190 W2(1)=0. 635 | W2(2)=1. 636 | go to 210 637 | 200 I2CC=I2C+NT 638 | I2C=-I2C 639 | W2(1)=-S(I2C) 640 | W2(2)=S(I2CC) 641 | 210 I3=I+I2 642 | I3C=NT-I3 643 | if (I3C) 240,230,220 644 | 220 W3(1)=S(I3C) 645 | W3(2)=S(I3) 646 | go to 280 647 | 230 W3(1)=0. 648 | W3(2)=1. 649 | go to 280 650 | 240 I3CC=I3C+NT 651 | if (I3CC) 270,260,250 652 | 250 I3C=-I3C 653 | W3(1)=-S(I3C) 654 | W3(2)=S(I3CC) 655 | go to 280 656 | 260 W3(1)=-1. 657 | W3(2)=0. 658 | go to 280 659 | 270 I3CCC=NT+I3CC 660 | I3CC=-I3CC 661 | W3(1)=-S(I3CCC) 662 | W3(2)=-S(I3CC) 663 | 280 ILAST=IL+JJ 664 | do I=JJ,ILAST,IDIF 665 | KLAST=KL+I 666 | do K=I,KLAST,2 667 | K1=K+KBIT 668 | K2=K1+KBIT 669 | K3=K2+KBIT 670 | R=A(K2)*W2(1)-A(K2+1)*W2(2) 671 | T=A(K2)*W2(2)+A(K2+1)*W2(1) 672 | A(K2)=A(K)-R 673 | A(K)=A(K)+R 674 | A(K2+1)=A(K+1)-T 675 | A(K+1)=A(K+1)+T 676 | R=A(K3)*W3(1)-A(K3+1)*W3(2) 677 | T=A(K3)*W3(2)+A(K3+1)*W3(1) 678 | AWR=A(K1)*W(1)-A(K1+1)*W(2) 679 | AWI=A(K1)*W(2)+A(K1+1)*W(1) 680 | A(K3)=AWR-R 681 | A(K3+1)=AWI-T 682 | A(K1)=AWR+R 683 | A(K1+1)=AWI+T 684 | T=A(K1) 685 | A(K1)=A(K)-T 686 | A(K)=A(K)+T 687 | T=A(K1+1) 688 | A(K1+1)=A(K+1)-T 689 | A(K+1)=A(K+1)+T 690 | R=-A(K3+1) 691 | T=A(K3) 692 | A(K3)=A(K2)-R 693 | A(K2)=A(K2)+R 694 | A(K3+1)=A(K2+1)-T 695 | A(K2+1)=A(K2+1)+T 696 | end do 697 | end do 698 | JJ=JJDIF+JJ 699 | end do 700 | 310 JLAST=4*JLAST+3 701 | 320 continue 702 | 330 continue 703 | end do 704 | NTSQ=NT*NT 705 | M3MT=M3-MT 706 | if (M3MT) 350,340,340 707 | 340 IGO3=1 708 | N3VNT=N3/NT 709 | MINN3=NT 710 | go to 360 711 | 350 IGO3=2 712 | N3VNT=1 713 | NTVN3=NT/N3 714 | MINN3=N3 715 | 360 JJD3=NTSQ/N3 716 | M2MT=M2-MT 717 | if (M2MT) 380,370,370 718 | 370 IGO2=1 719 | N2VNT=N2/NT 720 | MINN2=NT 721 | go to 390 722 | 380 IGO2=2 723 | N2VNT=1 724 | NTVN2=NT/N2 725 | MINN2=N2 726 | 390 JJD2=NTSQ/N2 727 | M1MT=M1-MT 728 | if (M1MT) 410,400,400 729 | 400 IGO1=1 730 | N1VNT=N1/NT 731 | MINN1=NT 732 | go to 420 733 | 410 IGO1=2 734 | N1VNT=1 735 | NTVN1=NT/N1 736 | MINN1=N1 737 | 420 JJD1=NTSQ/N1 738 | JJ3=1 739 | J=1 740 | do JPP3=1,N3VNT 741 | IPP3=INV(JJ3) 742 | do JP3=1,MINN3 743 | go to (430,440), IGO3 744 | 430 IP3=INV(JP3)*N3VNT 745 | go to 450 746 | 440 IP3=INV(JP3)/NTVN3 747 | 450 I3=(IPP3+IP3)*N2 748 | JJ2=1 749 | do JPP2=1,N2VNT 750 | IPP2=INV(JJ2)+I3 751 | do JP2=1,MINN2 752 | go to (460,470), IGO2 753 | 460 IP2=INV(JP2)*N2VNT 754 | go to 480 755 | 470 IP2=INV(JP2)/NTVN2 756 | 480 I2=(IPP2+IP2)*N1 757 | JJ1=1 758 | do JPP1=1,N1VNT 759 | IPP1=INV(JJ1)+I2 760 | do JP1=1,MINN1 761 | go to (490,500), IGO1 762 | 490 IP1=INV(JP1)*N1VNT 763 | go to 510 764 | 500 IP1=INV(JP1)/NTVN1 765 | 510 I=2*(IPP1+IP1)+1 766 | if (J-I) 520,530,530 767 | 520 T=A(I) 768 | A(I)=A(J) 769 | A(J)=T 770 | T=A(I+1) 771 | A(I+1)=A(J+1) 772 | A(J+1)=T 773 | 530 continue 774 | J=J+2 775 | end do 776 | JJ1=JJ1+JJD1 777 | end do 778 | end do 779 | JJ2=JJ2+JJD2 780 | end do 781 | end do 782 | JJ3=JJ3+JJD3 783 | end do 784 | if (IFSET) 580,600,600 785 | 580 do I=1,NX 786 | A(2*I)=-A(2*I) 787 | end do 788 | 600 return 789 | end 790 | C********************************************** 791 | subroutine RFFT (A,M,INV,S,IFERR,IFSET) 792 | C* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 793 | dimension A(1), L(3), INV(1), S(1) 794 | C 795 | C IFSET=1 796 | L(1)=M 797 | L(2)=0 798 | L(3)=0 799 | NTOT=2**M 800 | NTOT2=2*NTOT 801 | FN=NTOT 802 | do I=2,NTOT2,2 803 | A(I)=-A(I) 804 | end do 805 | do I=1,NTOT2 806 | A(I)=A(I)/FN 807 | end do 808 | call FFT (A,L,INV,S,IFSET,IFERR) 809 | C 810 | C MOVE LAST HALF OF A(J)S DOWN ONE SLOT AND ADD A(N) AT BOTTOM TO 811 | C GIVE ARRAY FOR A1PRIME AND A2PRIME CALCULATION 812 | C 813 | do I=1,NTOT,2 814 | J0=NTOT2+2-I 815 | A(J0)=A(J0-2) 816 | A(J0+1)=A(J0-1) 817 | end do 818 | A(NTOT2+3)=A(1) 819 | A(NTOT2+4)=A(2) 820 | C 821 | C CALCULATE A1PRIMES AND STORE IN FIRST N SLOTS 822 | C CALCULATE A2PRIMES AND STORE IN SECOND N SLOTS IN REVERSE ORDER 823 | C 824 | K0=NTOT+1 825 | do I=1,K0,2 826 | K1=NTOT2-I+4 827 | AP1RE=.5*(A(I)+A(K1)) 828 | AP2RE=-.5*(A(I+1)+A(K1+1)) 829 | AP1IM=.5*(-A(I+1)+A(K1+1)) 830 | AP2IM=-.5*(A(I)-A(K1)) 831 | A(I)=AP1RE 832 | A(I+1)=AP1IM 833 | A(K1)=AP2RE 834 | A(K1+1)=AP2IM 835 | end do 836 | NTO=NTOT/2 837 | NT=NTO+1 838 | DEL=3.1415927/FLOAT(NTOT) 839 | SS=SIN(DEL) 840 | SC=COS(DEL) 841 | SI=0.0 842 | CO=1.0 843 | C 844 | C COMPUTE C(J)S FOR J=0 THRU J=N 845 | do I=1,NT 846 | K6=NTOT2-2*I+5 847 | AP2RE=A(K6)*CO+A(K6+1)*SI 848 | AP2IM=-A(K6)*SI+A(K6+1)*CO 849 | CIRE=.5*(A(2*I-1)+AP2RE) 850 | CIIM=.5*(A(2*I)+AP2IM) 851 | CNIRE=.5*(A(2*I-1)-AP2RE) 852 | CNIIM=.5*(A(2*I)-AP2IM) 853 | A(2*I-1)=CIRE 854 | A(2*I)=CIIM 855 | A(K6)=CNIRE 856 | A(K6+1)=-CNIIM 857 | SIS=SI 858 | SI=SI*SC+CO*SS 859 | CO=CO*SC-SIS*SS 860 | end do 861 | C 862 | C SHIFT C(J)S FOR J=N/2+1 to J=N UP ONE SLOT 863 | do I=1,NTOT,2 864 | K8=NTOT+4+I 865 | A(K8-2)=A(K8) 866 | A(K8-1)=A(K8+1) 867 | end do 868 | do I=3,NTOT2,2 869 | A(I)=2.*A(I) 870 | A(I+1)= 2.*A(I+1) 871 | end do 872 | return 873 | end 874 | C****************************************** 875 | subroutine RFSN (A,M,INV,S,IFERR,IFSET) 876 | C********************************************************************** 877 | dimension A(1),L(3),INV(1),S(1) 878 | C 879 | L(1)=M 880 | L(2)=0 881 | L(3)=0 882 | NTOT=2**M 883 | C IFSET=-1 884 | NTOT2=NTOT+NTOT 885 | NN=NTOT2+2 886 | A(NN+2)=A(NN) 887 | A(NN+1)=A(NN-1) 888 | FN=NTOT 889 | NTOT3=NTOT2+4 890 | do I=3,NTOT2,2 891 | A(I)=0.5* A(I) 892 | A(I+1)= .5*A(I+1) 893 | end do 894 | do I=1,NTOT,2 895 | K8=NTOT2+2-I 896 | A(K8)= A(K8-2) 897 | A(K8+1)=A(K8-1) 898 | end do 899 | NTO=NTOT/ 2 900 | NT=NTO+1 901 | DEL=3.141592654/FN 902 | SS= SIN(DEL) 903 | SC= COS(DEL) 904 | SI=0. 905 | CO =1.0 906 | do I=1,NT 907 | K6=NTOT2-2*I+5 908 | CIRE= A(2*I-1) + A(K6) 909 | CIIM=A(2*I)-A(K6+1) 910 | CNIRE=(-SI*(A(2*I)+A(K6+1))+CO*(A(2*I-1)-A(K6))) 911 | if (SI .ne. 0) then 912 | CNIIM=(A(2*I-1)-A(K6)-CO*CNIRE)/SI 913 | else 914 | CNIIM=0. 915 | end if 916 | A(2*I-1)=CIRE 917 | A(2*I)=CIIM 918 | A(K6)=CNIRE 919 | A(K6+1)=CNIIM 920 | SIS=SI 921 | SI=SI*SC+CO*SS 922 | CO=CO*SC-SIS*SS 923 | end do 924 | KO=NTOT+1 925 | do I=1,KO,2 926 | K1=NTOT2-I+4 927 | AP1RE=A(I)-A(K1+1) 928 | AP2RE=-(A(I+1)+A(K1)) 929 | AP1IM=A(I)+A(K1+1) 930 | AP2IM=A(I+1)-A(K1) 931 | A(I)=AP1RE 932 | A(I+1)=AP2RE 933 | A(K1)=AP1IM 934 | A(K1+1)=AP2IM 935 | end do 936 | NTOP=NTOT2+2 937 | NT00=NTOT+1 938 | A(1)=A(NTOT2+3) 939 | A(2)=A(NTOT2+4) 940 | do I=NT00,NTOP,2 941 | A(I)=A(I+2) 942 | A(I+1)=A(I+3) 943 | end do 944 | call FFT(A,L,INV,S,IFSET,IFERR) 945 | do I=1,NTOT2 946 | A(I)=A(I)*FN 947 | end do 948 | do I=2,NTOT2,2 949 | A(I)=-A(I) 950 | end do 951 | return 952 | end 953 | C************************************* 954 | subroutine XMX(X,MX,XMAX,NXMAX) 955 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 956 | C 957 | C THIS ROUTINE FIND MAX. VALUE, XMAX, AND NUMBER OF MAX. VALUE, NXMAX. 958 | C OF ARRAY X WITH MX NUMBER OF VALUES 959 | C 960 | C CODED PER B SCHNABEL OCT. 1971 961 | C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 962 | C 963 | dimension X(1) 964 | XMAX = 0. 965 | do I = 1,MX 966 | XA = ABS(X(I)) 967 | if (XMAX .le. XA) then 968 | NXMAX = I 969 | XMAX = XA 970 | end if 971 | end do 972 | return 973 | end 974 | -------------------------------------------------------------------------------- /test-data/output1.txt: -------------------------------------------------------------------------------- 1 | ***************************************************** 2 | * SHAKE -- A COMPUTER PROGRAM FOR EARTHQUAKE RESPONSE * 3 | * ANALYSIS OF HORIZONTALLY LAYERED SITES * 4 | * by: Per B. Schnabel & John Lysmer -- 1970 * 5 | * ------------------------------------------------------- * 6 | * shake85 IBM-PC version of SHAKE * 7 | * by: S.S. (Willie) Lai, January 1985 * 8 | * ------------------------------------------------------- * 9 | * shake88 : New modulus reduction curves for clays added* 10 | * using results from Sun et al (1988) * 11 | * by: J. I. Sun & Ramin Golesorkhi * 12 | * February 26, 1988 * 13 | * ------------------------------------------------------- * 14 | * SHAKE90/91: Adjust last iteration; Input now is either * 15 | * Gmax or max Vs; up to 13 material types can * 16 | * be specified by user; up to 50 Layers can * 17 | * be specified; object motion can be read in * 18 | * from a separate file and can have user * 19 | * specified format; Different periods for * 20 | * response spectral calculations; options * 21 | * are renumbered; and general cleanup * 22 | * by: J. I. Sun, I. M. Idriss & P. Dirrim * 23 | * June 1990 - February 1991 * 24 | * ------------------------------------------------------- * 25 | * SHAKE91 : General cleanup and finalization of input/ * 26 | * output format ... etc * 27 | * by: I. M. Idriss * 28 | * December 1991 * 29 | *********************************************************** 30 | MAX. NUMBER OF TERMS IN FOURIER TRANSFORM = 4096 31 | NECESSARY LENGTH OF BLANK COMMON X = 25619 32 | Option NO. 1 is started. 33 | 34 | 1****** OPTION 1 *** READ RELATION BETWEEN SOIL PROPERTIES AND STRAIN 35 | 36 | ********************** 37 | MATERIAL TYPE NO. 1 38 | ********************** 39 | 40 | CURVE NO. 1: #1 modulus for clay (seed & sun 1989) upper range 41 | CURVE NO. 2: damping for clay (Idriss 1990) - 42 | 43 | 44 | CURVE NO. 1 CURVE NO. 2 45 | =================== ================== 46 | STRAIN G/Gmax STRAIN DAMPING 47 | -------- ------- -------- -------- 48 | 0.0001 1.000 0.0001 0.24 49 | 0.0003 1.000 0.0003 0.42 50 | 0.0010 1.000 0.0010 0.80 51 | 0.0030 0.981 0.0030 1.40 52 | 0.0100 0.941 0.0100 2.80 53 | 0.0300 0.847 0.0300 5.10 54 | 0.1000 0.656 0.1000 9.80 55 | 0.3000 0.438 0.3000 15.50 56 | 1.0000 0.238 1.0000 21.00 57 | 3.0000 0.144 3.1600 25.00 58 | 10.0000 0.110 10.0000 28.00 59 | 60 | ********************** 61 | MATERIAL TYPE NO. 2 62 | ********************** 63 | 64 | CURVE NO. 3: #2 modulus for sand (seed & idriss 1970) - upper Range 65 | CURVE NO. 4: damping for sand (Idriss 1990) - (about LRng from SI 66 | 67 | 68 | CURVE NO. 3 CURVE NO. 4 69 | =================== ================== 70 | STRAIN G/Gmax STRAIN DAMPING 71 | -------- ------- -------- -------- 72 | 0.0001 1.000 0.0001 0.24 73 | 0.0003 1.000 0.0003 0.42 74 | 0.0010 0.990 0.0010 0.80 75 | 0.0030 0.960 0.0030 1.40 76 | 0.0100 0.850 0.0100 2.80 77 | 0.0300 0.640 0.0300 5.10 78 | 0.1000 0.370 0.1000 9.80 79 | 0.3000 0.180 0.3000 15.50 80 | 1.0000 0.080 1.0000 21.00 81 | 3.0000 0.050 3.0000 25.00 82 | 10.0000 0.035 10.0000 28.00 83 | 84 | ********************** 85 | MATERIAL TYPE NO. 3 86 | ********************** 87 | 88 | CURVE NO. 5: #3 ATTENUATION OF ROCK AVERAGE 89 | CURVE NO. 6: DAMPING IN ROCK 90 | 91 | 92 | CURVE NO. 5 CURVE NO. 6 93 | =================== ================== 94 | STRAIN G/Gmax STRAIN DAMPING 95 | -------- ------- -------- -------- 96 | 0.0001 1.000 0.0001 0.40 97 | 0.0003 1.000 0.0010 0.80 98 | 0.0010 0.988 0.0100 1.50 99 | 0.0030 0.952 0.1000 3.00 100 | 0.0100 0.900 1.0000 4.60 101 | 0.0300 0.810 0.0000 0.00 102 | 0.1000 0.725 0.0000 0.00 103 | 1.0000 0.550 0.0000 0.00 104 | Option NO. 1 has been concluded. 105 | Option NO. 2 is started. 106 | 107 | 1****** OPTION 2 *** READ SOIL PROFILE 108 | NEW SOIL PROFILE NO. 1 IDENTIFICATION Example -- 150-ft layer; input:Diam 109 | NUMBER OF LAYERS 17 DEPTH TO BEDROCK 150.00 110 | 111 | NO. TYPE THICKNESS DEPTH Tot. PRESS. MODULUS DAMPING UNIT WT. SHEAR VEL 112 | (ft) (ft) (ksf) (ksf) (kcf) (fps) 113 | 1 2 5.00 2.50 0.31 3882. 0.050 0.125 1000.0 114 | 2 2 5.00 7.50 0.78 3144. 0.050 0.125 900.0 115 | 3 2 10.00 15.00 1.25 3144. 0.050 0.125 900.0 116 | 4 2 10.00 25.00 1.88 3503. 0.050 0.125 950.0 117 | 5 1 10.00 35.00 2.50 3882. 0.050 0.125 1000.0 118 | 6 1 10.00 45.00 3.13 3882. 0.050 0.125 1000.0 119 | 7 1 10.00 55.00 3.75 4697. 0.050 0.125 1100.0 120 | 8 1 10.00 65.00 4.38 4697. 0.050 0.125 1100.0 121 | 9 2 10.00 75.00 5.03 6823. 0.050 0.130 1300.0 122 | 10 2 10.00 85.00 5.71 6823. 0.050 0.130 1300.0 123 | 11 2 10.00 95.00 6.38 7913. 0.050 0.130 1400.0 124 | 12 2 10.00 105.00 7.06 7913. 0.050 0.130 1400.0 125 | 13 2 10.00 115.00 7.74 9084. 0.050 0.130 1500.0 126 | 14 2 10.00 125.00 8.41 9084. 0.050 0.130 1500.0 127 | 15 2 10.00 135.00 9.09 10335. 0.050 0.130 1600.0 128 | 16 2 10.00 145.00 9.76 13081. 0.050 0.130 1800.0 129 | 17 BASE 69565. 0.010 0.140 4000.0 130 | 131 | PERIOD = 0.48 FROM AVERAGE SHEAR VELOCITY = 1253. 132 | 133 | 134 | FREQUENCY AMPLITUDE 135 | MAXIMUM AMPLIFICATION = 13.80 136 | FOR FREQUENCY = 2.32 C/SEC. 137 | PERIOD = 0.43 SEC. 138 | Option NO. 2 has been concluded. 139 | Option NO. 3 is started. 140 | 141 | 1****** OPTION 3 *** READ INPUT MOTION 142 | 143 | FILE NAME FOR INPUT MOTION = DIAM.ACC 144 | NO. OF INPUT ACC. POINTS = 1900 145 | NO. OF POINTS USED IN FFT = 4096 146 | NO. OF HEADING LINES = 3 147 | NO. OF POINTS PER LINE = 8 148 | TIME STEP FOR INPUT MOTION = 0.0200 149 | format FOR OF TIME HISTORY = (8f10.6) 150 | 151 | 152 | READING INPUT MOTION FROM ----> DIAM.ACC 153 | format OF INPUT MOTION USED --> (8f10.6) 154 | 155 | ***** H E A D E R 156 | "Loma P. Eqk","Diamond Hts","H1_90","init. vel:"," .307 c/s","disp: -0.016 cm" 157 | "Total No. of Points :",2000,"@ DT =",.02 158 | "Peak Acceleration (g) =",.1128945,"@ Time (sec) :",10.92 159 | ** FIRST & LAST 5 LINES OF INPUT MOTION ***** 160 | 161 | 1 -0.001694-0.001668-0.000086-0.001356-0.000678 0.000700-0.001209-0.000604 162 | 2 0.000730 0.000737 0.002496 0.004583 0.001644 0.001377 0.002408-0.000352 163 | 3 -0.001073-0.000359-0.000486 0.000344 0.000767-0.002507-0.003164-0.002890 164 | 4 -0.004086 0.000143 0.004340 0.003943 0.002350-0.001087-0.002345 0.001716 165 | 5 -0.001943-0.007436-0.004493 0.000827 0.002915 0.003241 0.003055 0.002658 166 | ........ INPUT MOTION READ NOT ECHOED........... 167 | 234 -0.000885-0.000806-0.001026-0.000795-0.001049-0.000340-0.000016-0.000647 168 | 235 -0.000515 0.000588-0.000315-0.000794-0.001081-0.000293 0.001415 0.001959 169 | 236 0.000800-0.000751 0.000743 0.000708 0.000867-0.000101-0.000805-0.001058 170 | 237 -0.001011-0.001037-0.001032-0.000992 0.001206 0.001623 0.001755 0.000918 171 | 238 -0.000949-0.000830-0.001072-0.000940 0.000000 0.000000 0.000000 0.000000 172 | 173 | MAXIMUM ACCELERATION = 0.11289 174 | AT TIME = 10.92 SEC 175 | THE VALUES WILL BE MULTIPLIED BY A FACTOR = 0.886 176 | TO GIVE NEW MAXIMUM ACCELERATION = 0.10000 177 | MEAN SQUARE FREQUENCY = 2.52 C/SEC. 178 | MAX ACCELERATION = 0.10000 FOR FREQUENCIES REMOVED ABOVE 25.00 C/SEC. 179 | Option NO. 3 has been concluded. 180 | Option NO. 4 is started. 181 | 1****** OPTION 4 *** READ WHERE OBJECT MOTION IS GIVEN 182 | OBJECT MOTION IN LAYER NUMBER 17 OUTCROPPING 183 | Option NO. 4 has been concluded. 184 | Option NO. 5 is started. 185 | 186 | 1****** OPTION 5 *** OBTAIN STRAIN COMPATIBLE SOIL PROPERTIES 187 | MAXIMUM NUMBER OF ITERATIONS = 8 188 | FACTOR FOR UNIFORM STRAIN IN TIME DOMAIN = 0.50 189 | 190 | 191 | 192 | + ITERATION NUMBER 1 193 | EARTHQUAKE - DIAM.ACC 194 | SOIL PROFILE - Example -- 150-ft layer; input:Diam 195 | 196 | ITERATION NUMBER 1 197 | 198 | VALUES IN TIME DOMAIN 199 | 200 | NO TYPE DEPTH UNIFRM. <---- DAMPING ----> <---- SHEAR MODULUS -----> G/Go 201 | (FT) STRAIN NEW USED ERROR NEW USED ERROR RATIO 202 | --- ---- ---- ------- ----- ------ ------ ------- ------- ------ ----- 203 | 1 2 2.5 0.00074 0.007 0.050 -607.2 3852.7 3882.0 -0.8 1.000 204 | 2 2 7.5 0.00275 0.014 0.050 -269.5 3026.0 3144.4 -3.9 1.000 205 | 3 2 15.0 0.00547 0.021 0.050 -138.3 2846.2 3144.4 -10.5 1.000 206 | 4 2 25.0 0.00804 0.025 0.050 -96.4 3047.8 3503.5 -15.0 1.000 207 | 5 1 35.0 0.00991 0.028 0.050 -79.2 3654.1 3882.0 -6.2 1.000 208 | 6 1 45.0 0.01236 0.032 0.050 -54.1 3582.5 3882.0 -8.4 1.000 209 | 7 1 55.0 0.01204 0.032 0.050 -56.8 4345.4 4697.2 -8.1 1.000 210 | 8 1 65.0 0.01367 0.035 0.050 -44.7 4294.4 4697.2 -9.4 1.000 211 | 9 2 75.0 0.01041 0.029 0.050 -73.4 5747.2 6823.0 -18.7 1.000 212 | 10 2 85.0 0.01130 0.031 0.050 -63.6 5639.9 6823.0 -21.0 1.000 213 | 11 2 95.0 0.01040 0.029 0.050 -73.5 6666.8 7913.0 -18.7 1.000 214 | 12 2 105.0 0.01094 0.030 0.050 -67.4 6590.7 7913.0 -20.1 1.000 215 | 13 2 115.0 0.00988 0.028 0.050 -79.4 7730.9 9083.9 -17.5 1.000 216 | 14 2 125.0 0.01013 0.028 0.050 -76.8 7698.0 9083.9 -18.0 1.000 217 | 15 2 135.0 0.00903 0.027 0.050 -86.5 8881.4 10335.4 -16.4 1.000 218 | 16 2 145.0 0.00716 0.024 0.050 -107.3 11517.2 13080.7 -13.6 1.000 219 | + ITERATION NUMBER 2 220 | 1 221 | EARTHQUAKE - DIAM.ACC 222 | SOIL PROFILE - Example -- 150-ft layer; input:Diam 223 | 224 | ITERATION NUMBER 2 225 | 226 | VALUES IN TIME DOMAIN 227 | 228 | NO TYPE DEPTH UNIFRM. <---- DAMPING ----> <---- SHEAR MODULUS -----> G/Go 229 | (FT) STRAIN NEW USED ERROR NEW USED ERROR RATIO 230 | --- ---- ---- ------- ----- ------ ------ ------- ------- ------ ----- 231 | 1 2 2.5 0.00079 0.007 0.007 2.8 3850.6 3852.7 -0.1 0.992 232 | 2 2 7.5 0.00303 0.014 0.014 4.1 3015.8 3026.0 -0.3 0.962 233 | 3 2 15.0 0.00640 0.023 0.021 8.0 2801.0 2846.2 -1.6 0.905 234 | 4 2 25.0 0.00980 0.028 0.025 8.3 2984.4 3047.8 -2.1 0.870 235 | 5 1 35.0 0.01117 0.030 0.028 8.0 3616.3 3654.1 -1.0 0.941 236 | 6 1 45.0 0.01419 0.035 0.032 8.2 3536.8 3582.5 -1.3 0.923 237 | 7 1 55.0 0.01377 0.035 0.032 8.1 4291.6 4345.4 -1.3 0.925 238 | 8 1 65.0 0.01577 0.038 0.035 8.0 4237.0 4294.4 -1.4 0.914 239 | 9 2 75.0 0.01300 0.033 0.029 13.9 5457.8 5747.2 -5.3 0.842 240 | 10 2 85.0 0.01431 0.036 0.031 13.9 5332.1 5639.9 -5.8 0.827 241 | 11 2 95.0 0.01285 0.033 0.029 13.3 6347.2 6666.8 -5.0 0.843 242 | 12 2 105.0 0.01357 0.034 0.030 13.1 6263.9 6590.7 -5.2 0.833 243 | 13 2 115.0 0.01195 0.032 0.028 12.2 7411.7 7730.9 -4.3 0.851 244 | 14 2 125.0 0.01239 0.032 0.028 12.9 7349.5 7698.0 -4.7 0.847 245 | 15 2 135.0 0.01100 0.030 0.027 10.6 8597.0 8881.4 -3.3 0.859 246 | 16 2 145.0 0.00864 0.026 0.024 8.3 11293.8 11517.2 -2.0 0.880 247 | + ITERATION NUMBER 3 248 | 1 249 | EARTHQUAKE - DIAM.ACC 250 | SOIL PROFILE - Example -- 150-ft layer; input:Diam 251 | 252 | ITERATION NUMBER 3 253 | 254 | VALUES IN TIME DOMAIN 255 | 256 | NO TYPE DEPTH UNIFRM. <---- DAMPING ----> <---- SHEAR MODULUS -----> G/Go 257 | (FT) STRAIN NEW USED ERROR NEW USED ERROR RATIO 258 | --- ---- ---- ------- ----- ------ ------ ------- ------- ------ ----- 259 | 1 2 2.5 0.00077 0.007 0.007 -1.1 3851.4 3850.6 0.0 0.992 260 | 2 2 7.5 0.00296 0.014 0.014 -1.3 3019.6 3015.8 0.1 0.959 261 | 3 2 15.0 0.00636 0.023 0.023 -0.3 2802.9 2801.0 0.1 0.891 262 | 4 2 25.0 0.00978 0.028 0.028 -0.1 2985.0 2984.4 0.0 0.852 263 | 5 1 35.0 0.01102 0.030 0.030 -0.9 3620.5 3616.3 0.1 0.932 264 | 6 1 45.0 0.01407 0.035 0.035 -0.5 3539.6 3536.8 0.1 0.911 265 | 7 1 55.0 0.01366 0.035 0.035 -0.5 4294.7 4291.6 0.1 0.914 266 | 8 1 65.0 0.01569 0.037 0.038 -0.3 4239.1 4237.0 0.0 0.902 267 | 9 2 75.0 0.01344 0.034 0.033 2.1 5413.7 5457.8 -0.8 0.800 268 | 10 2 85.0 0.01487 0.036 0.036 2.2 5281.8 5332.1 -1.0 0.781 269 | 11 2 95.0 0.01324 0.034 0.033 1.9 6301.6 6347.2 -0.7 0.802 270 | 12 2 105.0 0.01400 0.035 0.034 1.9 6217.1 6263.9 -0.8 0.792 271 | 13 2 115.0 0.01227 0.032 0.032 1.7 7365.9 7411.7 -0.6 0.816 272 | 14 2 125.0 0.01275 0.033 0.032 1.8 7300.1 7349.5 -0.7 0.809 273 | 15 2 135.0 0.01114 0.030 0.030 0.9 8570.9 8597.0 -0.3 0.832 274 | 16 2 145.0 0.00865 0.026 0.026 0.1 11292.2 11293.8 -0.0 0.863 275 | + ITERATION NUMBER 4 276 | 1 277 | EARTHQUAKE - DIAM.ACC 278 | SOIL PROFILE - Example -- 150-ft layer; input:Diam 279 | 280 | ITERATION NUMBER 4 281 | 282 | VALUES IN TIME DOMAIN 283 | 284 | NO TYPE DEPTH UNIFRM. <---- DAMPING ----> <---- SHEAR MODULUS -----> G/Go 285 | (FT) STRAIN NEW USED ERROR NEW USED ERROR RATIO 286 | --- ---- ---- ------- ----- ------ ------ ------- ------- ------ ----- 287 | 1 2 2.5 0.00077 0.007 0.007 -0.2 3851.5 3851.4 0.0 0.992 288 | 2 2 7.5 0.00296 0.014 0.014 -0.1 3019.9 3019.6 0.0 0.960 289 | 3 2 15.0 0.00634 0.023 0.023 -0.1 2803.6 2802.9 0.0 0.891 290 | 4 2 25.0 0.00977 0.028 0.028 -0.1 2985.6 2985.0 0.0 0.852 291 | 5 1 35.0 0.01100 0.030 0.030 -0.2 3621.4 3620.5 0.0 0.933 292 | 6 1 45.0 0.01404 0.035 0.035 -0.1 3540.3 3539.6 0.0 0.912 293 | 7 1 55.0 0.01362 0.034 0.035 -0.2 4295.8 4294.7 0.0 0.914 294 | 8 1 65.0 0.01567 0.037 0.037 -0.1 4239.6 4239.1 0.0 0.902 295 | 9 2 75.0 0.01353 0.034 0.034 0.4 5405.2 5413.7 -0.2 0.793 296 | 10 2 85.0 0.01501 0.037 0.036 0.5 5269.8 5281.8 -0.2 0.774 297 | 11 2 95.0 0.01333 0.034 0.034 0.4 6291.3 6301.6 -0.2 0.796 298 | 12 2 105.0 0.01410 0.035 0.035 0.4 6206.5 6217.1 -0.2 0.786 299 | 13 2 115.0 0.01232 0.032 0.032 0.3 7358.5 7365.9 -0.1 0.811 300 | 14 2 125.0 0.01280 0.033 0.033 0.3 7292.1 7300.1 -0.1 0.804 301 | 15 2 135.0 0.01115 0.030 0.030 0.1 8569.5 8570.9 -0.0 0.829 302 | 16 2 145.0 0.00865 0.026 0.026 -0.0 11292.4 11292.2 0.0 0.863 303 | + ITERATION NUMBER 5 304 | 1 305 | EARTHQUAKE - DIAM.ACC 306 | SOIL PROFILE - Example -- 150-ft layer; input:Diam 307 | 308 | ITERATION NUMBER 5 309 | 310 | VALUES IN TIME DOMAIN 311 | 312 | NO TYPE DEPTH UNIFRM. <---- DAMPING ----> <---- SHEAR MODULUS -----> G/Go 313 | (FT) STRAIN NEW USED ERROR NEW USED ERROR RATIO 314 | --- ---- ---- ------- ----- ------ ------ ------- ------- ------ ----- 315 | 1 2 2.5 0.00077 0.007 0.007 -0.0 3851.5 3851.5 0.0 0.992 316 | 2 2 7.5 0.00295 0.014 0.014 -0.0 3020.0 3019.9 0.0 0.960 317 | 3 2 15.0 0.00634 0.023 0.023 -0.0 2803.8 2803.6 0.0 0.892 318 | 4 2 25.0 0.00976 0.028 0.028 -0.0 2985.7 2985.6 0.0 0.852 319 | 5 1 35.0 0.01099 0.030 0.030 -0.0 3621.6 3621.4 0.0 0.933 320 | 6 1 45.0 0.01403 0.035 0.035 -0.0 3540.4 3540.3 0.0 0.912 321 | 7 1 55.0 0.01362 0.034 0.034 -0.0 4296.0 4295.8 0.0 0.915 322 | 8 1 65.0 0.01566 0.037 0.037 -0.0 4239.7 4239.6 0.0 0.903 323 | 9 2 75.0 0.01355 0.034 0.034 0.1 5403.3 5405.2 -0.0 0.792 324 | 10 2 85.0 0.01504 0.037 0.037 0.1 5266.9 5269.8 -0.1 0.772 325 | 11 2 95.0 0.01335 0.034 0.034 0.1 6288.9 6291.3 -0.0 0.795 326 | 12 2 105.0 0.01412 0.035 0.035 0.1 6204.1 6206.5 -0.0 0.784 327 | 13 2 115.0 0.01233 0.032 0.032 0.0 7357.4 7358.5 -0.0 0.810 328 | 14 2 125.0 0.01281 0.033 0.033 0.0 7291.0 7292.1 -0.0 0.803 329 | 15 2 135.0 0.01115 0.030 0.030 -0.0 8570.0 8569.5 0.0 0.829 330 | 16 2 145.0 0.00865 0.026 0.026 -0.0 11292.5 11292.4 0.0 0.863 331 | + ITERATION NUMBER 6 332 | 1 333 | EARTHQUAKE - DIAM.ACC 334 | SOIL PROFILE - Example -- 150-ft layer; input:Diam 335 | 336 | ITERATION NUMBER 6 337 | 338 | VALUES IN TIME DOMAIN 339 | 340 | NO TYPE DEPTH UNIFRM. <---- DAMPING ----> <---- SHEAR MODULUS -----> G/Go 341 | (FT) STRAIN NEW USED ERROR NEW USED ERROR RATIO 342 | --- ---- ---- ------- ----- ------ ------ ------- ------- ------ ----- 343 | 1 2 2.5 0.00077 0.007 0.007 -0.0 3851.5 3851.5 0.0 0.992 344 | 2 2 7.5 0.00295 0.014 0.014 -0.0 3020.0 3020.0 0.0 0.960 345 | 3 2 15.0 0.00634 0.023 0.023 -0.0 2803.8 2803.8 0.0 0.892 346 | 4 2 25.0 0.00976 0.028 0.028 -0.0 2985.8 2985.7 0.0 0.852 347 | 5 1 35.0 0.01099 0.030 0.030 -0.0 3621.6 3621.6 0.0 0.933 348 | 6 1 45.0 0.01403 0.035 0.035 -0.0 3540.4 3540.4 0.0 0.912 349 | 7 1 55.0 0.01362 0.034 0.034 -0.0 4296.0 4296.0 0.0 0.915 350 | 8 1 65.0 0.01566 0.037 0.037 -0.0 4239.8 4239.7 0.0 0.903 351 | 9 2 75.0 0.01355 0.034 0.034 0.0 5402.8 5403.3 -0.0 0.792 352 | 10 2 85.0 0.01505 0.037 0.037 0.0 5266.2 5266.9 -0.0 0.772 353 | 11 2 95.0 0.01336 0.034 0.034 0.0 6288.4 6288.9 -0.0 0.795 354 | 12 2 105.0 0.01413 0.035 0.035 0.0 6203.6 6204.1 -0.0 0.784 355 | 13 2 115.0 0.01233 0.032 0.032 0.0 7357.2 7357.4 -0.0 0.810 356 | 14 2 125.0 0.01281 0.033 0.033 0.0 7290.8 7291.0 -0.0 0.803 357 | 15 2 135.0 0.01115 0.030 0.030 -0.0 8570.3 8570.0 0.0 0.829 358 | 16 2 145.0 0.00865 0.026 0.026 -0.0 11292.5 11292.5 0.0 0.863 359 | + ITERATION NUMBER 7 360 | 1 361 | EARTHQUAKE - DIAM.ACC 362 | SOIL PROFILE - Example -- 150-ft layer; input:Diam 363 | 364 | ITERATION NUMBER 7 365 | 366 | VALUES IN TIME DOMAIN 367 | 368 | NO TYPE DEPTH UNIFRM. <---- DAMPING ----> <---- SHEAR MODULUS -----> G/Go 369 | (FT) STRAIN NEW USED ERROR NEW USED ERROR RATIO 370 | --- ---- ---- ------- ----- ------ ------ ------- ------- ------ ----- 371 | 1 2 2.5 0.00077 0.007 0.007 -0.0 3851.5 3851.5 0.0 0.992 372 | 2 2 7.5 0.00295 0.014 0.014 -0.0 3020.0 3020.0 0.0 0.960 373 | 3 2 15.0 0.00634 0.023 0.023 -0.0 2803.8 2803.8 0.0 0.892 374 | 4 2 25.0 0.00976 0.028 0.028 -0.0 2985.8 2985.8 0.0 0.852 375 | 5 1 35.0 0.01099 0.030 0.030 -0.0 3621.6 3621.6 0.0 0.933 376 | 6 1 45.0 0.01403 0.035 0.035 -0.0 3540.5 3540.4 0.0 0.912 377 | 7 1 55.0 0.01362 0.034 0.034 -0.0 4296.0 4296.0 0.0 0.915 378 | 8 1 65.0 0.01566 0.037 0.037 -0.0 4239.8 4239.8 0.0 0.903 379 | 9 2 75.0 0.01356 0.034 0.034 0.0 5402.7 5402.8 -0.0 0.792 380 | 10 2 85.0 0.01505 0.037 0.037 0.0 5266.0 5266.2 -0.0 0.772 381 | 11 2 95.0 0.01336 0.034 0.034 0.0 6288.2 6288.4 -0.0 0.795 382 | 12 2 105.0 0.01413 0.035 0.035 0.0 6203.4 6203.6 -0.0 0.784 383 | 13 2 115.0 0.01233 0.032 0.032 0.0 7357.2 7357.2 -0.0 0.810 384 | 14 2 125.0 0.01281 0.033 0.033 -0.0 7290.8 7290.8 0.0 0.803 385 | 15 2 135.0 0.01115 0.030 0.030 -0.0 8570.4 8570.3 0.0 0.829 386 | 16 2 145.0 0.00865 0.026 0.026 -0.0 11292.6 11292.5 0.0 0.863 387 | + ITERATION NUMBER 8 388 | 1 389 | EARTHQUAKE - DIAM.ACC 390 | SOIL PROFILE - Example -- 150-ft layer; input:Diam 391 | 392 | ITERATION NUMBER 8 393 | 394 | VALUES IN TIME DOMAIN 395 | 396 | NO TYPE DEPTH UNIFRM. <---- DAMPING ----> <---- SHEAR MODULUS -----> G/Go 397 | (FT) STRAIN NEW USED ERROR NEW USED ERROR RATIO 398 | --- ---- ---- ------- ----- ------ ------ ------- ------- ------ ----- 399 | 1 2 2.5 0.00077 0.007 0.007 -0.0 3851.5 3851.5 0.0 0.992 400 | 2 2 7.5 0.00295 0.014 0.014 -0.0 3020.0 3020.0 0.0 0.960 401 | 3 2 15.0 0.00634 0.023 0.023 -0.0 2803.8 2803.8 0.0 0.892 402 | 4 2 25.0 0.00976 0.028 0.028 -0.0 2985.8 2985.8 0.0 0.852 403 | 5 1 35.0 0.01099 0.030 0.030 -0.0 3621.7 3621.6 0.0 0.933 404 | 6 1 45.0 0.01403 0.035 0.035 -0.0 3540.5 3540.5 0.0 0.912 405 | 7 1 55.0 0.01362 0.034 0.034 -0.0 4296.0 4296.0 0.0 0.915 406 | 8 1 65.0 0.01566 0.037 0.037 -0.0 4239.8 4239.8 0.0 0.903 407 | 9 2 75.0 0.01356 0.034 0.034 0.0 5402.7 5402.7 -0.0 0.792 408 | 10 2 85.0 0.01505 0.037 0.037 0.0 5266.0 5266.0 -0.0 0.772 409 | 11 2 95.0 0.01336 0.034 0.034 0.0 6288.2 6288.2 -0.0 0.795 410 | 12 2 105.0 0.01413 0.035 0.035 0.0 6203.4 6203.4 -0.0 0.784 411 | 13 2 115.0 0.01233 0.032 0.032 -0.0 7357.2 7357.2 0.0 0.810 412 | 14 2 125.0 0.01281 0.033 0.033 -0.0 7290.8 7290.8 0.0 0.803 413 | 15 2 135.0 0.01115 0.030 0.030 -0.0 8570.4 8570.4 0.0 0.829 414 | 16 2 145.0 0.00865 0.026 0.026 -0.0 11292.6 11292.6 0.0 0.863 415 | 416 | VALUES IN TIME DOMAIN 417 | 418 | LAYER TYPE THICKNESS DEPTH MAX STRAIN MAX STRESS TIME 419 | FT FT PRCNT PSF SEC 420 | 421 | 1 2 5.0 2.5 0.00154 59.43 11.30 422 | 2 2 5.0 7.5 0.00591 178.41 11.30 423 | 3 2 10.0 15.0 0.01267 355.34 11.30 424 | 4 2 10.0 25.0 0.01952 582.77 11.30 425 | 5 1 10.0 35.0 0.02198 795.90 11.30 426 | 6 1 10.0 45.0 0.02806 993.53 11.30 427 | 7 1 10.0 55.0 0.02723 1169.91 11.30 428 | 8 1 10.0 65.0 0.03132 1328.02 11.30 429 | 9 2 10.0 75.0 0.02711 1464.83 11.30 430 | 10 2 10.0 85.0 0.03011 1585.55 11.30 431 | 11 2 10.0 95.0 0.02671 1679.90 11.30 432 | 12 2 10.0 105.0 0.02826 1752.80 11.30 433 | 13 2 10.0 115.0 0.02466 1814.66 11.52 434 | 14 2 10.0 125.0 0.02563 1868.38 11.52 435 | 15 2 10.0 135.0 0.02230 1910.82 11.52 436 | 16 2 10.0 145.0 0.01729 1952.63 11.54 437 | 438 | PERIOD = 0.52 FROM AVERAGE SHEAR VELOCITY = 1153. 439 | 440 | 441 | FREQUENCY AMPLITUDE 442 | MAXIMUM AMPLIFICATION = 20.47 443 | FOR FREQUENCY = 2.11 C/SEC. 444 | PERIOD = 0.47 SEC. 445 | Option NO. 5 has been concluded. 446 | Option NO. 6 is started. 447 | 448 | 1****** OPTION 6 *** COMPUTE MOTION IN NEW SUBLAYERS 449 | 450 | EARTHQUAKE -DIAM.ACC 451 | SOIL DEPOSIT - Example -- 150-ft layer; input:Diam 452 | LAYER DEPTH MAX. ACC. TIME MEAN SQ. FR. ACC. RATIO TH SAVED , 453 | FT G SEC C/SEC QUIET ZONE ACC. RECORD 454 | OUTCR. 0.0 0.19040 11.28 2.42 0.000 512 455 | WITHIN 5.0 0.19006 11.28 2.40 0.000 0 456 | WITHIN 10.0 0.18873 11.28 2.35 0.000 0 457 | WITHIN 20.0 0.18258 11.28 2.23 0.000 0 458 | WITHIN 30.0 0.17209 11.28 2.19 0.000 0 459 | WITHIN 40.0 0.15947 11.28 2.19 0.000 0 460 | WITHIN 50.0 0.14288 11.28 2.17 0.000 0 461 | WITHIN 60.0 0.12653 11.28 2.13 0.000 0 462 | WITHIN 70.0 0.11049 11.52 2.12 0.000 0 463 | WITHIN 80.0 0.09839 11.54 2.14 0.000 0 464 | WITHIN 90.0 0.08997 11.56 2.19 0.000 0 465 | WITHIN 100.0 0.08268 11.56 2.24 0.000 0 466 | WITHIN 110.0 0.08559 10.94 2.32 0.000 0 467 | WITHIN 120.0 0.08546 10.94 2.39 0.000 0 468 | WITHIN 130.0 0.08201 10.94 2.45 0.000 0 469 | Option NO. 6 has been concluded. 470 | Option NO. 6 is started. 471 | 472 | 1****** OPTION 6 *** COMPUTE MOTION IN NEW SUBLAYERS 473 | 474 | EARTHQUAKE -DIAM.ACC 475 | SOIL DEPOSIT - Example -- 150-ft layer; input:Diam 476 | LAYER DEPTH MAX. ACC. TIME MEAN SQ. FR. ACC. RATIO TH SAVED , 477 | FT G SEC C/SEC QUIET ZONE ACC. RECORD 478 | WITHIN 140.0 0.07769 10.92 2.48 0.000 0 479 | WITHIN 150.0 0.07616 10.92 2.48 0.000 512 480 | OUTCR. 150.0 0.10000 10.92 2.52 0.000 0 481 | Option NO. 6 has been concluded. 482 | Option NO. 7 is started. 483 | 484 | 1****** OPTION 7 *** COMPUTE STRESS/STRAIN HISTORY 485 | 486 | COMPUTE STRESS OR STRAIN HISTORY AT THE TOP OF LAYER 4 487 | SCALE FOR PLOTTING 0.0000 488 | IDENTIFICATION - -- stress in level 4 489 | 490 | COMPUTE STRESS OR STRAIN HISTORY AT THE TOP OF LAYER 4 491 | SCALE FOR PLOTTING 0.0000 492 | IDENTIFICATION - -- strain in level 4 493 | Option NO. 7 has been concluded. 494 | Option NO. 7 is started. 495 | 496 | 1****** OPTION 7 *** COMPUTE STRESS/STRAIN HISTORY 497 | 498 | COMPUTE STRESS OR STRAIN HISTORY AT THE TOP OF LAYER 8 499 | SCALE FOR PLOTTING 0.0000 500 | IDENTIFICATION - -- stress in level 8 501 | 502 | COMPUTE STRESS OR STRAIN HISTORY AT THE TOP OF LAYER 8 503 | SCALE FOR PLOTTING 0.0000 504 | IDENTIFICATION - -- strain in level 8 505 | Option NO. 7 has been concluded. 506 | Option NO. 9 is started. 507 | 508 | 1****** OPTION 9 *** COMPUTE RESPONSE SPECTRUM 509 | RESPONSE SPECTRUM ANALYSIS FOR LAYER NUMBER 1 510 | CALCULATED FOR DAMPING 0.050 511 | 512 | TIMES AT WHICH MAX. SPECTRAL VALUES OCCUR 513 | TD = TIME FOR MAX. RELATIVE DISP. 514 | TV = TIME FOR MAX. RELATIVE VEL. 515 | TA = TIME FOR MAX. ABSOLUTE ACC. 516 | DAMPING RATIO = 0.05 517 | PER = 0.01 TIMES FOR MAXIMA -- TD = 11.4800 TV = 11.2800 TA = 11.4800 518 | PER = 0.03 TIMES FOR MAXIMA -- TD = 11.3200 TV = 11.2800 TA = 11.4800 519 | PER = 0.04 TIMES FOR MAXIMA -- TD = 11.4800 TV = 11.0600 TA = 11.4800 520 | PER = 0.05 TIMES FOR MAXIMA -- TD = 11.3000 TV = 11.2800 TA = 11.3000 521 | PER = 0.06 TIMES FOR MAXIMA -- TD = 11.3000 TV = 11.2800 TA = 11.3000 522 | PER = 0.07 TIMES FOR MAXIMA -- TD = 11.3000 TV = 11.3200 TA = 11.3000 523 | PER = 0.08 TIMES FOR MAXIMA -- TD = 11.3000 TV = 11.2800 TA = 11.3000 524 | PER = 0.09 TIMES FOR MAXIMA -- TD = 11.3200 TV = 11.3400 TA = 11.3200 525 | PER = 0.10 TIMES FOR MAXIMA -- TD = 11.3200 TV = 11.3000 TA = 11.3200 526 | PER = 0.11 TIMES FOR MAXIMA -- TD = 11.5000 TV = 11.3600 TA = 11.5000 527 | PER = 0.12 TIMES FOR MAXIMA -- TD = 11.3400 TV = 11.3600 TA = 11.3400 528 | PER = 0.13 TIMES FOR MAXIMA -- TD = 11.3400 TV = 11.3800 TA = 11.3400 529 | PER = 0.14 TIMES FOR MAXIMA -- TD = 11.3400 TV = 11.3800 TA = 11.3400 530 | PER = 0.15 TIMES FOR MAXIMA -- TD = 11.4400 TV = 11.4000 TA = 11.4400 531 | PER = 0.16 TIMES FOR MAXIMA -- TD = 11.4600 TV = 11.4200 TA = 11.4600 532 | PER = 0.17 TIMES FOR MAXIMA -- TD = 11.4800 TV = 11.4400 TA = 11.4800 533 | PER = 0.18 TIMES FOR MAXIMA -- TD = 11.5000 TV = 11.4400 TA = 11.4800 534 | PER = 0.19 TIMES FOR MAXIMA -- TD = 11.5000 TV = 11.2000 TA = 11.5000 535 | PER = 0.20 TIMES FOR MAXIMA -- TD = 11.5200 TV = 11.2200 TA = 11.5200 536 | PER = 0.21 TIMES FOR MAXIMA -- TD = 11.2600 TV = 11.2200 TA = 11.2600 537 | PER = 0.22 TIMES FOR MAXIMA -- TD = 11.2800 TV = 11.2200 TA = 11.2600 538 | PER = 0.23 TIMES FOR MAXIMA -- TD = 11.5000 TV = 13.0200 TA = 11.5000 539 | PER = 0.24 TIMES FOR MAXIMA -- TD = 11.5200 TV = 13.1600 TA = 11.5200 540 | PER = 0.25 TIMES FOR MAXIMA -- TD = 13.1000 TV = 13.1600 TA = 13.1000 541 | PER = 0.26 TIMES FOR MAXIMA -- TD = 11.2800 TV = 11.2200 TA = 11.2600 542 | PER = 0.27 TIMES FOR MAXIMA -- TD = 11.4800 TV = 11.2200 TA = 11.4800 543 | PER = 0.28 TIMES FOR MAXIMA -- TD = 11.5000 TV = 11.4200 TA = 11.5000 544 | PER = 0.29 TIMES FOR MAXIMA -- TD = 11.5200 TV = 11.6000 TA = 11.5000 545 | PER = 0.30 TIMES FOR MAXIMA -- TD = 11.5200 TV = 11.6000 TA = 11.5200 546 | PER = 0.31 TIMES FOR MAXIMA -- TD = 11.5400 TV = 11.6200 TA = 11.5200 547 | PER = 0.32 TIMES FOR MAXIMA -- TD = 11.5400 TV = 11.6200 TA = 11.5200 548 | PER = 0.33 TIMES FOR MAXIMA -- TD = 11.5400 TV = 11.6200 TA = 11.5200 549 | PER = 0.34 TIMES FOR MAXIMA -- TD = 11.5400 TV = 11.6200 TA = 11.5400 550 | PER = 0.35 TIMES FOR MAXIMA -- TD = 11.5400 TV = 11.6400 TA = 11.5400 551 | PER = 0.36 TIMES FOR MAXIMA -- TD = 11.5400 TV = 11.6400 TA = 11.5400 552 | PER = 0.37 TIMES FOR MAXIMA -- TD = 11.5600 TV = 11.6600 TA = 11.5400 553 | PER = 0.38 TIMES FOR MAXIMA -- TD = 11.7800 TV = 11.8800 TA = 11.7600 554 | PER = 0.39 TIMES FOR MAXIMA -- TD = 12.4000 TV = 13.1000 TA = 12.4000 555 | PER = 0.40 TIMES FOR MAXIMA -- TD = 12.4200 TV = 12.5200 TA = 12.4200 556 | PER = 0.41 TIMES FOR MAXIMA -- TD = 12.4400 TV = 12.9400 TA = 12.4400 557 | PER = 0.42 TIMES FOR MAXIMA -- TD = 12.4600 TV = 12.5600 TA = 12.4400 558 | PER = 0.43 TIMES FOR MAXIMA -- TD = 12.4600 TV = 12.3600 TA = 12.4600 559 | PER = 0.44 TIMES FOR MAXIMA -- TD = 12.4800 TV = 12.3800 TA = 12.4800 560 | PER = 0.45 TIMES FOR MAXIMA -- TD = 12.5000 TV = 12.3800 TA = 12.4800 561 | PER = 0.46 TIMES FOR MAXIMA -- TD = 12.3000 TV = 12.4000 TA = 12.2800 562 | PER = 0.47 TIMES FOR MAXIMA -- TD = 12.3000 TV = 12.2000 TA = 12.3000 563 | PER = 0.48 TIMES FOR MAXIMA -- TD = 12.1000 TV = 12.2000 TA = 12.0800 564 | PER = 0.49 TIMES FOR MAXIMA -- TD = 12.1000 TV = 12.2200 TA = 12.1000 565 | PER = 0.50 TIMES FOR MAXIMA -- TD = 11.8800 TV = 12.2200 TA = 12.1000 566 | PER = 0.51 TIMES FOR MAXIMA -- TD = 11.8800 TV = 12.0000 TA = 12.1000 567 | PER = 0.52 TIMES FOR MAXIMA -- TD = 11.8800 TV = 12.0000 TA = 11.8800 568 | PER = 0.53 TIMES FOR MAXIMA -- TD = 11.8800 TV = 12.0000 TA = 11.8800 569 | PER = 0.54 TIMES FOR MAXIMA -- TD = 11.9000 TV = 12.0200 TA = 11.8800 570 | PER = 0.55 TIMES FOR MAXIMA -- TD = 11.9000 TV = 12.0200 TA = 11.9000 571 | PER = 0.56 TIMES FOR MAXIMA -- TD = 11.9200 TV = 11.8000 TA = 11.9000 572 | PER = 0.57 TIMES FOR MAXIMA -- TD = 11.9200 TV = 11.8000 TA = 11.9200 573 | PER = 0.58 TIMES FOR MAXIMA -- TD = 11.9200 TV = 11.8000 TA = 11.9200 574 | PER = 0.60 TIMES FOR MAXIMA -- TD = 11.9400 TV = 11.8000 TA = 11.9200 575 | PER = 0.62 TIMES FOR MAXIMA -- TD = 11.9400 TV = 11.8200 TA = 11.9400 576 | PER = 0.64 TIMES FOR MAXIMA -- TD = 11.6800 TV = 11.8200 TA = 11.6800 577 | PER = 0.66 TIMES FOR MAXIMA -- TD = 11.7000 TV = 11.8400 TA = 11.7000 578 | PER = 0.68 TIMES FOR MAXIMA -- TD = 11.7200 TV = 11.5800 TA = 11.7000 579 | PER = 0.70 TIMES FOR MAXIMA -- TD = 11.7400 TV = 11.6000 TA = 11.7200 580 | PER = 0.72 TIMES FOR MAXIMA -- TD = 11.7600 TV = 11.6000 TA = 11.7400 581 | PER = 0.74 TIMES FOR MAXIMA -- TD = 11.4800 TV = 11.6200 TA = 11.4600 582 | PER = 0.76 TIMES FOR MAXIMA -- TD = 11.4800 TV = 11.3600 TA = 11.4800 583 | PER = 0.78 TIMES FOR MAXIMA -- TD = 11.4800 TV = 11.3600 TA = 11.4800 584 | PER = 0.80 TIMES FOR MAXIMA -- TD = 11.4800 TV = 11.3600 TA = 11.4800 585 | PER = 0.82 TIMES FOR MAXIMA -- TD = 11.4800 TV = 11.3600 TA = 11.4800 586 | PER = 0.84 TIMES FOR MAXIMA -- TD = 11.4800 TV = 11.3600 TA = 11.4800 587 | PER = 0.86 TIMES FOR MAXIMA -- TD = 11.5000 TV = 11.3600 TA = 11.4800 588 | PER = 0.88 TIMES FOR MAXIMA -- TD = 11.2000 TV = 11.3600 TA = 11.2000 589 | PER = 0.90 TIMES FOR MAXIMA -- TD = 11.2000 TV = 11.3800 TA = 11.2000 590 | PER = 0.92 TIMES FOR MAXIMA -- TD = 11.2200 TV = 11.3800 TA = 11.2000 591 | PER = 0.94 TIMES FOR MAXIMA -- TD = 11.2200 TV = 11.3800 TA = 11.2000 592 | PER = 0.96 TIMES FOR MAXIMA -- TD = 11.2200 TV = 11.3800 TA = 11.2200 593 | PER = 0.98 TIMES FOR MAXIMA -- TD = 11.2400 TV = 11.3800 TA = 11.2200 594 | PER = 1.00 TIMES FOR MAXIMA -- TD = 11.2400 TV = 11.3800 TA = 11.2200 595 | PER = 1.05 TIMES FOR MAXIMA -- TD = 11.2800 TV = 11.4000 TA = 11.2600 596 | PER = 1.10 TIMES FOR MAXIMA -- TD = 11.2800 TV = 11.1400 TA = 11.2600 597 | PER = 1.15 TIMES FOR MAXIMA -- TD = 11.2800 TV = 11.1400 TA = 11.2800 598 | PER = 1.20 TIMES FOR MAXIMA -- TD = 11.3000 TV = 11.1400 TA = 11.2800 599 | PER = 1.25 TIMES FOR MAXIMA -- TD = 11.3000 TV = 11.1400 TA = 11.2800 600 | PER = 1.30 TIMES FOR MAXIMA -- TD = 11.3000 TV = 11.1400 TA = 11.2800 601 | PER = 1.35 TIMES FOR MAXIMA -- TD = 12.9000 TV = 11.1400 TA = 12.8800 602 | PER = 1.40 TIMES FOR MAXIMA -- TD = 12.3200 TV = 11.1600 TA = 12.3000 603 | PER = 1.45 TIMES FOR MAXIMA -- TD = 12.3400 TV = 11.1600 TA = 12.3200 604 | PER = 1.50 TIMES FOR MAXIMA -- TD = 11.7000 TV = 11.1600 TA = 11.6800 605 | PER = 1.55 TIMES FOR MAXIMA -- TD = 11.7200 TV = 11.1600 TA = 11.7000 606 | PER = 1.60 TIMES FOR MAXIMA -- TD = 11.7400 TV = 11.1600 TA = 11.7000 607 | PER = 1.65 TIMES FOR MAXIMA -- TD = 11.7400 TV = 12.2200 TA = 11.7200 608 | PER = 1.70 TIMES FOR MAXIMA -- TD = 11.7600 TV = 12.2200 TA = 11.7200 609 | PER = 1.75 TIMES FOR MAXIMA -- TD = 11.7600 TV = 12.2200 TA = 11.7400 610 | PER = 1.80 TIMES FOR MAXIMA -- TD = 11.7800 TV = 12.2400 TA = 11.7400 611 | PER = 1.85 TIMES FOR MAXIMA -- TD = 11.8000 TV = 11.6000 TA = 11.7600 612 | PER = 1.90 TIMES FOR MAXIMA -- TD = 11.8000 TV = 11.6000 TA = 11.7800 613 | PER = 1.95 TIMES FOR MAXIMA -- TD = 11.8200 TV = 11.6000 TA = 11.7800 614 | PER = 2.00 TIMES FOR MAXIMA -- TD = 12.0400 TV = 11.6000 TA = 12.0200 615 | PER = 2.05 TIMES FOR MAXIMA -- TD = 12.0600 TV = 11.6000 TA = 12.0400 616 | PER = 2.10 TIMES FOR MAXIMA -- TD = 12.0800 TV = 11.6200 TA = 12.0600 617 | PER = 2.15 TIMES FOR MAXIMA -- TD = 12.1000 TV = 11.6200 TA = 12.0800 618 | PER = 2.20 TIMES FOR MAXIMA -- TD = 12.1200 TV = 11.6200 TA = 12.0800 619 | PER = 2.25 TIMES FOR MAXIMA -- TD = 12.1200 TV = 11.6200 TA = 12.0800 620 | PER = 2.30 TIMES FOR MAXIMA -- TD = 12.1200 TV = 11.6200 TA = 12.1000 621 | PER = 2.35 TIMES FOR MAXIMA -- TD = 12.1400 TV = 11.6200 TA = 12.1000 622 | PER = 2.40 TIMES FOR MAXIMA -- TD = 12.1400 TV = 11.6200 TA = 12.1200 623 | PER = 2.50 TIMES FOR MAXIMA -- TD = 12.1600 TV = 11.6400 TA = 12.1200 624 | PER = 2.60 TIMES FOR MAXIMA -- TD = 12.1800 TV = 11.6400 TA = 12.1400 625 | PER = 2.70 TIMES FOR MAXIMA -- TD = 18.0800 TV = 11.6400 TA = 18.0400 626 | PER = 2.80 TIMES FOR MAXIMA -- TD = 18.1800 TV = 11.6400 TA = 18.1400 627 | PER = 2.90 TIMES FOR MAXIMA -- TD = 16.9600 TV = 11.6400 TA = 16.9200 628 | PER = 3.00 TIMES FOR MAXIMA -- TD = 17.0400 TV = 11.6400 TA = 17.0000 629 | PER = 3.10 TIMES FOR MAXIMA -- TD = 17.1400 TV = 11.6400 TA = 17.1000 630 | PER = 3.20 TIMES FOR MAXIMA -- TD = 14.3000 TV = 11.6400 TA = 14.2400 631 | PER = 3.30 TIMES FOR MAXIMA -- TD = 14.4800 TV = 11.6400 TA = 14.4600 632 | PER = 3.40 TIMES FOR MAXIMA -- TD = 14.5400 TV = 11.6400 TA = 14.4800 633 | PER = 3.50 TIMES FOR MAXIMA -- TD = 14.5800 TV = 11.6400 TA = 14.5200 634 | PER = 3.60 TIMES FOR MAXIMA -- TD = 14.6200 TV = 11.6400 TA = 14.5800 635 | PER = 3.70 TIMES FOR MAXIMA -- TD = 14.6600 TV = 11.6400 TA = 14.6200 636 | PER = 3.80 TIMES FOR MAXIMA -- TD = 14.7200 TV = 11.6400 TA = 14.6400 637 | PER = 3.90 TIMES FOR MAXIMA -- TD = 14.9000 TV = 11.6400 TA = 14.8600 638 | PER = 4.00 TIMES FOR MAXIMA -- TD = 13.3000 TV = 11.6400 TA = 11.4200 639 | PER = 4.10 TIMES FOR MAXIMA -- TD = 13.3200 TV = 11.6400 TA = 13.2800 640 | PER = 4.20 TIMES FOR MAXIMA -- TD = 13.3200 TV = 11.6400 TA = 13.2800 641 | PER = 4.30 TIMES FOR MAXIMA -- TD = 13.3400 TV = 11.6400 TA = 13.2800 642 | PER = 4.40 TIMES FOR MAXIMA -- TD = 13.3600 TV = 11.6400 TA = 13.3000 643 | PER = 4.50 TIMES FOR MAXIMA -- TD = 13.3600 TV = 11.6400 TA = 13.3000 644 | PER = 4.60 TIMES FOR MAXIMA -- TD = 13.3800 TV = 11.6400 TA = 13.3000 645 | PER = 4.70 TIMES FOR MAXIMA -- TD = 13.4000 TV = 11.6400 TA = 11.4200 646 | PER = 4.80 TIMES FOR MAXIMA -- TD = 13.7400 TV = 11.6400 TA = 11.4200 647 | PER = 4.90 TIMES FOR MAXIMA -- TD = 13.7600 TV = 11.6400 TA = 11.4200 648 | PER = 5.00 TIMES FOR MAXIMA -- TD = 13.7600 TV = 11.6400 TA = 11.4200 649 | PER = 5.10 TIMES FOR MAXIMA -- TD = 13.7800 TV = 11.6400 TA = 11.4200 650 | PER = 5.20 TIMES FOR MAXIMA -- TD = 13.8000 TV = 11.6400 TA = 11.4200 651 | PER = 5.40 TIMES FOR MAXIMA -- TD = 19.4200 TV = 11.3800 TA = 11.4200 652 | PER = 5.60 TIMES FOR MAXIMA -- TD = 19.6800 TV = 11.3800 TA = 19.6000 653 | PER = 5.80 TIMES FOR MAXIMA -- TD = 19.7800 TV = 11.3800 TA = 11.4200 654 | PER = 6.00 TIMES FOR MAXIMA -- TD = 23.3600 TV = 11.3800 TA = 11.4200 655 | PER = 6.20 TIMES FOR MAXIMA -- TD = 23.5600 TV = 11.3800 TA = 11.4200 656 | PER = 6.40 TIMES FOR MAXIMA -- TD = 23.9200 TV = 11.3800 TA = 11.4200 657 | PER = 6.60 TIMES FOR MAXIMA -- TD = 24.2000 TV = 11.3800 TA = 11.4200 658 | PER = 6.80 TIMES FOR MAXIMA -- TD = 24.4800 TV = 11.3800 TA = 11.4200 659 | PER = 7.00 TIMES FOR MAXIMA -- TD = 11.5200 TV = 11.3800 TA = 11.4200 660 | PER = 7.20 TIMES FOR MAXIMA -- TD = 11.5200 TV = 11.3800 TA = 11.4200 661 | PER = 7.40 TIMES FOR MAXIMA -- TD = 11.5200 TV = 11.3800 TA = 11.4200 662 | PER = 7.60 TIMES FOR MAXIMA -- TD = 11.5200 TV = 11.3800 TA = 11.4200 663 | PER = 7.80 TIMES FOR MAXIMA -- TD = 11.5200 TV = 11.3800 TA = 11.4200 664 | PER = 8.00 TIMES FOR MAXIMA -- TD = 11.5200 TV = 11.3800 TA = 11.4200 665 | PER = 8.50 TIMES FOR MAXIMA -- TD = 12.3600 TV = 11.3800 TA = 11.4200 666 | PER = 9.00 TIMES FOR MAXIMA -- TD = 12.3600 TV = 11.3800 TA = 11.4200 667 | PER = 9.50 TIMES FOR MAXIMA -- TD = 10.4400 TV = 11.3800 TA = 11.4200 668 | SPECTRAL VALUES -- 669 | [Acceleration of gravity used = 981.00] 670 | Example -- 150-ft layer; inpu DAMPING RATIO = 0.05 671 | NO. PERIOD REL. DISP. REL. VEL. PSU.REL.VEL. ABS. ACC. PSU.ABS.ACC. FREQ. 672 | 1 0.01 0.00047 0.00924 0.29610 0.18983 0.18965 100.00 673 | 2 0.03 0.00453 0.47937 0.94861 0.20152 0.20253 33.33 674 | 3 0.04 0.00762 0.76811 1.19668 0.19052 0.19161 25.00 675 | 4 0.05 0.01481 1.05415 1.86057 0.22653 0.23833 20.00 676 | 5 0.06 0.03395 2.24950 3.55555 0.36886 0.37955 16.67 677 | 6 0.07 0.04785 2.63825 4.29500 0.40334 0.39298 14.29 678 | 7 0.08 0.05962 2.66349 4.68247 0.38582 0.37488 12.50 679 | 8 0.09 0.09945 5.03480 6.94277 0.48405 0.49408 11.11 680 | 9 0.10 0.09603 4.25036 6.03359 0.39771 0.38644 10.00 681 | 10 0.11 0.09332 4.06867 5.33070 0.30825 0.31039 9.09 682 | 11 0.12 0.11703 4.65062 6.12770 0.31764 0.32706 8.33 683 | 12 0.13 0.16031 5.86284 7.74811 0.37731 0.38174 7.69 684 | 13 0.14 0.20146 8.06439 9.04163 0.42403 0.41365 7.14 685 | 14 0.15 0.25902 9.06110 10.84978 0.46878 0.46328 6.67 686 | 15 0.16 0.30508 8.99121 11.98061 0.48098 0.47959 6.25 687 | 16 0.17 0.33184 8.11761 12.26475 0.45969 0.46208 5.88 688 | 17 0.18 0.33359 7.59329 11.64446 0.41832 0.41434 5.56 689 | 18 0.19 0.34830 7.14111 11.51810 0.39024 0.38827 5.26 690 | 19 0.20 0.34684 7.99987 10.89631 0.34605 0.34895 5.00 691 | 20 0.21 0.36917 9.48501 11.04548 0.33744 0.33688 4.76 692 | 21 0.22 0.32302 8.33008 9.22536 0.26690 0.26858 4.55 693 | 22 0.23 0.42389 8.84671 11.57998 0.32259 0.32247 4.35 694 | 23 0.24 0.45363 8.63025 11.87599 0.31471 0.31693 4.17 695 | 24 0.25 0.44962 9.50007 11.30010 0.28920 0.28950 4.00 696 | 25 0.26 0.53194 11.36741 12.85490 0.31491 0.31667 3.85 697 | 26 0.27 0.66095 12.57518 15.38092 0.36832 0.36486 3.70 698 | 27 0.28 0.86451 13.27157 19.39946 0.44334 0.44375 3.57 699 | 28 0.29 1.00093 16.15665 21.68625 0.47802 0.47896 3.45 700 | 29 0.30 1.06696 17.37016 22.34629 0.48107 0.47708 3.33 701 | 30 0.31 1.05958 17.37610 21.47603 0.44312 0.44371 3.23 702 | 31 0.32 1.08868 17.28934 21.37621 0.42815 0.42785 3.12 703 | 32 0.33 1.22200 19.00186 23.26682 0.45269 0.45158 3.03 704 | 33 0.34 1.38794 21.10464 25.64900 0.48069 0.48317 2.94 705 | 34 0.35 1.56612 23.77474 28.11489 0.51419 0.51449 2.86 706 | 35 0.36 1.80248 27.34214 31.45929 0.56291 0.55970 2.78 707 | 36 0.37 2.06672 31.19145 35.09617 0.61097 0.60753 2.70 708 | 37 0.38 2.36450 36.28211 39.09623 0.66576 0.65896 2.63 709 | 38 0.39 2.75740 42.94630 44.42374 0.73033 0.72956 2.56 710 | 39 0.40 3.11702 47.14299 48.96197 0.78319 0.78399 2.50 711 | 40 0.41 3.31152 49.56535 50.74846 0.78965 0.79277 2.44 712 | 41 0.42 3.34911 49.07927 50.10250 0.76743 0.76405 2.38 713 | 42 0.43 3.34598 49.05818 48.89164 0.73621 0.72824 2.33 714 | 43 0.44 3.40852 49.36511 48.67361 0.70812 0.70852 2.27 715 | 44 0.45 3.45830 50.28672 48.28695 0.69114 0.68727 2.22 716 | 45 0.46 3.49656 50.52214 47.75989 0.67375 0.66499 2.17 717 | 46 0.47 3.46976 49.65595 46.38540 0.63663 0.63211 2.13 718 | 47 0.48 3.34862 47.37157 43.83330 0.58681 0.58489 2.08 719 | 48 0.49 3.18608 44.04374 40.85453 0.53719 0.53402 2.04 720 | 49 0.50 3.04459 41.48094 38.25949 0.49489 0.49009 2.00 721 | 50 0.51 3.05681 40.78749 37.65981 0.47272 0.47295 1.96 722 | 51 0.52 3.22257 41.96144 38.93851 0.48039 0.47961 1.92 723 | 52 0.53 3.45928 43.61701 41.00999 0.49972 0.49559 1.89 724 | 53 0.54 3.67493 44.90088 42.75976 0.51003 0.50717 1.85 725 | 54 0.55 3.78439 44.59724 43.23278 0.50610 0.50346 1.82 726 | 55 0.56 3.76088 44.45700 42.19693 0.48616 0.48262 1.79 727 | 56 0.57 3.66750 43.78270 40.42732 0.45545 0.45427 1.75 728 | 57 0.58 3.51470 42.26495 38.07502 0.42527 0.42046 1.72 729 | 58 0.60 3.39854 40.15445 35.58941 0.38119 0.37991 1.67 730 | 59 0.62 3.54064 41.52565 35.88140 0.37366 0.37067 1.61 731 | 60 0.64 3.91608 44.27568 38.44605 0.38789 0.38475 1.56 732 | 61 0.66 4.27776 44.50967 40.72420 0.39616 0.39520 1.52 733 | 62 0.68 4.29834 42.81704 39.71656 0.37481 0.37409 1.47 734 | 63 0.70 3.98238 41.15348 35.74581 0.32887 0.32707 1.43 735 | 64 0.72 3.44645 37.39818 30.07594 0.27071 0.26755 1.39 736 | 65 0.74 3.05526 32.84467 25.94154 0.22584 0.22453 1.35 737 | 66 0.76 2.67414 30.09224 22.10808 0.18797 0.18632 1.32 738 | 67 0.78 2.37799 27.69545 19.15555 0.15934 0.15729 1.28 739 | 68 0.80 2.24551 26.15226 17.63621 0.14305 0.14120 1.25 740 | 69 0.82 2.24033 25.70735 17.16636 0.13596 0.13408 1.22 741 | 70 0.84 2.28702 26.04063 17.10684 0.13282 0.13044 1.19 742 | 71 0.86 2.35484 26.78927 17.20452 0.13001 0.12813 1.16 743 | 72 0.88 2.48337 27.64888 17.73123 0.13007 0.12905 1.14 744 | 73 0.90 2.71257 28.53642 18.93732 0.13635 0.13477 1.11 745 | 74 0.92 2.93503 29.02282 20.04490 0.14118 0.13955 1.09 746 | 75 0.94 3.11589 28.93769 20.82735 0.14316 0.14191 1.06 747 | 76 0.96 3.23031 28.30214 21.14236 0.14215 0.14106 1.04 748 | 77 0.98 3.30177 27.24703 21.16899 0.13971 0.13835 1.02 749 | 78 1.00 3.33190 25.91723 20.93494 0.13513 0.13409 1.00 750 | 79 1.05 3.29046 22.40916 19.69009 0.12117 0.12011 0.95 751 | 80 1.10 3.18447 21.46059 18.18963 0.10667 0.10591 0.91 752 | 81 1.15 3.21002 21.73943 17.53838 0.09867 0.09768 0.87 753 | 82 1.20 3.29860 22.67484 17.27143 0.09361 0.09218 0.83 754 | 83 1.25 3.32517 23.47095 16.71412 0.08700 0.08564 0.80 755 | 84 1.30 3.33790 24.25841 16.13282 0.08085 0.07948 0.77 756 | 85 1.35 3.57951 25.25957 16.65980 0.07987 0.07904 0.74 757 | 86 1.40 4.19534 26.13011 18.82862 0.08696 0.08614 0.71 758 | 87 1.45 4.66780 26.56456 20.22668 0.09029 0.08934 0.69 759 | 88 1.50 5.09715 26.56879 21.35090 0.09224 0.09117 0.67 760 | 89 1.55 5.57680 26.29752 22.60648 0.09449 0.09341 0.65 761 | 90 1.60 5.94847 25.76613 23.35958 0.09480 0.09351 0.62 762 | 91 1.65 6.23611 27.16594 23.74705 0.09331 0.09218 0.61 763 | 92 1.70 6.40940 28.00845 23.68909 0.09037 0.08925 0.59 764 | 93 1.75 6.51082 28.18158 23.37640 0.08667 0.08556 0.57 765 | 94 1.80 6.55887 27.91710 22.89476 0.08242 0.08147 0.56 766 | 95 1.85 6.53948 27.33083 22.21016 0.07794 0.07689 0.54 767 | 96 1.90 6.46388 28.31541 21.37567 0.07286 0.07206 0.53 768 | 97 1.95 6.31024 29.00098 20.33251 0.06752 0.06678 0.51 769 | 98 2.00 6.24650 29.35645 19.62397 0.06308 0.06284 0.50 770 | 99 2.05 6.38175 29.41719 19.55986 0.06152 0.06111 0.49 771 | 100 2.10 6.47287 29.36642 19.36678 0.05956 0.05907 0.48 772 | 101 2.15 6.53689 29.21131 19.10349 0.05740 0.05691 0.47 773 | 102 2.20 6.58537 29.04413 18.80776 0.05540 0.05476 0.45 774 | 103 2.25 6.65117 28.91736 18.57358 0.05346 0.05287 0.44 775 | 104 2.30 6.70699 28.83577 18.32228 0.05173 0.05102 0.43 776 | 105 2.35 6.76193 28.76930 18.07934 0.04997 0.04927 0.43 777 | 106 2.40 6.78027 28.67108 17.75071 0.04806 0.04737 0.42 778 | 107 2.50 6.67555 28.24358 16.77749 0.04373 0.04298 0.40 779 | 108 2.60 6.34983 27.44264 15.34506 0.03857 0.03780 0.38 780 | 109 2.70 6.43320 26.32599 14.97074 0.03561 0.03551 0.37 781 | 110 2.80 6.96810 25.16653 15.63638 0.03611 0.03577 0.36 782 | 111 2.90 6.95825 24.19965 15.07586 0.03351 0.03330 0.34 783 | 112 3.00 6.94620 23.52806 14.54809 0.03131 0.03106 0.33 784 | 113 3.10 6.70756 23.13039 13.59511 0.02826 0.02809 0.32 785 | 114 3.20 6.34777 22.91013 12.46383 0.02506 0.02495 0.31 786 | 115 3.30 6.69801 22.75391 12.75299 0.02481 0.02475 0.30 787 | 116 3.40 7.08800 22.57153 13.09858 0.02486 0.02467 0.29 788 | 117 3.50 7.37013 22.30988 13.23082 0.02443 0.02421 0.29 789 | 118 3.60 7.51544 21.95364 13.11693 0.02355 0.02334 0.28 790 | 119 3.70 7.50513 21.51431 12.74490 0.02231 0.02206 0.27 791 | 120 3.80 7.35538 21.01904 12.16189 0.02071 0.02050 0.26 792 | 121 3.90 7.22313 20.49863 11.63699 0.01919 0.01911 0.26 793 | 122 4.00 7.24067 19.98169 11.37361 0.01848 0.01821 0.25 794 | 123 4.10 7.45371 19.48978 11.42270 0.01807 0.01784 0.24 795 | 124 4.20 7.60726 19.03470 11.38044 0.01764 0.01735 0.24 796 | 125 4.30 7.71986 18.62326 11.28030 0.01710 0.01680 0.23 797 | 126 4.40 7.79742 18.25385 11.13469 0.01654 0.01621 0.23 798 | 127 4.50 7.85234 17.92212 10.96394 0.01594 0.01561 0.22 799 | 128 4.60 7.89436 17.62073 10.78298 0.01534 0.01501 0.22 800 | 129 4.70 7.92062 17.33936 10.58867 0.01493 0.01443 0.21 801 | 130 4.80 8.10340 17.07220 10.60732 0.01457 0.01415 0.21 802 | 131 4.90 8.32443 16.81036 10.67427 0.01424 0.01395 0.20 803 | 132 5.00 8.51406 16.54669 10.69908 0.01394 0.01371 0.20 804 | 133 5.10 8.67670 16.27881 10.68967 0.01366 0.01342 0.20 805 | 134 5.20 8.79886 16.00116 10.63171 0.01339 0.01310 0.19 806 | 135 5.40 9.24481 15.44629 10.75683 0.01288 0.01276 0.19 807 | 136 5.60 9.71679 15.96875 10.90222 0.01256 0.01247 0.18 808 | 137 5.80 9.74610 16.50513 10.55802 0.01181 0.01166 0.17 809 | 138 6.00 9.64945 17.03540 10.10488 0.01124 0.01079 0.17 810 | 139 6.20 9.90734 17.54199 10.04026 0.01063 0.01037 0.16 811 | 140 6.40 9.73478 18.01123 9.55710 0.01001 0.00956 0.16 812 | 141 6.60 9.51966 18.43335 9.06270 0.00938 0.00879 0.15 813 | 142 6.80 9.14827 18.80371 8.45298 0.00876 0.00796 0.15 814 | 143 7.00 8.89315 19.11816 7.98247 0.00815 0.00730 0.14 815 | 144 7.20 8.65509 19.37598 7.55300 0.00756 0.00672 0.14 816 | 145 7.40 8.38636 19.58521 7.12068 0.00700 0.00616 0.14 817 | 146 7.60 8.09342 19.74487 6.69111 0.00647 0.00564 0.13 818 | 147 7.80 7.78415 19.86377 6.27041 0.00597 0.00515 0.13 819 | 148 8.00 7.46582 19.94092 5.86364 0.00551 0.00469 0.12 820 | 149 8.50 6.68983 20.00635 4.94511 0.00451 0.00373 0.12 821 | 150 9.00 6.20179 19.93506 4.32967 0.00372 0.00308 0.11 822 | 151 9.50 5.96667 19.78564 3.94628 0.00309 0.00266 0.11 823 | 152 10.00 0.00000 0.00000 0.00000 0.00000 0.00000 0.10 824 | VALUES IN PERIOD RANGE .1 to 2.5 SEC. 825 | AREA OF ACC. RESPONSE SPECTRUM = 0.459 826 | AREA OF VEL. RESPONSE SPECTRUM = 67.056 827 | MAX. ACCELERATION RESPONSE VALUE = 0.790 828 | MAX. VELOCITY RESPONSE VALUE = 50.522 829 | Option NO. 9 has been concluded. 830 | Option NO. 10 is started. 831 | 832 | 1****** OPTION 10 *** COMPUTE AMPLIFICATION FUNCTION 833 | 834 | AMPLIFICATION SPECTRUM BETWEEN LAYER 17 AND 1 835 | OUTPUT LAYER OUTCROPPING 836 | INPUT LAYER OUTCROPPING 837 | 838 | FREQUENCY AMPLITUDE 839 | 0.0000 1.0000 840 | 0.1250 1.0039 841 | 0.2500 1.0164 842 | 0.3750 1.0379 843 | 0.5000 1.0692 844 | 0.6250 1.1116 845 | 0.7500 1.1669 846 | 0.8750 1.2376 847 | 1.0000 1.3270 848 | 1.1250 1.4400 849 | 1.2500 1.5827 850 | 1.3750 1.7636 851 | 1.5000 1.9925 852 | 1.6250 2.2793 853 | 1.7500 2.6251 854 | 1.8750 3.0014 855 | 2.0000 3.3181 856 | 2.1250 3.4369 857 | 2.2500 3.2969 858 | 2.3750 2.9908 859 | 2.5000 2.6491 860 | 2.6250 2.3431 861 | 2.7500 2.0923 862 | 2.8750 1.8937 863 | 3.0000 1.7386 864 | 3.1250 1.6186 865 | 3.2500 1.5268 866 | 3.3750 1.4579 867 | 3.5000 1.4083 868 | 3.6250 1.3753 869 | 3.7500 1.3572 870 | 3.8750 1.3529 871 | 4.0000 1.3622 872 | 4.1250 1.3851 873 | 4.2500 1.4223 874 | 4.3750 1.4752 875 | 4.5000 1.5454 876 | 4.6250 1.6351 877 | 4.7500 1.7471 878 | 4.8750 1.8835 879 | 5.0000 2.0450 880 | 5.1250 2.2279 881 | 5.2500 2.4195 882 | 5.3750 2.5924 883 | 5.5000 2.7063 884 | 5.6250 2.7239 885 | 5.7500 2.6376 886 | 5.8750 2.4757 887 | 6.0000 2.2805 888 | 6.1250 2.0854 889 | 6.2500 1.9086 890 | 6.3750 1.7566 891 | 6.5000 1.6296 892 | 6.6250 1.5256 893 | 6.7500 1.4419 894 | 6.8750 1.3756 895 | 7.0000 1.3246 896 | 7.1250 1.2870 897 | 7.2500 1.2616 898 | 7.3750 1.2474 899 | 7.5000 1.2439 900 | 7.6250 1.2509 901 | 7.7500 1.2685 902 | 7.8750 1.2970 903 | 8.0000 1.3373 904 | 8.1250 1.3901 905 | 8.2500 1.4567 906 | 8.3750 1.5381 907 | 8.5000 1.6349 908 | 8.6250 1.7467 909 | 8.7500 1.8704 910 | 8.8750 1.9986 911 | 9.0000 2.1179 912 | 9.1250 2.2089 913 | 9.2500 2.2514 914 | 9.3750 2.2340 915 | 9.5000 2.1609 916 | 9.6250 2.0494 917 | 9.7500 1.9202 918 | 9.8750 1.7900 919 | 10.0000 1.6690 920 | 10.1250 1.5619 921 | 10.2500 1.4703 922 | 10.3750 1.3937 923 | 10.5000 1.3311 924 | 10.6250 1.2813 925 | 10.7500 1.2431 926 | 10.8750 1.2155 927 | 11.0000 1.1978 928 | 11.1250 1.1893 929 | 11.2500 1.1897 930 | 11.3750 1.1989 931 | 11.5000 1.2170 932 | 11.6250 1.2440 933 | 11.7500 1.2802 934 | 11.8750 1.3258 935 | 12.0000 1.3805 936 | 12.1250 1.4440 937 | 12.2500 1.5145 938 | 12.3750 1.5891 939 | 12.5000 1.6624 940 | 12.6250 1.7270 941 | 12.7500 1.7739 942 | 12.8750 1.7946 943 | 13.0000 1.7845 944 | 13.1250 1.7447 945 | 13.2500 1.6816 946 | 13.3750 1.6042 947 | 13.5000 1.5213 948 | 13.6250 1.4396 949 | 13.7500 1.3635 950 | 13.8750 1.2953 951 | 14.0000 1.2361 952 | 14.1250 1.1859 953 | 14.2500 1.1445 954 | 14.3750 1.1115 955 | 14.5000 1.0863 956 | 14.6250 1.0687 957 | 14.7500 1.0581 958 | 14.8750 1.0545 959 | 15.0000 1.0575 960 | 15.1250 1.0672 961 | 15.2500 1.0835 962 | 15.3750 1.1065 963 | 15.5000 1.1361 964 | 15.6250 1.1723 965 | 15.7500 1.2146 966 | 15.8750 1.2622 967 | 16.0000 1.3137 968 | 16.1250 1.3664 969 | 16.2500 1.4167 970 | 16.3750 1.4600 971 | 16.5000 1.4911 972 | 16.6250 1.5053 973 | 16.7500 1.5004 974 | 16.8750 1.4766 975 | 17.0000 1.4372 976 | 17.1250 1.3869 977 | 17.2500 1.3311 978 | 17.3750 1.2741 979 | 17.5000 1.2193 980 | 17.6250 1.1687 981 | 17.7500 1.1236 982 | 17.8750 1.0846 983 | 18.0000 1.0519 984 | 18.1250 1.0254 985 | 18.2500 1.0049 986 | 18.3750 0.9902 987 | 18.5000 0.9812 988 | 18.6250 0.9777 989 | 18.7500 0.9795 990 | 18.8750 0.9866 991 | 19.0000 0.9988 992 | 19.1250 1.0160 993 | 19.2500 1.0382 994 | 19.3750 1.0650 995 | 19.5000 1.0959 996 | 19.6250 1.1303 997 | 19.7500 1.1669 998 | 19.8750 1.2040 999 | 20.0000 1.2395 1000 | 20.1250 1.2706 1001 | 20.2500 1.2946 1002 | 20.3750 1.3091 1003 | 20.5000 1.3123 1004 | 20.6250 1.3041 1005 | 20.7500 1.2856 1006 | 20.8750 1.2589 1007 | 21.0000 1.2268 1008 | 21.1250 1.1919 1009 | 21.2500 1.1567 1010 | 21.3750 1.1230 1011 | 21.5000 1.0921 1012 | 21.6250 1.0651 1013 | 21.7500 1.0423 1014 | 21.8750 1.0241 1015 | 22.0000 1.0106 1016 | 22.1250 1.0020 1017 | 22.2500 0.9981 1018 | 22.3750 0.9989 1019 | 22.5000 1.0044 1020 | 22.6250 1.0144 1021 | 22.7500 1.0288 1022 | 22.8750 1.0472 1023 | 23.0000 1.0692 1024 | 23.1250 1.0940 1025 | 23.2500 1.1206 1026 | 23.3750 1.1476 1027 | 23.5000 1.1731 1028 | 23.6250 1.1949 1029 | 23.7500 1.2106 1030 | 23.8750 1.2183 1031 | 24.0000 1.2165 1032 | 24.1250 1.2048 1033 | 24.2500 1.1840 1034 | 24.3750 1.1556 1035 | 24.5000 1.1220 1036 | 24.6250 1.0854 1037 | 24.7500 1.0479 1038 | 24.8750 1.0113 1039 | MAXIMUM AMPLIFICATION = 3.44 1040 | FOR FREQUENCY = 2.12 C/SEC. 1041 | PERIOD = 0.47 SEC. 1042 | 1 PLOT OF AMPLIFICATION SPECTRA 1043 | 1044 | Option NO. 10 has been concluded. 1045 | --------------------------------------------------------------------------------