Re: [問題] SUM的指令要怎麼用
內建指令要怎樣用,建議你多看看編譯器附的線上手冊。
Intel Visual Fortran 線上手冊:
SUM
Transformational Intrinsic Function (Generic): Returns the sum of all the elements in an entire array or in a specified dimension of an array.
Syntax
result = SUM (array [, dim] [, mask])
array
(Input) Must be an array of type integer, real, or complex.
dim
(Input; optional) Must be a scalar integer with a value in the range 1 to n, where n is the rank of array.
mask
(Input; optional) Must be of type logical and conformable with array.
Results:
The result is an array or a scalar of the same data type as array.
The result is a scalar if dim is omitted or array has rank one.
The following rules apply if dim is omitted:
If SUM(array) is specified, the result is the sum of all elements of array. If array has size zero, the result is zero.
If SUM(array, MASK=mask) is specified, the result is the sum of all elements of array corresponding to true elements of mask. If array has size zero, or every element of mask has the value .FALSE., the result is zero.
The following rules apply if dim is specified:
If array has rank one, the value is the same as SUM(array [,MASK=mask]).
An array result has a rank that is one less than array, and shape (d1, d2, ..., ddim-1, ddim+1, ..., dn), where (d1, d2, ..., dn) is the shape of array.
The value of element (s1, s2, ..., sdim-1, sdim+1, ..., sn) of SUM(array, dim [,mask]) is equal to SUM(array (s1, s2, ..., sdim-1, :, sdim+1, ..., sn) [,MASK = mask (s1, s2, ..., sdim-1, :, sdim+1, ..., sn)].
See Also: PRODUCT
Examples
SUM ((/2, 3, 4/)) returns the value 9 (sum of 2 + 3 + 4). SUM ((/2, 3, 4/), DIM=1) returns the same result.
SUM (B, MASK=B .LT. 0.0) returns the arithmetic sum of the negative elements of B.
C is the array
[ 1 2 3 ]
[ 4 5 6 ].
SUM (C, DIM=1) returns the value (5, 7, 9), which is the sum of all elements in each column. 5 is the sum of 1 + 4 in column 1. 7 is the sum of 2 + 5 in column 2, and so forth.
SUM (C, DIM=2) returns the value (6, 15), which is the sum of all elements in each row. 6 is the sum of 1 + 2 + 3 in row 1. 15 is the sum of 4 + 5 + 6 in row 2.
The following shows another example:
INTEGER array (2, 3), i, j(3)
array = RESHAPE((/1, 2, 3, 4, 5, 6/), (/2, 3/))
! array is 1 3 5
! 2 4 6
i = SUM((/ 1, 2, 3 /)) ! returns 6
j = SUM(array, DIM = 1) ! returns [3 7 11]
WRITE(*,*) i, j
END
==> 本文由 "誰是接班人 <kidd007008.bbs@ptt.cc>"
> 於 news:4WiGFZ%2490G%40ptt.cc 發表
> 請問一下FORTRAN的sum指令要怎麼用
> DO J=1 , M
> if( SUM ( AMAX2(J , itemp) ) >= SUM ( SaD(J) ) then
> exit
> end if
> END DO
> 如果我想把AMAX2(J , itemp)的總和加起來
> 為什麼不能寫sum(AMAX2(J , itemp) )
> 那要怎麼改比較好 感謝
>
--
風禹科技驗證有限公司 ASP.NET Web News Reader 0.2.7 UTF-8 Beta
網站地圖 http://tlcheng.twbbs.org/wwwmap.htm
流域防洪/區域水資源/徐昇網/玫瑰圖/語音通訊 文章與程式
Basic/Fortran/Windows API/.Net/輔助說明檔 原始碼、文章與討論
微軟程式設計、系統管理使用新技術論壇討論區,網友回覆後即時簡訊、電子郵件通知:
MSDN: http://forums.microsoft.com/msdn-cht/default.aspx?siteid=14
TechNet: http://forums.microsoft.com/technet-cht/default.aspx?siteid=23
--
ASPNET News Reader http://tlcheng.twbbs.org/News/Reader.aspx
RSS 2.0 http://tlcheng.twbbs.org/News/rss2.aspx?Action=List&Newsgroup=tw.bbs.comp.language
推
11/08 23:01, , 1F
11/08 23:01, 1F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
Programming 近期熱門文章
PTT數位生活區 即時熱門文章