1 real :: r1, r2 2 complex :: c1, c2 3 integer :: i1, i2 4!$omp atomic write 5 c1 = 0 6!$omp atomic write 7 r2 = 0 8!$omp atomic write 9 i2 = 0 10!$omp atomic read 11 r1 = c1 12!$omp atomic read 13 c2 = r2 14!$omp atomic read 15 i1 = r2 16!$omp atomic read 17 c2 = i2 18!$omp atomic write 19 c1 = r1 20!$omp atomic write 21 r2 = c2 22!$omp atomic write 23 r2 = i1 24!$omp atomic write 25 i2 = c2 26!$omp end atomic 27!$omp atomic write 28 c1 = 1 + 2 + r1 29!$omp atomic write 30 r2 = c2 + 2 + 3 31!$omp atomic write 32 r2 = 3 + 4 + i1 33!$omp atomic write 34 i2 = c2 + 4 + 5 35!$omp atomic 36 c1 = c1 * 2. 37!$omp atomic update 38 r2 = r2 / 4 39!$omp end atomic 40!$omp atomic update 41 i2 = i2 + 8 42!$omp atomic capture 43 c1 = c1 * 2. 44 r1 = c1 45!$omp end atomic 46!$omp atomic capture 47 c2 = r2 48 r2 = r2 / 4 49!$omp end atomic 50!$omp atomic capture 51 i2 = i2 + 8 52 c2 = i2 53!$omp end atomic 54end 55