Intel® Fortran Compiler 18.0 Developer Guide and Reference
Statement: Marks the beginning of an ELSE WHERE block within a WHERE construct.
[name:]WHERE (mask-expr1)
[where-body-stmt]...
[ELSE WHERE(mask-expr2) [name]
[where-body-stmt]...]
[ELSE WHERE[name]
[where-body-stmt]...]
END WHERE [name]
name |
Is the name of the WHERE construct. |
mask-expr1, mask-expr2 |
Are logical array expressions (called mask expressions). |
where-body-stmt |
Is one of the following:
|
Every assignment statement following the ELSE WHERE is executed as if it were a WHERE statement with ".NOT. mask-expr1". If ELSE WHERE specifies "mask-expr2", it is executed as "(.NOT. mask-expr1) .AND. mask-expr2" during the processing of the ELSE WHERE statement.
WHERE (pressure <= 1.0)
pressure = pressure + inc_pressure
temp = temp - 5.0
ELSEWHERE
raining = .TRUE.
END WHERE
The variables temp, pressure, and raining are all arrays.