|
10 | 10 | NotebookFileLineBreakTest |
11 | 11 | NotebookFileLineBreakTest |
12 | 12 | NotebookDataPosition[ 158, 7] |
13 | | -NotebookDataLength[ 13270445, 225165] |
14 | | -NotebookOptionsPosition[ 13224098, 224529] |
15 | | -NotebookOutlinePosition[ 13224462, 224545] |
16 | | -CellTagsIndexPosition[ 13224419, 224542] |
| 13 | +NotebookDataLength[ 13270395, 225162] |
| 14 | +NotebookOptionsPosition[ 13224048, 224526] |
| 15 | +NotebookOutlinePosition[ 13224412, 224542] |
| 16 | +CellTagsIndexPosition[ 13224369, 224539] |
17 | 17 | WindowFrame->Normal*) |
18 | 18 |
|
19 | 19 | (* Beginning of Notebook Content *) |
@@ -210859,23 +210859,24 @@ TWO_PI*0.41_RK\n REAL(RK), PARAMETER :: COS1 = COS(F1)\n REAL(RK), \ |
210859 | 210859 | PARAMETER :: SIN1 = SIN(F1)\n REAL(RK), PARAMETER :: COS2 = COS(F2)\n \ |
210860 | 210860 | REAL(RK), PARAMETER :: SIN2 = SIN(F2)\n\n REAL(RK), DIMENSION(NUM) :: WIN\n\ |
210861 | 210861 | REAL(RK) :: AVE\n \n INTEGER,PARAMETER :: GRID = 251001\n \ |
210862 | | -REAL(8),DIMENSION(5,GRID) :: INPUT\n REAL(8),DIMENSION(5,GRID) :: OUTPUT\n \ |
210863 | | - INTEGER :: I\n\t\n \n\tOPEN(UNIT=10,FILE=\\\"DATA\\\",ACCESS=\\\"STREAM\ |
210864 | | -\\\",FORM=\\\"UNFORMATTED\\\")\n\tREAD(UNIT=10) INPUT\n\tCLOSE(UNIT=10)\n\n \ |
210865 | | - CALL WINDOW_(2,WIN)\n\tAVE = SUM(WIN)\n\n !$OMP PARALLEL DO\n DO \ |
210866 | | -I=1,GRID,1\n CALL FMA(AVE,WIN,INPUT(:,I),OUTPUT(:,I))\n END DO\n \ |
210867 | | -!$OMP END PARALLEL DO\n\n \ |
210868 | | -OPEN(UNIT=10,FILE=\\\"OUTPUT\\\",ACCESS=\\\"STREAM\\\",FORM=\\\"UNFORMATTED\\\ |
210869 | | -\")\n WRITE(UNIT=10) OUTPUT\n CLOSE(UNIT=10)\n\n CONTAINS\n\n \ |
210870 | | -PURE SUBROUTINE MAP(STATE)\n REAL(RK),DIMENSION(5),INTENT(INOUT) :: \ |
210871 | | -STATE\n IF (STATE(1).LT.0.5_RK) THEN\n RETURN\n END \ |
210872 | | -IF\n IF (STATE(2)**2+STATE(4)**2.GT.25.0_RK) THEN\n \ |
210873 | | -STATE(1) = 0.0_RK\n RETURN\n END IF\n STATE = [ &\n \ |
210874 | | - STATE(1),&\n \ |
210875 | | -STATE(2)*COS1+(STATE(3)+STATE(2)*STATE(2)-STATE(4)*STATE(4))*SIN1, &\n \ |
210876 | | - (STATE(3)+STATE(2)*STATE(2)-STATE(4)*STATE(4))*COS1-STATE(2)*SIN1, &\n \ |
210877 | | - STATE(4)*COS2+(STATE(5)-2.0_RK*STATE(2)*STATE(4))*SIN2, &\n \ |
210878 | | - (STATE(5)-2.0_RK*STATE(2)*STATE(4))*COS2-STATE(4)*SIN2 &\n ]\n END \ |
| 210862 | +REAL(RK),DIMENSION(5,GRID) :: INPUT\n REAL(RK),DIMENSION(5,GRID) :: OUTPUT\ |
| 210863 | +\n INTEGER :: I\n\t\n \n\t\ |
| 210864 | +OPEN(UNIT=10,FILE=\\\"DATA\\\",ACCESS=\\\"STREAM\\\",FORM=\\\"UNFORMATTED\\\")\ |
| 210865 | +\n\tREAD(UNIT=10) INPUT\n\tCLOSE(UNIT=10)\n\n CALL WINDOW_(2,WIN)\n\tAVE = \ |
| 210866 | +SUM(WIN)\n\n !$OMP PARALLEL DO\n DO I=1,GRID,1\n CALL \ |
| 210867 | +FMA(AVE,WIN,INPUT(:,I),OUTPUT(:,I))\n END DO\n !$OMP END PARALLEL DO\n\n\ |
| 210868 | + OPEN(UNIT=10,FILE=\\\"OUTPUT\\\",ACCESS=\\\"STREAM\\\",FORM=\\\"\ |
| 210869 | +UNFORMATTED\\\")\n WRITE(UNIT=10) OUTPUT\n CLOSE(UNIT=10)\n\n \ |
| 210870 | +CONTAINS\n\n PURE SUBROUTINE MAP(STATE)\n \ |
| 210871 | +REAL(RK),DIMENSION(5),INTENT(INOUT) :: STATE\n IF (STATE(1).LT.0.5_RK) \ |
| 210872 | +THEN\n RETURN\n END IF\n IF \ |
| 210873 | +(STATE(2)**2+STATE(4)**2.GT.25.0_RK) THEN\n STATE(1) = 0.0_RK\n \ |
| 210874 | + RETURN\n END IF\n STATE = [ &\n STATE(1),&\n \ |
| 210875 | + STATE(2)*COS1+(STATE(3)+STATE(2)*STATE(2)-STATE(4)*STATE(4))*SIN1, \ |
| 210876 | +&\n \ |
| 210877 | +(STATE(3)+STATE(2)*STATE(2)-STATE(4)*STATE(4))*COS1-STATE(2)*SIN1, &\n \ |
| 210878 | + STATE(4)*COS2+(STATE(5)-2.0_RK*STATE(2)*STATE(4))*SIN2, &\n \ |
| 210879 | +(STATE(5)-2.0_RK*STATE(2)*STATE(4))*COS2-STATE(4)*SIN2 &\n ]\n END \ |
210879 | 210880 | SUBROUTINE MAP\n\n PURE SUBROUTINE FMA(AVE,WIN,INP,OUT)\n \ |
210880 | 210881 | REAL(RK),INTENT(IN) :: AVE\n \ |
210881 | 210882 | REAL(RK),DIMENSION(NUM),INTENT(IN) :: WIN\n \ |
@@ -210945,9 +210946,7 @@ fma.f90\>\"", "]"}], "\n", |
210945 | 210946 | RowBox[{"(*", " ", "Clean", " ", "*)"}], "\n", |
210946 | 210947 | RowBox[{ |
210947 | 210948 | "Run", "[", "\"\<rm fma fma.f90 signal.mod DATA OUTPUT\>\"", |
210948 | | - "]"}]}]}]], "Code", |
210949 | | - CellLabel-> |
210950 | | - "In[225]:=",ExpressionUUID->"6399e0a6-9a41-48da-bad0-8e0bd3f64b3e"], |
| 210949 | + "]"}]}]}]], "Code",ExpressionUUID->"6399e0a6-9a41-48da-bad0-8e0bd3f64b3e"], |
210951 | 210950 |
|
210952 | 210951 | Cell[BoxData["251001"], "Output", |
210953 | 210952 | CellLabel-> |
@@ -217610,16 +217609,16 @@ TWO_PI*0.41_RK\n REAL(RK), PARAMETER :: COS1 = COS(F1)\n REAL(RK), \ |
217610 | 217609 | PARAMETER :: SIN1 = SIN(F1)\n REAL(RK), PARAMETER :: COS2 = COS(F2)\n \ |
217611 | 217610 | REAL(RK), PARAMETER :: SIN2 = SIN(F2)\n\n REAL(RK), DIMENSION(NUM) :: WIN\n\ |
217612 | 217611 | REAL(RK) :: AVE\n \n INTEGER,PARAMETER :: GRID = 251001\n \ |
217613 | | -REAL(8),DIMENSION(5,GRID) :: INPUT\n REAL(8),DIMENSION(5,GRID) :: OUTPUT\n \ |
217614 | | - INTEGER :: I\n\t\n \n\tOPEN(UNIT=10,FILE=\\\"DATA\\\",ACCESS=\\\"STREAM\ |
217615 | | -\\\",FORM=\\\"UNFORMATTED\\\")\n\tREAD(UNIT=10) INPUT\n\tCLOSE(UNIT=10)\n\n \ |
217616 | | - CALL WINDOW_(2,WIN)\n\tAVE = SUM(WIN)\n\n !$ACC PARALLEL LOOP \ |
217617 | | -COPYIN(AVE,WIN(NUM),INPUT(5,GRID)) COPYOUT(OUTPUT(5,GRID))\n DO I=1,GRID,1\ |
217618 | | -\n CALL FMA(AVE,WIN,INPUT(:,I),OUTPUT(:,I))\n END DO\n !$ACC END \ |
217619 | | -PARALLEL LOOP\n\n \ |
217620 | | -OPEN(UNIT=10,FILE=\\\"OUTPUT\\\",ACCESS=\\\"STREAM\\\",FORM=\\\"UNFORMATTED\\\ |
217621 | | -\")\n WRITE(UNIT=10) OUTPUT\n CLOSE(UNIT=10)\n\n CONTAINS\n\n \ |
217622 | | -PURE SUBROUTINE MAP(STATE)\n\t\t!$ACC ROUTINE SEQ\n \ |
| 217612 | +REAL(RK),DIMENSION(5,GRID) :: INPUT\n REAL(RK),DIMENSION(5,GRID) :: OUTPUT\ |
| 217613 | +\n INTEGER :: I\n\t\n \n\t\ |
| 217614 | +OPEN(UNIT=10,FILE=\\\"DATA\\\",ACCESS=\\\"STREAM\\\",FORM=\\\"UNFORMATTED\\\")\ |
| 217615 | +\n\tREAD(UNIT=10) INPUT\n\tCLOSE(UNIT=10)\n\n CALL WINDOW_(2,WIN)\n\tAVE = \ |
| 217616 | +SUM(WIN)\n\n !$ACC PARALLEL LOOP COPYIN(AVE,WIN(NUM),INPUT(5,GRID)) \ |
| 217617 | +COPYOUT(OUTPUT(5,GRID))\n DO I=1,GRID,1\n CALL \ |
| 217618 | +FMA(AVE,WIN,INPUT(:,I),OUTPUT(:,I))\n END DO\n !$ACC END PARALLEL LOOP\n\ |
| 217619 | +\n OPEN(UNIT=10,FILE=\\\"OUTPUT\\\",ACCESS=\\\"STREAM\\\",FORM=\\\"\ |
| 217620 | +UNFORMATTED\\\")\n WRITE(UNIT=10) OUTPUT\n CLOSE(UNIT=10)\n\n \ |
| 217621 | +CONTAINS\n\n PURE SUBROUTINE MAP(STATE)\n\t\t!$ACC ROUTINE SEQ\n \ |
217623 | 217622 | REAL(RK),DIMENSION(5),INTENT(INOUT) :: STATE\n IF (STATE(1).LT.0.5_RK) \ |
217624 | 217623 | THEN\n RETURN\n END IF\n IF \ |
217625 | 217624 | (STATE(2)**2+STATE(4)**2.GT.25.0_RK) THEN\n STATE(1) = 0.0_RK\n \ |
@@ -217699,9 +217698,7 @@ END IF\n END SUBROUTINE FMA\n\nEND PROGRAM FMA_ACC\n\>\""}], " ", ";"}], |
217699 | 217698 | RowBox[{ |
217700 | 217699 | "Run", "[", |
217701 | 217700 | "\"\<rm fma fma.f90 fma.o acc_signal.o signal.mod DATA OUTPUT\>\"", |
217702 | | - "]"}]}]}]], "Code", |
217703 | | - CellLabel-> |
217704 | | - "In[375]:=",ExpressionUUID->"4f536ac9-9f30-4c7a-9822-1b39dd29425f"], |
| 217701 | + "]"}]}]}]], "Code",ExpressionUUID->"4f536ac9-9f30-4c7a-9822-1b39dd29425f"], |
217705 | 217702 |
|
217706 | 217703 | Cell[BoxData["251001"], "Output", |
217707 | 217704 | CellLabel-> |
@@ -224527,8 +224524,8 @@ Cell[BoxData[ |
224527 | 224524 | }, Open ]] |
224528 | 224525 | }, Closed]] |
224529 | 224526 | }, |
224530 | | -WindowSize->{2493, 1416}, |
224531 | | -WindowMargins->{{0, Automatic}, {Automatic, 0}}, |
| 224527 | +WindowSize->{1247, 1388}, |
| 224528 | +WindowMargins->{{0, Automatic}, {0, Automatic}}, |
224532 | 224529 | Magnification:>1.5 Inherited, |
224533 | 224530 | FrontEndVersion->"12.0 for Linux x86 (64-bit) (April 8, 2019)", |
224534 | 224531 | StyleDefinitions->"Default.nb" |
@@ -225125,46 +225122,46 @@ Cell[12092744, 205367, 337, 7, 79, "Code",ExpressionUUID->"48f4bbfd-c118-4262-b4 |
225125 | 225122 | Cell[12093084, 205376, 325443, 5414, 823, "Output",ExpressionUUID->"b5eccecf-c0cf-49eb-bdf7-8c6e2876aea2"] |
225126 | 225123 | }, Open ]], |
225127 | 225124 | Cell[CellGroupData[{ |
225128 | | -Cell[12418564, 210795, 7214, 154, 4016, "Code",ExpressionUUID->"6399e0a6-9a41-48da-bad0-8e0bd3f64b3e"], |
225129 | | -Cell[12425781, 210951, 116, 2, 53, "Output",ExpressionUUID->"647ea47b-8757-42c5-8629-e79b551d17a3"], |
225130 | | -Cell[12425900, 210955, 111, 2, 53, "Output",ExpressionUUID->"43adef3b-efae-4dc6-b8f0-b91d9194616f"], |
225131 | | -Cell[12426014, 210959, 165, 4, 53, "Output",ExpressionUUID->"906c19b3-d11d-4f03-9437-02c27e203d6c"], |
225132 | | -Cell[12426182, 210965, 116, 2, 53, "Output",ExpressionUUID->"f95c6649-57f8-409b-8b4a-70e6fe88d5a7"], |
225133 | | -Cell[12426301, 210969, 116, 2, 53, "Output",ExpressionUUID->"c2e4c087-e25e-4e58-a4ae-d02eff0f9ed5"], |
225134 | | -Cell[12426420, 210973, 129, 2, 53, "Output",ExpressionUUID->"d2a53125-5ba1-428b-bf16-3fa3b54c3ef8"], |
225135 | | -Cell[12426552, 210977, 111, 2, 53, "Output",ExpressionUUID->"4befcc48-fe8d-4dc2-8016-2eeaf027b0be"] |
| 225125 | +Cell[12418564, 210795, 7190, 153, 4016, "Code",ExpressionUUID->"6399e0a6-9a41-48da-bad0-8e0bd3f64b3e"], |
| 225126 | +Cell[12425757, 210950, 116, 2, 53, "Output",ExpressionUUID->"647ea47b-8757-42c5-8629-e79b551d17a3"], |
| 225127 | +Cell[12425876, 210954, 111, 2, 53, "Output",ExpressionUUID->"43adef3b-efae-4dc6-b8f0-b91d9194616f"], |
| 225128 | +Cell[12425990, 210958, 165, 4, 53, "Output",ExpressionUUID->"906c19b3-d11d-4f03-9437-02c27e203d6c"], |
| 225129 | +Cell[12426158, 210964, 116, 2, 53, "Output",ExpressionUUID->"f95c6649-57f8-409b-8b4a-70e6fe88d5a7"], |
| 225130 | +Cell[12426277, 210968, 116, 2, 53, "Output",ExpressionUUID->"c2e4c087-e25e-4e58-a4ae-d02eff0f9ed5"], |
| 225131 | +Cell[12426396, 210972, 129, 2, 53, "Output",ExpressionUUID->"d2a53125-5ba1-428b-bf16-3fa3b54c3ef8"], |
| 225132 | +Cell[12426528, 210976, 111, 2, 53, "Output",ExpressionUUID->"4befcc48-fe8d-4dc2-8016-2eeaf027b0be"] |
225136 | 225133 | }, Open ]], |
225137 | 225134 | Cell[CellGroupData[{ |
225138 | | -Cell[12426700, 210984, 6271, 161, 1072, "Code",ExpressionUUID->"4456c187-5b11-473f-894a-c39e2a1deba8"], |
225139 | | -Cell[12432974, 211147, 383843, 6388, 823, "Output",ExpressionUUID->"d6d049ba-c71d-4b2a-841c-041a1226c091"] |
| 225135 | +Cell[12426676, 210983, 6271, 161, 1072, "Code",ExpressionUUID->"4456c187-5b11-473f-894a-c39e2a1deba8"], |
| 225136 | +Cell[12432950, 211146, 383843, 6388, 823, "Output",ExpressionUUID->"d6d049ba-c71d-4b2a-841c-041a1226c091"] |
225140 | 225137 | }, Open ]], |
225141 | 225138 | Cell[CellGroupData[{ |
225142 | | -Cell[12816854, 217540, 7550, 163, 4080, "Code",ExpressionUUID->"4f536ac9-9f30-4c7a-9822-1b39dd29425f"], |
225143 | | -Cell[12824407, 217705, 116, 2, 53, "Output",ExpressionUUID->"e5d58cd1-7585-478c-aba5-392fd10c2418"], |
225144 | | -Cell[12824526, 217709, 111, 2, 53, "Output",ExpressionUUID->"10f9cb16-bcfb-4306-aa95-1bcc0e20de60"], |
225145 | | -Cell[12824640, 217713, 165, 4, 53, "Output",ExpressionUUID->"21f8e04e-83df-410e-93c9-196167b09f75"], |
225146 | | -Cell[12824808, 217719, 116, 2, 53, "Output",ExpressionUUID->"04f2a613-d3f2-4554-af81-9889d198107f"], |
225147 | | -Cell[12824927, 217723, 116, 2, 53, "Output",ExpressionUUID->"efa2c643-f157-48f5-9336-d0924287f911"], |
225148 | | -Cell[12825046, 217727, 129, 2, 53, "Output",ExpressionUUID->"1e6db76c-e4f0-459b-bf39-f3728972dff0"], |
225149 | | -Cell[12825178, 217731, 111, 2, 53, "Output",ExpressionUUID->"4c0dc6f7-b834-4fbd-9ad2-087982e24434"] |
| 225139 | +Cell[12816830, 217539, 7524, 161, 4080, "Code",ExpressionUUID->"4f536ac9-9f30-4c7a-9822-1b39dd29425f"], |
| 225140 | +Cell[12824357, 217702, 116, 2, 53, "Output",ExpressionUUID->"e5d58cd1-7585-478c-aba5-392fd10c2418"], |
| 225141 | +Cell[12824476, 217706, 111, 2, 53, "Output",ExpressionUUID->"10f9cb16-bcfb-4306-aa95-1bcc0e20de60"], |
| 225142 | +Cell[12824590, 217710, 165, 4, 53, "Output",ExpressionUUID->"21f8e04e-83df-410e-93c9-196167b09f75"], |
| 225143 | +Cell[12824758, 217716, 116, 2, 53, "Output",ExpressionUUID->"04f2a613-d3f2-4554-af81-9889d198107f"], |
| 225144 | +Cell[12824877, 217720, 116, 2, 53, "Output",ExpressionUUID->"efa2c643-f157-48f5-9336-d0924287f911"], |
| 225145 | +Cell[12824996, 217724, 129, 2, 53, "Output",ExpressionUUID->"1e6db76c-e4f0-459b-bf39-f3728972dff0"], |
| 225146 | +Cell[12825128, 217728, 111, 2, 53, "Output",ExpressionUUID->"4c0dc6f7-b834-4fbd-9ad2-087982e24434"] |
225150 | 225147 | }, Open ]], |
225151 | 225148 | Cell[CellGroupData[{ |
225152 | | -Cell[12825326, 217738, 6271, 161, 1072, "Code",ExpressionUUID->"f426e696-a8ca-4db8-b235-5f787eef4468"], |
225153 | | -Cell[12831600, 217901, 383829, 6387, 823, "Output",ExpressionUUID->"3690aab8-3e54-4adf-95d9-d9d2a8a85f03"] |
| 225149 | +Cell[12825276, 217735, 6271, 161, 1072, "Code",ExpressionUUID->"f426e696-a8ca-4db8-b235-5f787eef4468"], |
| 225150 | +Cell[12831550, 217898, 383829, 6387, 823, "Output",ExpressionUUID->"3690aab8-3e54-4adf-95d9-d9d2a8a85f03"] |
225154 | 225151 | }, Open ]] |
225155 | 225152 | }, Closed]], |
225156 | 225153 | Cell[CellGroupData[{ |
225157 | | -Cell[13215478, 224294, 162, 3, 62, "Section",ExpressionUUID->"a830d632-f0f8-411a-a200-8f5b1ab6dd3f"], |
225158 | | -Cell[13215643, 224299, 2856, 73, 368, "Code",ExpressionUUID->"98540e27-df94-444a-979e-9e8094529ee9"], |
225159 | | -Cell[13218502, 224374, 337, 7, 112, "Code",ExpressionUUID->"d91c66e0-175d-443b-b404-b4571666f9b8"], |
225160 | | -Cell[13218842, 224383, 992, 25, 176, "Code",ExpressionUUID->"ccf70bb7-f467-4011-95be-22a6c01f3a31"], |
225161 | | -Cell[13219837, 224410, 387, 9, 112, "Code",ExpressionUUID->"985f5bf2-67f1-4567-b1ad-60ae90ecb10a"], |
| 225154 | +Cell[13215428, 224291, 162, 3, 62, "Section",ExpressionUUID->"a830d632-f0f8-411a-a200-8f5b1ab6dd3f"], |
| 225155 | +Cell[13215593, 224296, 2856, 73, 368, "Code",ExpressionUUID->"98540e27-df94-444a-979e-9e8094529ee9"], |
| 225156 | +Cell[13218452, 224371, 337, 7, 112, "Code",ExpressionUUID->"d91c66e0-175d-443b-b404-b4571666f9b8"], |
| 225157 | +Cell[13218792, 224380, 992, 25, 176, "Code",ExpressionUUID->"ccf70bb7-f467-4011-95be-22a6c01f3a31"], |
| 225158 | +Cell[13219787, 224407, 387, 9, 112, "Code",ExpressionUUID->"985f5bf2-67f1-4567-b1ad-60ae90ecb10a"], |
225162 | 225159 | Cell[CellGroupData[{ |
225163 | | -Cell[13220249, 224423, 2529, 69, 624, "Code",ExpressionUUID->"ada4c6ba-d1b7-4026-8975-2c364b659820"], |
225164 | | -Cell[13222781, 224494, 250, 5, 57, "Output",ExpressionUUID->"91d8f27f-08d0-4c62-9561-ca302d6b1ef3"], |
225165 | | -Cell[13223034, 224501, 254, 5, 57, "Output",ExpressionUUID->"7153bff7-7a14-49ce-8103-4dd7cabc0d5f"], |
225166 | | -Cell[13223291, 224508, 397, 8, 57, "Output",ExpressionUUID->"1cc2f0b4-142f-40b7-b357-f45d33d3b6c7"], |
225167 | | -Cell[13223691, 224518, 379, 7, 57, "Output",ExpressionUUID->"77bdc133-eb02-476d-82e8-62e98aafa3d0"] |
| 225160 | +Cell[13220199, 224420, 2529, 69, 624, "Code",ExpressionUUID->"ada4c6ba-d1b7-4026-8975-2c364b659820"], |
| 225161 | +Cell[13222731, 224491, 250, 5, 57, "Output",ExpressionUUID->"91d8f27f-08d0-4c62-9561-ca302d6b1ef3"], |
| 225162 | +Cell[13222984, 224498, 254, 5, 57, "Output",ExpressionUUID->"7153bff7-7a14-49ce-8103-4dd7cabc0d5f"], |
| 225163 | +Cell[13223241, 224505, 397, 8, 57, "Output",ExpressionUUID->"1cc2f0b4-142f-40b7-b357-f45d33d3b6c7"], |
| 225164 | +Cell[13223641, 224515, 379, 7, 57, "Output",ExpressionUUID->"77bdc133-eb02-476d-82e8-62e98aafa3d0"] |
225168 | 225165 | }, Open ]] |
225169 | 225166 | }, Closed]] |
225170 | 225167 | } |
|
0 commit comments