Intel® Fortran Compiler 16.0 User and Reference Guide
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.