| New Reply |
Modifying iteration of DO-loop dynamically |
Share Thread | Thread Tools |
| Jan23-11, 12:53 AM | #1 |
|
|
Modifying iteration of DO-loop dynamically
I would like to change the start integer for a DO-loop each time the DO runs as a result of the calculations of the previous iteration. For example the first time the DO runs it should start at 1, the second time at 33, the third time at 60. The numerical value for the end of the loop stays the same. I have tried to change the iterator dynamically as can be seen in the code below, but the g77 gives an error.
ACS = 1 NUME = 0 DO 12, AC = ACS,NH IF (VI(AC) .NE. 100.0) THEN VF(AC) = VI(AC) GOTO 12 ELSEIF (VI(AC) .EQ. 100.0) THEN DO 80,AB = AC,AC+24 IF (VI(AB) .EQ. 100) NUME = NUME + 1 IF (VI(AB) .NE. 100) GOTO 81 80 CONTINUE 81 IF ((VI(AC-1)- VI(AC+NUME)) .GT. 0.0) THEN DO 77, VAL = AC,AC+NUME+1 VF(VAL)=VI(AC)-((VI(AC-1)-VI(AC+NUME))/(NUME+1)) 77 CONTINUE ELSEIF ((VI(AC-1)- VI(AC+NUME)) .LT. 0.0) THEN NUM = 0 DO 99, VAL = AC,AC+NUME-1 NUM = NUM + 1 VF(VAL)=VF(AC+NUM-2)+((VI(AC+NUME)-VI(AC-1))/(NUME+1)) AC = VAL -1 <=== compiler error 99 CONTINUE How can I modify AC without getting a compiler error or is an alernative logic necessary?? |
| Jan23-11, 01:02 AM | #2 |
|
|
You cannot do it with a do loop. You must construct one out of goto and if statements. You are then free to modify the dummy variable any way you like.
|
| Jan23-11, 07:27 AM | #3 |
|
Mentor
|
Or use a DO WHILE loop. The following two loops are equivalent:
Code:
do 99 k = start, stop
print *, k
99 continue
Code:
k = start
do 99 while (k .le. stop)
print *, k
k = k + 1
99 continue
|
| New Reply |
| Tags |
| do-loop, iteration, modify |
| Thread Tools | |
Similar Threads for: Modifying iteration of DO-loop dynamically
|
||||
| Thread | Forum | Replies | ||
| [SOLVED] Riding a Loop the Loop (velocity at the bottom of the loop) | Introductory Physics Homework | 13 | ||
| Special relativity - dynamically impossible process of a photon to electron+positron | Advanced Physics Homework | 1 | ||
| dynamically tuned gyro(DTG) | Mechanical Engineering | 1 | ||
| Does the PA show that DM/DE is dynamically important in the outer solar system? | Astrophysics | 18 | ||
| Dynamically Triangulating Gravity hep-th/0105267 | Beyond the Standard Model | 3 | ||