1 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F
2006/11/12(“ú) 17:13:35
2 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/12(“ú) 17:14:45
3 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/12(“ú) 17:48:19
�@�@�R�^l l�@ƒj|Æ�@�@�@�@�@�@�@�@�@�@ ,.¤-''"..;:;:;:;:;:;:;:... `'�R¤ �@�@�i�@�@�@�i�P�@�@�P�j�@�@�@�@�@ �^....:::;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;.....�R¤�^�P�P�P�P�_�^ �@�@�@�P�@�@ �P�@�@�@�@�@�@�@�@ i�Q;;¤:�Q;¤;�Q;¤;¤;¤¤¨¯.;:;:;:;:;: /�@�@‹»�@�@F�@�@�@�@ ŒN �@,.¤-„Ÿ„Ÿ-- ¤.,_�@�@�@�@�@,¤�@�@|�@�@�@�@�@�@,,,,,,�@�@/ ;:;:;:;:;:;: |�@�@ –¡ �@ O�@�@�@ �@ �F �@�@�@�@�@�@�@�@�@�@�M`''--ƒC ,�j,¤,! '''''�@�@�@�@�@�@�@�@�_ ;;;;;;;;;_|�@�@ ‚ª �@ R�@�@�@ �@ �F �@�@�@�@�@�@�@�@�@�@�@�@�@ �S°'Þ |ËÆÆƒ…�@¬Æ,ƒjƒj¤�„ �r;; / _|�@�@ ‚ �@�@T �@�@�@�@ �@ É�@l�@ Ê�@ l�@�S ƒgƒC �M!Þl�j_j�@�@ '�@iØ__, �M�@ }ii l f'Ä�r �@ ‚é�@�@R �@�@�@ _,,.ƒm�@_É / É ƒm�@ƒmÉ!_˜¦�@| �@ l�@�@�@�M " '''�@�@ }ii ØÉ |�@�@ ‚Ì �@ A�@�@|�_�Q�Q �@�@�@�@�@ ƒm�@,¤¨'-��z=F [_�@�@ .l!�@.{�@�@�@�A�@�@�@�@ ¨!ii;}' É|�@�@ ‚©�@�@ N �@ | �@�@�@-�]''Þ_ƒm ,ƒm�@ 'Þ (¿ �@ �R�@�@ {!�@Þ°<�Ü'�@�@�@�@ ,Ði;i;}°'Þ |�@�@ ‚Ë�@�@ �@ �@ | �@�@¤ ƒBƒb�„f¢�@�@_,,“ñ-�@�@ �R.�@ }i¤�@ -=��=-'�@�@Øiii; �@ |�@�@ �H�@�@ �@ �@ | �@ �@�M�§T�k!|�@�@�@�@�@�@�@r ,_É�@_É}lli,�@�@-r=�]�@�@,i;llilili|�@�@ �„ �Q�Q�Q�Q_�^�M�R¤ �@�@ �@ Þ¤�R`!�@ l�@�@�@�Q _£�@�^/�@'}llli,�@,;i|i;,�@,,ii;ilililll'ÞØ �^ �P l l�@�@�@�@�@�@,¤ ''�ÜÞ�R�A �@�@�@�@ `Ä.¤!�@ lj�@�@�i�Q_l�A/�@ | �@ ÞÄ!llllllllllliillllllllÂÞ_¤-Þ�@ �@ /,l l�@�@ �@ �@ / �@�@�@�@�@l�@ÞÄ�A�@�@�@�@�@t'Þ | �@ |�@�@| |¤'lÄllÄllÄ "�L�@�@�@ �^/ l l �@ �@ �@ / �@�@ ,¨�A‰»§ ',�_ �@ �@ �@ l�@�r�@ | �@ | | Þ¤ /�^�È�@�@�@ �^ /�@ l l�@�@�@�@ l �i’Ü(�i¤`°'�Œ ',�@�M''t�]--'�Œ�rĤ | �@ | |. VÊœc �È�@ �^�@�@�@�@|_L¤�@�@i�@|�@�^ �P�P�P�M�N`''�[--ÆL_�@�@�@`!¤ `!�@l�P`''„¨--„¨'-'Þ-„Ÿ�c''"�L_,, ¨|�@�@l�@|/ �@�@�@�@�@�@�@�@�@�@�@ úh�@�@ �R �M ', | ‚n�M`''„Ÿ„Ÿ„Ÿ„Ÿ�c'''"�L �@‚n',Þ:¤ �@l�@|�^
‹@ŽíˆË‘¶•¶ŽšŽg‚¤‚ȃ{ƒPޏ‚¹‚ë
>>4 ‚«‚½‚Ë�[Œ¾—tŽg‚¤‚È•³–ì˜Y�I
Ž€‚Ë�I
�”’l�Ï•ª‚ªŽg‚¦‚éƒtƒŠ�[‚Ì�”’lŒvŽZƒ‰ƒCƒuƒ‰ƒŠ‚ ‚è‚Ü‚¹‚ñ‚©�H
>>6 NetLib‚Ö’r�B‚U‚UŽž‘ã‚Ì‚à‚Ì‚ª‚²‚Ü‚ñ‚Æ‚ ‚邺�B
IMSL‚ª‚ ‚é‚ñ‚¶‚á‚Ë�H
>>8 IMSL‚Í—L—¿ƒpƒbƒP�[ƒWƒ\ƒtƒg‚¾‚¼�B
IMSL‚Í10–œˆÈ�ã‚·‚é—\Š´ LAPACK‚É�Ï•ª‚͂ӂ‚Ü‚ê‚Ä‚¨‚ç‚ñ‚Ì�H
ƒRƒ“ƒpƒCƒ‰‚æ‚è�‚‚¢�E�E�E
‚±‚̃XƒŒ‚̃GƒLƒXƒp�[ƒg‚½‚¿‚Í—L—¿ƒpƒbƒP�[ƒW‚Æ‚©Žg‚Á‚Ä‚¨‚ç‚ê‚é‚̂ł·‚©�H
>>7 Netlib�s‚Á‚½‚ª�”‚ª‘½‚·‚¬‚ĉ½‚ª‚È‚ñ‚¾‚©‚í‚©‚ç‚È‚¢�B
‚±‚ê‚ð‚Ç‚¤Žg‚¦‚΂¢‚¢‚©‚·‚ç‚í‚©‚ç‚È‚¢�B
Œ©‚½Š´‚¶ƒvƒ�ƒOƒ‰ƒ€’P‘Ì‚ª—Ž‚Á‚±‚¿‚Ä‚¢‚邾‚¯‚É‚µ‚©Œ©‚¦‚È‚¢‚ª
‚Ç‚¤‚â‚Á‚Ä‚Á‚Ä‚±‚ê‚ðŒÄ‚Ñ�o‚µ‚ÄŽg‚¤‚ñ‚¾‚낤‚©�B
>>10 LAPACK‚ÍŒ³�X�ALINPACK�{EISPACK‚Å�A‚»‚ꂼ‚ê–§�s—ñ‚Ì�üŒ`•û’öŽ®‚ƌŗL’l–â‘è‚Ì
ƒ‹�[ƒ`ƒ“�W‚Ȃ̂Å�Ï•ª‚ÍŽå‘è‚©‚çŠO‚ê‚Ä‚¢‚邯Žv‚¤�B
LINPACK�AEISPACK‚Í‚U‚O”N‘ã‚̕ĉp‚Ì�‘‰Æƒvƒ�ƒWƒFƒNƒg‚¾‚Á‚½‚悤‚É‹L‰¯‚µ‚Ä‚¢‚é�i‹L‰¯žB–†‚—�j�B
LAPACK‚ÍŠî–{“I‚É‚»‚ê‚ð‚V‚V‰»‚µ‚ÄBLAS‚Ì�ã‚É“�ˆê‰»‚µ�Aˆê•”ƒAƒ‹ƒSƒŠƒYƒ€‚ð‰ü—Ç�EŠg�[‚µ‚½
‚à‚Ì‚¾‚낤�B‚»‚̕ӂ̌oˆÜ‚â�‡�˜‚͂悂킩‚ñ‚Ë�B
>>13 NetLib‚Ƃ͂»‚¤‚¢‚¤‚Æ‚±‚낾‚—�@šº‚Ì�Ï‚à‚Á‚½“y‘ Œ©‚½‚¢‚È‚à‚ñ‚¾�B
Œ‹‹Ç�A–c‘å‚·‚¬‚ĉ½‚ª—~‚µ‚¢‚©•ª‚©‚Á‚ĂȂ¢‚ÆŽg‚¦‚È‚¢‚—
NumericalRecipes‚̃y�[ƒW‚Ö�s‚Á‚Ă݂é‚Ì‚ª‹g‚©‚à‚µ‚ê‚È‚¢�B
‚Æ‚è‚ ‚¦‚¸�ê–副“I‚ɂ̓xƒXƒg‚Å–³‚¢‚É‚µ‚ë�A‘f�l‚ª”nŽ‚ÈŠO‚ê‚ðˆø‚©‚³‚ê‚邱‚Ƃ͖³‚¢‚Í‚¸�B
‚½‚¾–{”ł̃\�[ƒX‚Í‚µ‚΂µ‚ÎBug“ü‚è‚Ȃ̂ł߂‚ç‚ß‚Á‚Û‚¤Žg‚¤‚Ì‚ÍÔ³Þ§½
—L—¿ƒ\�[ƒX‚Í’¼‚Á‚Ä‚¢‚½‚è‚·‚é‚—
�‰�SŽÒ‚Í•xŽm’ʂ̃Tƒuƒ‹�[ƒ`ƒ“•t‚«ƒRƒ“ƒpƒCƒ‰”ƒ‚¤‚Ì‚ªbest‚¶‚á‚Ë�H “ïˆÕ“x‚à—\ŽZ‚à
Intel Math Kernel Library‚Åok
MKL‚Á‚Ä�Ï•ªƒ‹�[ƒ`ƒ““ü‚Á‚Ä‚é‚Ì�H
‘½•ª‚È‚¢ ‚Æ‚¢‚¤‚©�AƒtƒŠ�[‚Å—L–¼‚Ç‚±‚ë‚̃pƒbƒP�[ƒW‚É‚Í�Ï•ªƒ‹�[ƒ`ƒ“‚Í–³‚¢—\Š´
ˆÈ‰º‚̃vƒ�ƒOƒ‰ƒ€‚ðŽÀ�s‚·‚邯�A Œ‹‰Ê‚ª 1016010618 ‚ƂȂè‚Ü‚·�B ‚È‚º‚Å‚µ‚傤‚©�H–󂪕ª‚©‚è‚Ü‚¹‚ñ ŠÂ‹«‚Íg95@cygwin‚Å‚·�B program Interpolation print *,Lorentz(1.5) end program Interpolation real function Lorentz(x) real :: x Lorentz = 1/(1+25*x*x) return end
ƒ�ƒCƒ“ƒvƒ�ƒOƒ‰ƒ€‚ÉLorentz‚ÌŒ^’è‹`‚ª‚È‚¢‚©‚çintegerˆµ‚¢‚³‚ê‚Ä‚ñ‚¶‚á‚Ë�[‚Ì�H
21 �F
19 �F2006/11/13(ŒŽ) 21:30:09
implicit none‚Å‰ðŒˆ‚µ‚Ü‚µ‚½�B ‚PŽžŠÔ‚àŽžŠÔ‚ð�H‚¢‚Ü‚µ‚½�B
22 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/14(‰Î) 00:43:00
Ž©—R�‘Ž®‚Å�‘‚‚È‚çŠÖ�”�EƒTƒuƒ‹�[ƒ`ƒ“‚Í“à•”Žè‘±‚«‚É‚·‚é‚©�AMODULE‚É‚·‚é‚© INTERFACE�錾‚µ‚Ä‚©‚çŽg‚¨‚¤�B
>>20 ,22
‚ª�³‚µ‚¢�B
>>19 ‚Í‚ ‚Ü‚è‚É’†“r”¼’[�B‚«‚Á‚¿‚è‚ÆŒµŠi‚ÈF90Ž®‚Å�‘‚‚©�AF77Ž®‚ɈÖق̌^‚ðŽç‚é‚ׂ«�B
INTEL�@FORTRAN—p‚ÌBLAS/LAPACK‚¾‚ª�AAMD‚Ìcore-math-library‚ÉWindows—p‚à‚¤‚�‚³‚ê‚Ä‚¢‚é�B
�Ì‚ÍLinux—p‚̈ꕔƒ‹�[ƒ`ƒ“‚¾‚¯‚¾‚Á‚½‚ª�A‚¢‚Ü‚â‘Sƒ‹�[ƒ`ƒ“‚ð–Ô—…‚µ‚½‚悤‚¾�B
˜R‚ê‚ÍAMD‚Ȃ̂Å�A’N‚©IntelChip‚Å‚àŽg‚¦‚é‚©ŽŽ‚µ‚Ä‚‚ê�B
http://developer.amd.com/acml.jsp
25 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/14(‰Î) 15:36:00
fortran’†‚Å‘¼‚Ìexe‚ðŽÀ�s‚Å‚«‚邿‚¤‚É‚·‚é‚ɂ͂ǂ¤‚µ‚½‚ç—Ç‚¢‚Å‚·‚©�H fortran‚Å�ì‚ç‚ꂽexe‚È‚ñ‚¾‚¯‚ǃ\�[ƒX‚‚Á‚‚¯‚é‚Ì‚ª‚ß‚ñ‚Ç‚‚³‚¢‚ñ‚Å�E�E�E‚—
>>23 FORTRAN(90)‚Ì�‘�ЂÅ�A’è”Ô‚Ì•¨‚Á‚Ä‚ ‚è‚Ü‚·‚©�H
27 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/14(‰Î) 16:53:09
‚±‚ê‚©‚çƒtƒH�[ƒgƒ‰ƒ“‚ð•׋‚·‚é‚̂ł·‚ª�A ‚ƂĂà‰ð‚è‚â‚·‚¢“ü–å�‘‚ð‹³‚¦‚Ä‚¢‚¾‚½‚¯‚Ü‚¹‚ñ‚©�H ƒvƒ�ƒOƒ‰ƒ~ƒ“ƒOŽ©‘Ì�A‚ ‚Ü‚èŒoŒ±‚ª‚ ‚è‚Ü‚¹‚ñ�B ‚b‚ð�‚µ‚â‚è‚Ü‚µ‚½�B ‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·�B
28 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/14(‰Î) 18:18:30
‚˜‚Ì’l‚ð�A1,10,100,1000,10000,100000,1000000‚Ì�‡‚ɕς¦‚Ä ‚»‚Ì�í—p‘Î�”�AŽ©‘R‘Î�”‚Ì’l‚ðŒvŽZ‚µ‚Ä•\ަ‚·‚éƒvƒ�ƒOƒ‰ƒ€‚ð�ì‚ê ‚Æ‚¢‚¤‰Û‘肪�o‚½‚̂ł·‚ªƒTƒbƒpƒŠ•ª‚©‚è‚Ü‚¹‚ñ�B ‚Ç‚¤‚©‚¨—Í“Y‚¦‚‚¾‚³‚¢�B
>>24 Core Duo‚ł಺޲À
32bit ifort”ł̓Vƒ“ƒOƒ‹ƒvƒ�ƒZƒbƒT—p‚É�Å“K‰»‚³‚ê‚Ä‚¢‚é‚Ý‚½‚¢‚¾‚ª
SSE/SSE2‚ªŽg‚¦‚ê‚ÎIntel CPU‚Å‚àOK‚̂悤‚¾�B
>>25 SYSTEM ‚Æ‚©‚»‚ñ‚ÈŠ´‚¶‚ÌŠÖ�”‚È‚èƒTƒuƒ‹�[ƒ`ƒ“‚Ȃ肪—pˆÓ‚³‚ê‚Ä‚¢‚é�i‚±‚Æ‚ª‘½‚¢�j�B
>>28 X ‚Ì’l‚ð 1 ‚ɕς¦‚é�iX ‚É 1 ‚ð‘ã“ü‚·‚é�j
X = 1.
X ‚Ì�í—p‘Î�”‚ðŒvŽZ‚µ‚Ä Y ‚É‘ã“ü‚·‚é
Y = LOG10(X)
X ‚ÌŽ©‘R‘Î�”‚ðŒvŽZ‚µ‚Ä Z ‚É‘ã“ü‚·‚é
Z = LOG(X)
X, Y, Z ‚Ì’l‚ð�‡‚É•\ަ‚·‚é
WRITE(*,*) X, Y, Z
”{�¸“xŽÀ�”‚Æ4”{�¸“xŽÀ�”‚ł͎À�s‘¬“x‚͕ςí‚Á‚Ä‚µ‚Ü‚¢‚Ü‚·‚©�H
31 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/14(‰Î) 23:28:24
>>30 Ž€‚ʂقLjႤ�B�@
”{�¸“x‚܂łÍ�”’l‰‰ŽZƒvƒ�ƒZƒbƒT‚Ì�•‚¯‚Ńn�[ƒhƒEƒFƒA‰‰ŽZ‚·‚邪�A
‚S”{�¸“x‚̓\ƒtƒgƒEƒFƒA‚Å•‚“®�¬�”“_‰‰ŽZ‚ð‚·‚é‚̂Œx‚‚È‚é�B
‚U‚SBitCPU‚È‚çŽáб�󋵂͉ü‘P‚·‚邪–{Ž¿‚É‚¨‚¢‚Ă͕ςí‚ç‚È‚¢�B
DEC‚̃Aƒ‹ƒtƒ@�[CPU‚Í‚S”{�¸“x‚à”÷–‚É‘�‚©‚Á‚½‚ª�A“ÁŽê‚È–½—߃Zƒbƒg‚ª‚ ‚Á‚½‚½‚߂炵‚�A
‚U‚SbitCPU‚¾‚©‚ç‚Æ‚¢‚Á‚Ă悂Ȃé‚킯‚Å‚à‚È‚¢‚悤‚¾�B
32 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/14(‰Î) 23:31:25
>>29 DO•¶‚Å�‘‚©‚È‚¢‚Æ‚¢‚¯‚È‚¢‚̂ł·‚ª
‚Ç‚¤‚·‚ê‚΂¢‚¢‚ñ‚Å‚µ‚傤‚©�E�E
33 �F
30 �F2006/11/15(�…) 00:03:03
>>26 Žc”O‚È‚ª‚ç‚ ‚܂肢‚¢–{‚Í–³‚¢�B
�¡�AŽè‚É“ü‚è‚â‚·‚¢‚̂͂±‚ê�B
http://www.amazon.co.jp/gp/product/4563014095 ‚µ‚©‚µ�A‚e‚V‚V‚Ì•È‚ðˆø‚«‚¸‚Á‚Ä‚¢‚Ä�A‚ ‚܂肢‚¢�‘‚«•û‚ð‚µ‚Ä‚¢‚È‚¢�B
’˜ŽÒ‚Í‹ž‘å‚Ì‚¨‚Á‚³‚ñ‚炵‚�A‚v‚d‚a‚Å“¯“™‚Ì“à—e‚Ì‚à‚Ì‚ðŒ©‚ç‚ê‚é�B
ƒAƒhƒŒƒX‚̓Aƒ}ƒ]ƒ“‚̃Œƒrƒ…�[‚É�‘‚¢‚Ä‚ ‚é�B
‰pŒê‚ł悯‚ê‚Î�A‚±‚̕ӂƂ©�A
http://www.lahey.com/elfpage.htm ‚±‚̕ӂ̂d‚“‚“‚…‚Ž‚”‚‰‚�‚Œ ‚e‚�‚’‚”‚’‚�‚Ž‚ ‚½‚肪Šw�K—pƒTƒuƒZƒbƒg‚ɂȂÁ‚Ä‚¢‚Ä�A�ƒ�ˆ‚e‚X‚O‚ðŠw‚ׂé�B
http://www.fortran.com/F/books.html ‚µ‚©‚µ�AŒ»ŽÀ�¢ŠE‚ł͂e‚V‚Vƒ\�[ƒX‚ª‚ ‚Ó‚ê‚Ä‚¢‚é‚̂Ŕ÷–‚ł͂ ‚é�B
ŽÀ�Û�ã‹L‚Ì‚à‚̂͋³ˆç—p‚Æ‚µ‚Ä‚à‚Í‚â‚ç‚È‚©‚Á‚½�B
>>32 �@�@�@PROGRAM chinpopo
�@�@�@DO 10 i = 0, 6
�@�@�@ x = 10.0**REAL(i)
y = LOG10(x)
z = LOG(x)
WRITE(6, *) INT(x), y, z
10 CONTINUE
�@�@�@END
>>35
36 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/15(�…) 14:47:06
�@�@complex(8) c ‚É‚¨‚¢‚Ä�C �@�@c=(0.d0, 0.d0) ‚Æ‚µ‚Ä�‰Šú‰»‚·‚é‚Ì‚à�C �@�@c=0.d0 ‚Æ‚µ‚Ä�‰Šú‰»‚·‚é‚Ì‚à‘S‚“¯‚¶‚±‚ƂȂ̂ł·‚©�H
37 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/15(�…) 17:59:05
DO•¶‚ðŽg—p‚µ‚Ä�Cx‚Ì’l‚ð�C1,10,100,1000,10000,100000,1000000 ‚Ì�‡‚ɕς¦‚Ä ‚»‚Ì�í—p‘Î�”‚¨‚æ‚ÑŽ©‘R‘Î�”‚Ì’l‚ð ŒvŽZ‚µ‚Ä•\ަ‚·‚éƒvƒ�ƒOƒ‰ƒ€‚ð�ì‚ê�D ‚È‚¨�CŒvŽZŒ‹‰Ê‚Í�‘Ž®‚ÌŽw’è‚ð‚µ‚Ä�Cx, log10(x), log(x) ‚Ì�‡‚É•\Œ`Ž®‚Å•\ަ‚·‚邱‚Æ�D ‚Ü‚½�CŒvŽZŒ‹‰Ê‚ª�®�”‚ƂȂé‚à‚Ì‚Í�®�”Œ^(In)�CŽÀ�”‚ƂȂé‚à‚͎̂À�”Œ^(Fn.m)‚Ü‚½‚ÍŽw�”Œ^(En.m)‚Å�o—Í‚·‚邱‚Æ�D program report5 implicit none integer :: x real :: y,z write (*,*) 'x=' read (*,*) x,log(x),log10(x) do 10 i = 0.6 x=10.0**real(i) y=log(x) z=log10(x) write (6,) end do stop end program report5 ‰½�ˆ‚ª‚¨‚©‚µ‚¢‚ñ‚Å‚µ‚傤‚©?
>>37 read (*,*) x,log(x),log10(x)
‚Ç‚±‚É“ü‚ꂽ‚¢‚Ì�H
‚½‚Ô‚ñ�A‚»‚ÌŒŠ‚¶‚á‚È‚¢‚í‚æ
>>37 >read (*,*) x,log(x),log10(x)
>do 10 i = 0.6
>x=10.0**real(i)
>y=log(x)
>z=log10(x)
>write (6,)
‚±‚±‚ç•Ó‚ªŠÔˆá‚Á‚Ä‚é�B
‚Ç‚±‚ªŠÔˆá‚¢‚Ȃ̂©‚í‚©‚ç‚È‚¢‚Æ‚«‚Í�A‚Æ‚è‚ ‚¦‚¸ƒRƒ“ƒpƒCƒ‰—l‚Ƀ\�[ƒX‚ð“n‚µ‚Ä
•¶‹å‚ðŒ¾‚í‚ꂽ‚Æ‚±‚ë‚ð�ã‚©‚ç�‡‚É’¼‚µ‚Ä‚¢‚‚Ì‚à‚P‚‚̎肾�B
‚¾‚ê‚©‚‚¾‚·‚ê‚ÌŽŸƒXƒŒ—§‚ĂĂ‚ê�B
40 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/15(�…) 23:55:01
>>37 >>35 ‚ð‚à‚¤‚¢‚Á‚Ø‚ñŒ©‚ë�I
>>39 �d•¡ƒXƒŒ‚ðƒNƒ_ƒXƒŒ‚É‚·‚é‚©�H
>>40 ƒ^ƒCƒgƒ‹ˆê��‚¾‚©‚ç�¬—�‚µ‚»‚¤‚—
42 �F
37 �F2006/11/17(‹à) 10:16:25
>>35 WRITE (6,*) ‚ª•ª‚©‚è‚Ü‚¹‚ñ
>>37 ‚Ì–â‘è‚Ì�‘Ž®‚ÌŽw’è‚Í‚±‚ê‚Å‚¢‚¢‚ñ‚Å‚µ‚傤‚©
43 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/17(‹à) 11:23:12
WRITE(6,�@'(I10, F15.7, F15.7)') x, y, z ‚à‚¤�‚µ‹³‰È�‘‰Å�I�I ‚±‚ñ‚ÈŠ´‚¶‚Å‚—
>>37 ‚ª‚ñ‚΂Á‚½‚¯‚Ç�‘Ž®‚ª‚¤‚Ü‚‚¢‚©‚È‚©‚Á‚½�BƒSƒ�ƒ“
c DO•¶‚ðŽg—p‚µ‚Ä�Cx‚Ì’l‚ð�C
c 1,10,100,1000,10000,100000,1000000 ‚Ì�‡‚ɕς¦‚Ä
c ‚»‚Ì�í—p‘Î�”‚¨‚æ‚ÑŽ©‘R‘Î�”‚Ì’l‚ð ŒvŽZ‚µ‚Ä•\ަ‚·‚é
c ŒvŽZŒ‹‰Ê‚Í�‘Ž®‚ÌŽw’è‚ð‚µ‚Ä�Cx, log10(x), log(x) ‚Ì�‡‚É
c ŒvŽZŒ‹‰Ê‚ª�®�”‚ƂȂé‚à‚Ì‚Í�®�”Œ^(In)�C
c ŽÀ�”‚ƂȂé‚à‚͎̂À�”Œ^(Fn.m)‚Ü‚½‚ÍŽw�”Œ^(En.m)‚Å�o—Í�D
Program report5
Implicit none
INTEGER i
REAL x
do i = 0, 6
x = 10.0**i
write(*, *) aint(x), log10(x), log(x)
end do
stop
end
c ŽÀ�sŒ‹‰Ê
c 1.00000 0.000000E+00 0.000000E+00
c 10.0000 1.00000 2.30259
c 100.000 2.00000 4.60517
c 1000.00 3.00000 6.90776
c 10000.0 4.00000 9.21034
c 100000. 5.00000 11.5129
c 0.100000E+07 6.00000 13.8155
45 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/17(‹à) 12:28:48
program report5 implicit none integer :: x real :: y,z write (*,*) 'x=' DO 10 i = 0, 6 x = 10.0**REAL(i) y = LOG10(x) z = LOG(x) WRITE(6,�@'(I10, F15.7, F15.7)') x, y, z 10 CONTINUE END do stop end program report5 ‚±‚¤‚Å‚·‚©?
46 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/17(‹à) 17:12:34
Program report5 Implicit none real :: i,x do i=0, 6 x=10.0**i write(*, '(i7, f15.7 f15.7)') x, log10(x), log(x) end do stop end Œ‹‰Ê ******* 0.0000000 0.0000000 ******* 1.0000000 2.3025851 ******* 2.0000000 4.6051702 ******* 3.0000000 6.9077554 ******* 4.0000000 9.2103405 ******* 5.0000000 11.5129251 ******* 6.0000000 13.8155107 ‚¨‚©‚°‚³‚܂ł±‚±‚Ü‚Å�o—ˆ‚½‚ñ‚Å‚·‚ª�A‚Ç‚¤‚µ‚Ä‚à*******‚ª�o‚Ä‚µ‚Ü‚¢‚Ü‚·�„�ƒ
>>46 �u•Ï�”‚ÌŒ^�v‚ð�ĕ׋‚µ‚Ä‚©‚ç�o’¼‚µ‚Ä‚±‚¢�B
>>46 write(*, '(i7, f15.7 f15.7)') x, log10(x), log(x)
�@�@�@�«
write(*, '(f15.7, f15.7 f15.7)') x, log10(x), log(x)
‚É‚µ‚Ă݂悤�E�E�E
x‚Íreal‚Å�錾‚³‚ê‚Ă邩‚çformat‚ð�®�”•\ަ‚ÉŽw’è‚·‚邱‚Ƃ͂ł«‚È‚¢�D
49 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/18(“y) 00:44:07
>>48 >>37 ‚Ì–â‘è‚ð“ǂފ´‚¶‚Å‚Í�A
write(*, '(i7, f15.7 f15.7)') int(x), log10(x), log(x)
‚ð—\Šú‚µ‚Ä‚¢‚邯Žv‚í‚ê‚é�B
>>46 ‚Í‚à‚¤�‚µ–á‚Á‚½‰ñ“š—á‚ð‚æ‚‹á–¡‚µ‚ë‚—
50 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/18(“y) 01:00:15
f90ƒXƒ^ƒCƒ‹‚ÅŠw‚ׂ邢‚¢•¶�‘‚Í‚ ‚è‚Ü‚¹‚ñ‚©‚Ë�B ‰pŒê‚©“ú–{Œê‚Å‚¨Šè‚¢
53 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/18(“y) 21:18:26
>>52 �„�„�§‚·‚é�‘‚«•û real:: x(n), y(n)
�„x(1:n) = y(1:n)
�„
�„
�„�~�„�§‚µ‚È‚¢�‘‚«•û x(:) = y(:) ‚Ü‚½‚Í x = y
‚±‚ê‚Í‚©‚Ȃ肤‚»�L‚¢‚ÆŽv‚¤�B
‚˜��‚™�@‚Ì�ê�‡‚ƈá‚Á‚Ä�AƒRƒ�ƒ“Žw’èŽq‚ðŽg‚¤‚Æ�A‚¢‚Á‚½‚ñˆÃ‚ɃRƒ“ƒpƒCƒ‰‚ª
ƒeƒ“ƒ|ƒ‰ƒŠ”z—ñ‚ɃRƒs�[‚·‚é‚̂ł½‚¢‚Ä‚¢—]•ª‚ÈŽžŠÔ‚ª‚©‚©‚é�B
‚µ‚©‚µ˜R‚ꂪ‹^–â‚ÉŽv‚¤‚Ì‚Í�AF77‚ł͕Ï�”‚Æ”z—ñ‚É“¯‚¶–¼‘O‚ðA‚ÆA(10)‚ðŽw’è‚Å‚«‚Ä
•Ê•¨‚Ɉµ‚í‚ê‚é—l‚É‹KŠi‚ÅŒˆ‚Ü‚Á‚Ä‚¢‚½‚ÆŽv‚¤‚Ì‚¾‚ª�AF90‚Å–µ�‚‚ª‹N‚«‚È‚¢‚Ì‚©�E�E�E
‚»‚ê‚Æ‚à�A‚±‚ê‚ÍJIS‹KŠi‚¾‚¯‚ÅANSI‚âMIL‚ł͈á‚Á‚Ä‚¢‚½‚Ì‚©�H
>>53 REAL A
DIMENSION A(10)
DO 10 I=1,10
A(I) = REAL(I)
10 CONTINUE
A = 1.23
WRITE(*,*) A
WRITE(*,*) (A(I), I=1,10)
END
‹KŠi�ã‚Ç‚¤‚È‚Á‚Ä‚½‚©‚Í’m‚ç‚È‚¢‚ª g77‚¾‚Æ
A = 1.23
‚Ì•”•ª‚ŃRƒ“ƒpƒCƒ‹ƒGƒ‰�[‚ɂȂÁ‚½�B
g95‚Å‚Í�i“–‘R�j
55 �F
54 �F2006/11/18(“y) 22:12:21
�~ g95‚Å‚Í�i“–‘R�j �› g95‚Å‚Í�i“–‘R�j A ‚Í”z—ñ‘S‘̂ƉðŽß‚³‚ꂽ�B
56 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/18(“y) 23:02:07
>>54 ‚»‚¤‚¶‚á‚È‚‚Ä
REAL A, A(10)
‚ª‰Â”\‚¾‚Á‚½‚ÆŽv‚¤�B
hoge.f: In program `MAIN__': hoge.f:1: �@�@�@�@ REAL A,A(10) �@�@�@�@�@�@�@�@�@1 2 Invalid declaration of or reference to symbol `a' at (2) [initially seen at (1)]
58 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/19(“ú) 01:39:12
‚½‚µ‚©•Ï�”–¼‚Æ”z—ñ–¼‚Í‹KŠi�ã‚Ì’è‹`‚ł͕ʕ¨‚¾‚Á‚½‹L‰¯‚ª‚ ‚é�B ŽÀ�ۂ̃Rƒ“ƒpƒCƒ‰‚łǂ¤‚È‚Á‚Ä‚¢‚½‚©‚Í’m‚ç‚ñ�B
Fortran90‚È‚ñ‚Å‚·‚ª�C integer a(1:100)=0 ‚Ý‚½‚È�‰Šú‰»‚ÌŽd•û‚͂悂â‚é‚ñ‚Å‚·‚©�H
�~‚Ý‚½‚È �›‚Ý‚½‚¢‚È orz
61 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/20(ŒŽ) 09:01:16
>>60 ‚æ‚‚â‚é�B
‚µ‚©‚µ‚»‚Ì�‰Šú‰»‚ÍƒŠƒ“ƒN�Eƒ��[ƒhŽž‚É�s‚í‚ê‚é‚à‚̂Ȃ̂Å�A
ŽÀ�s�s‚Åa(1:100)=0‚Æ�‘‚‚̂Ƃ͔÷–‚ɈႤ�B
62 �F
59 �F2006/11/20(ŒŽ) 15:25:10
integer a(1:100)=0 �ª‚±‚ê‚Á‚Ä’Ê‚é�H integer::�@‚¶‚á‚È‚¢‚Æ’Ê‚ç‚È‚©‚Á‚½‹C‚ª�B
64 �F
Ž¿–â1/3 �F2006/11/20(ŒŽ) 18:45:56
ŠgŽU•û’öŽ®‚Ì‹«ŠE’l–â‘è‚ðƒIƒCƒ‰�[—z‰ð–@‚Å‰ð‚‚½‚ß‚Ì ŽQ�lƒvƒ�ƒOƒ‰ƒ€‚Æ‚¢‚¤‚à‚Ì‚ª‹³‰È�‘‚É‚ ‚è�A‚܂킵‚½‚̂ł·‚ª error‚Í�o‚È‚¢‚à‚Ì‚Ì�ãŽè‚‚Ü‚í‚è‚Ü‚¹‚ñ‚Å‚µ‚½�B ƒAƒhƒoƒCƒX‚ðŠè‚¢‚Ü‚·�B ‚¿‚Ȃ݂ÉMX=41,KM=30,DT=0.01‚Æ‚µ‚Ä‚¢‚Ü‚·�B PARAMETER(NX=51) DIMENSION U(NX),UU(NX) C**** INPUT & CALCULATE PARAMETERS WRITE(*,*) 'MX (<52: MESH POINTS) ? KM (NUMBER OF TIME STEP) ?' READ(*,*) MX,KM WRITE(*,*) 'DELTA T: DT ? ' READ(*,*) DT DX=1./FLOAT(MX-1) R=DT/DX**2 IH=(MX+1)/2 I5=.05/DT IF(I5.EQ.0) I5=1 CALL OUTPUT(U,NX,MX,1) C**** INITIAL CONDITION DO 10 I=1,MX X=FLOAT(I-1)/FLOAT(MX-1) IF(I.LE.IH) THEN U(I)=X ELSE U(I)=1.-X END IF 10 CONTINUE
65 �F
Ž¿–â2/3 �F2006/11/20(ŒŽ) 18:46:56
C**** MAIN LOOP DO 20 K=1,KM U(1)=0. U(MX)=0. IF(MOD(K,I5).EQ.1) CALL OUTPUT(U,NX,MX,2) C DO 30 I=2,MX-1 UU(I)=R*U(I-1)+(1.-2*R)*U(I)+R*U(I+1) 30 CONTINUE DO 40 I=2,MX-1 U(I)=UU(I) 40 CONTINUE C IF(ABS(U(IH)).GE.10000.) THEN WRITE(*,*) 'DIVERGE!' STOP END IF C 20 CONTINUE C CALL OUTPUT(U,NX,MX,3) STOP END C SUBROUTINE OUTPUT(U,NX,MX,MM) CHARACTER Z(60,23) DIMENSION U(NX)
66 �F
Ž¿–â3/3 �F2006/11/20(ŒŽ) 18:48:34
IF(MM.EQ.1) THEN DO 10 J=1,23 DO 10 I=2,MX-1 Z(I,J)=' ' 10 CONTINUE DO 20 J=1,23 Z(1,J)=':' Z(MX,J)=':' 20 CONTINUE DO 30 I=1,MX Z(I,1)='-' Z(I,23)='-' 30 CONTINUE END IF IF(MM.EQ.2) THEN DO 40 I=1,MX J=U(I)*40+.001 IF(J.GT.23) GO TO 40 Z(I,J)='*' 40 CONTINUE END IF IF(MM.EQ.3) THEN DO 50 J=23,1,-1 WRITE(*,600) (Z(I,J),I=1,60) 50 CONTINUE 600 FORMAT(1H ,60A1) END IF RETURN END
67 �F
59 �F2006/11/20(ŒŽ) 21:40:21
>>63 ‚»‚¤‚Å‚µ‚½
integer :: a(1:100)=0
‚¶‚á‚È‚¢‚Æ’Ê‚ç‚ñ‚Å‚·�D
68 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/22(�…) 00:03:15
�¡“x�AŒvŽZ‹@‚ð3‘ä‚΂©‚µ�\’z‚¹‚˂΂Ȃç‚È‚¢‚ñ‚¾‚ª�A CPU‚Ícore2duo‚ÆXeon‚̂ǂ¿‚炪—Ç‚¢‚Ì‚¾‚낤‚© ƒRƒ“ƒpƒCƒ‰‚̓Cƒ“ƒeƒ‹‚Ì”ñ�¤—pƒtƒŠ�[‚̂₂ðŽg‚¨‚¤‚ÆŽv‚Á‚Ä‚¢‚é
70 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/22(�…) 03:56:04
Xeon5000”Ô‘ä‚Æ”äŠr‚·‚é‚È‚çXeon�A Xeon3000”Ô‘ä‚Æ”äŠr‚·‚é‚È‚çCore2Duo‚©‚È
71 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/22(�…) 11:20:02
ƒLƒƒƒbƒVƒ…‚É�Ú‚é‚Ȃ炻‚ê‚Å‚à‚¢‚¢‚ª�Aƒ�ƒ‚ƒŠ�[ƒAƒNƒZƒX‘½‚¢‚È‚çItanium2‚Å’r
‚¨‘O‚炪Žg‚Á‚Ä‚¢‚éŒvŽZ‹@‚̃XƒyƒbƒN‚«‚Ú‚ñ‚Ê ‚¤‚¿‚Í CPU�FPentium4 3.2GHz ƒ�ƒ‚ƒŠ�F1GB ƒRƒ“ƒpƒCƒ‰�FIntel Fortran ƒRƒ“ƒpƒCƒ‰ ƒ�ƒ‚ƒŠ‚ð2GB‚É‚µ‚ë‚Æ�iŒ¾‚µ‚½‚ª–³—�‚¾‚Á‚½�B
•Ö�悵‚悤‚¶‚á‚ ‚È‚¢‚©�D CPU: Pentium4 3.4GHz RAM: 1.5GB (DDRPC3200ÃÞ±Ù) ºÝÊß²×: Intel Fortran Compiler 9.1 OS: Windows XP pro SP2 —F�l‚ÌC2D (T7200) “‹�Ú‹@Žg‚Á‚ÄŒvŽZ‚µ‚½‚çƒm�[ƒgPC‚Ì‚‚¹‚ɉ´‚Ì ÃÞ½¸‚æ‚è2”{ˆÈ�㑬‚‚ÄŸT‚’‚™
74 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/22(�…) 15:35:21
‚±‚ê‚͂Ȃñ‚Å‚·‚©�H�H�H‹³‚¦‚Ä‚‚¾‚³‚¢�I�I NO ERRORS,4 WARNINGS [<TDOFS>FTN77 Ver 4.03] NO ERRORS [<FORVIB>FTN77 Ver 4.03] NO ERRORS [<COEF0>FTN77 Ver 4.03] NO ERRORS [<COEF1>FTN77 Ver 4.03] NO ERRORS [<SOLU>FTN77 Ver 4.03] NO ERRORS [<F_TAN>FTN77 Ver 4.03] NO ERRORS [<Z_GK>FTN77 Ver 4.03] NO ERRORS [<INTARG>FTN77 Ver 4.03] NO ERRORS [<INTARG3>FTN77 Ver 4.03] NO ERRORS [<INTARG4>FTN77 Ver 4.03] NO ERRORS [<INTARG5>FTN77 Ver 4.03] WARNING the following symbols are missing: DLAX D:\MyDo\Fortran\1122test.obj (D:\MYDO\FORTRAN\1122TEST.FOR) DLAXR D:\MyDo\Fortran\1122test.obj (D:\MYDO\FORTRAN\1122TEST.FOR)
>>74 ƒGƒ‰�[‚͂Ȃ¢�i‚¨‚߂łÆ�ô�j‚¯‚Ç�A•ςȂ̂ª‚S‚‚ ‚Á‚½‚æ�B
‚È‚ñ‚©�A1122test‚Á‚Ä‚¢‚¤ƒtƒ@ƒCƒ‹‚ÌDLAX, DLAXR‚Á‚Ä‚¢‚¤–¼‘O‚ª•ςȊ´‚¶�B
‚¿‚å‚Á‚ÆŒ©‚½•û‚ª‚¢‚¢‚©‚à�E�E�E�i‚‚‚™‚Ó‚§‚Æ‚ç‚ñ‚±‚ñ‚΂¢‚ç4.03�†�j�B
76 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/22(�…) 16:07:08
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�™ �¡�Ì‚Ì�æ”y‚̃vƒ�ƒOƒ‰ƒ~ƒ“ƒO‚ð‰ð�Í’†‚È‚¾‚¯‚Å�AFORTRANŽ©‘Ì‚ð—�‰ð‚µ‚Ă܂¹‚ñ‚ª�A’p‚ð”E‚ñ‚Å‚¨Žf‚¢‚µ‚Ü‚·�B DLAXR‚Æ‚¢‚¤‚̂͂½‚Ô‚ñ‚±‚Ì•”•ª‚Å‚·‚ª�A‚Ç‚±‚©•ςłµ‚傤‚©�H c **** DLAXR *************************************** call DLAXR(XX,A,k,hmn,ALU,b,IPP,VWW,icond) do 110 j=1,mn+1,1 jj=j-1 X(jj)=XX(j) 110 continue do 111 j=mn+2,hmn,1 jj=j-mn-1 Y(jj)=XX(j) 111 continue c *********************************************************** return end
>>76 ‚킽‚µ‚à‚æ‚‚í‚©‚ñ‚È‚¢‚¯‚Ç�A
DLAXR‚ðŒÄ‚ñ‚ł邯‚Ç�A‚±‚̃tƒ@ƒCƒ‹‚ł͂܂¾’è‹`‚³‚ê‚ĂȂ¢‚©‚ç
Œ^�E�iˆø�”‚Ì�”‚Æ‚©‚Ì�jŒ`Ž®‚ª‚ ‚Á‚Ă邩•sˆÀ�E�E�E
‚悯‚ê‚΃tƒ@ƒCƒ‹‚É�‘‚¢‚Æ‚¢‚Ä‚Ë
‚½‚Ô‚ñ‘¼‚̃tƒ@ƒCƒ‹‚Å’è‹`‚³‚ê‚Ä‚é‚ñ‚¾‚낤‚©‚ç
‚Æ‚è‚ ‚¦‚¸“K“–‚É‚‚Á‚‚¯‚邯‚Ç�AŠÔˆá‚Á‚Ä‚à“{‚ç‚È‚¢‚Å‚Ë�i‚‚‚™‚Ó‚§‚Æ‚ç‚ñ‚±‚ñ‚Ï‚¢‚ç�j
>>74 DLAX, DLAXR ‚Á‚Ä–¼‘O‚©‚çŽ@‚·‚邯�A•xŽm’Ê‚Ì�”’lŒvŽZƒ‰ƒCƒuƒ‰ƒŠSSL II ‚ðŽg‚Á‚Ä‚é‚Á‚Û‚¢�B
‚·‚êˆá‚¢‚©‚à’m‚ê‚È‚¢‚ª�ACoreDuo�ACore2Duo‚ÅLinux‚Å“®‚‚Ì�H
>Core2Duo‚ÅLinux‚Å ƒVƒ“ƒ^ƒbƒNƒX�EƒGƒ‰�[�F ‰ðŒˆ‚³‚ê‚È‚¢�•ŽŒ�u‚Å�v
82 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/22(�…) 23:35:23
>>74 ‚»‚ê‚Í
>>78 ‚É‚ ‚邿‚¤‚É�ASSLII‚̃‰ƒCƒuƒ‰ƒŠ‚ð“Ç‚ñ‚Å‚¢‚é‚Ì‚Å�A‚»‚ꂪ–³‚¢‚ÆŒ¾‚Á‚Ä‚¢‚é�B
SSLII‚̃‰ƒCƒuƒ‰ƒŠ‚ª‚ ‚éƒRƒ“ƒpƒCƒ‰�iFujitsu�ALahey�j‚Ì“z‚Å‚â‚é‚©�A
‚ ‚é‚¢‚Í‘¼‚̃‰ƒCƒuƒ‰ƒŠ‚Å’u‚«Š·‚¦‚é•K—v‚ª‚ ‚é�B
LU•ª‰ð‚Á‚Û‚¢‚Ì‚Å�ALAPACK‚Æ‚©‰½‚Å‚à‚ ‚é‚×�B
83 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/23(–Ø) 14:05:27
n�sm—ñ‚Ì�s—ñ‚ª‚ ‚è�A‚»‚±‚©‚çn�sm—ñ‚Ì‚»‚ꂼ‚ê‚Ì’l‚ðˆê—ñ‚É’¼‚µ‚Ä�A‚»‚ꂼ‚ê‚É’l‚ɂ‚¢‚đ傫‚¢�‡‚É•À‚ׂȂ¨‚µ�AŒ³‚Ì‚Ž�s‚�—ñ‚É’¼‚µ‚Ă݂½‚¢‚̂ł·‚¯‚ǂǂñ‚ȃvƒ�ƒOƒ‰ƒ€‚Ì•û–@‚ª‚ ‚è‚Ü‚·‚©�H ‚悯‚ê‚Î�A‹³‚¦‚Ä‚‚¾‚³‚¢�„�ƒ ‚¿‚Ȃ݂Éfortran77‚ðŽg‚Á‚Ä‚¢‚Ü‚·�„�ƒ/
84 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/23(–Ø) 16:00:07
>>83 Œ¾‚Á‚Ă邱‚Æ‚ª‚æ‚•ª‚©‚ç‚È‚¢‚ª�A‚QŽŸŒ³�s—ñ‚ð—ñ‚²‚ƂɃ\�[ƒg‚µ‚Ä�A
�ã‚©‚牺‚Ö‘å‚«‚¢�‡‚É•À‚ׂȂ¨‚µ‚½‚¢‚Æ‚¢‚¤‚±‚Æ‚©�H
‚»‚ê‚È‚çŠÈ’P‚¾�B
‚P�D‚Ü‚¸‚PŽŸŒ³ƒ\�[ƒg‚̃Tƒuƒ‹�[ƒ`ƒ“‚ð—pˆÓ‚·‚é�B‚±‚ê‚ð SORT(n, x) ‚Æ‚µ‚悤�B
‚Q�D—ñ‚²‚ƂɃ\�[ƒg‚·‚é�B
DO ‚P‚O i = 1, m
�@CALL SORT(N, X(1, i))
10 CONTINUE
‚±‚ê‚Å‚¨‚‹�B
85 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/23(–Ø) 18:03:09
�„�„84 ‚³‚ñŽw“E‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·
‚Å‚à‚¿‚å‚Á‚ƈႤ‚̂ł·�„�ƒ�@
‚½‚Æ‚¦‚Î�A1�@5�@ 9�@13
�@�@�@�@�@2�@6�@10�@14
�@�@�@�@�@3�@7�@11�@15
�@�@�@�@�@4�@8�@12�@16
‚ɂ‚¢‚Ä�A
1
2
3
�c
16
‚Æ‚¢‚Á‚Ä‚©‚ç�‡”Ô‚ð•Ï�X‚µ‚Ä
16�@12 8 4
15�@11 7 3
14�@10 6 2
13�@ 9�@5 1
‚Æ‚¢‚¤•—‚É•À‚ׂ½‚¢‚̂ł·
86 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/23(–Ø) 19:56:32
>>85 ‚»‚ê‚È‚ç‚à‚Á‚ÆŠÈ’P‚¾�BFORTRAN‚V‚V‚Í”z—ñ‚Ì�擪ƒAƒhƒŒƒX‚µ‚©“n‚³‚È‚¢�B
ŽŸŒ³�”‚Æ‚©‘å‚«‚³‚Í‹C‚É‚µ‚È‚¢�B
‚Ü‚½�AFORTRAN‚Ì”z—ñ‚̓�ƒ‚ƒŠ�[�ã‚Å‚Í�A—ñ•ûŒü‚ɗׂè�‡‚Á‚Ä‚PŽŸŒ³‚É•À‚ñ‚Å‚¢‚é�B
‚䂦‚É�AN*M‚Ì—v‘f�”‚Å‚PŽŸŒ³‚̃\�[ƒg‚ð‚·‚ê‚΂¢‚¢�B
‚P�D‚PŽŸŒ³‚̃\�[ƒg‚ð—pˆÓ‚·‚é�B
‚Q�DCALL�@SORT�iN*M�AX�j
‚±‚ê‚ÅOK
>>83 Œ³�Xmixi‚É�‘‚«�ž‚ñ‚¾‚ñ‚¾‚©‚ç�A‰ðŒˆ‚µ‚½‚çmixi‚É‚à�‘‚‚悤‚É�B
88 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/24(‹à) 11:44:03
>>87 �@
‚Â�[‚©
>>83 ‚̃Œƒxƒ‹‚Å‚Í
>>86 ‚̉ñ“š‚Í—�‰ð‚Å‚«‚È‚¢‚ñ‚¶‚á‚È‚¢‚©�B
FORTRAN‚Í‚±‚¤‚¢‚¤ƒCƒJƒTƒ}‹Z‚É‚æ‚Á‚Ä�A‚PŽŸŒ³�®�”‚OƒNƒŠƒA‚ð‚‚Á‚©‚Á‚Ä
‘½ŽŸŒ³�®�”�AŽÀ�”‚Ȃǂ̃NƒŠƒA�[‚ÉŽg‚¦‚½�BˆêŽí‚ÌPolymorphism�@‚—‚—‚—‚—‚—
89 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/24(‹à) 14:36:03
�„86‚³‚ñ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚· Šm‚©‚É‘¬‚’m‚肽‚¢‚Æ‚¢‚¤‹C‚ª‚Í‚â‚è‚·‚¬‚Ä�A‚¢‚ë‚ñ‚È�Š‚ÅŽ¿–₵‚Ä‚¢‚Ü‚·‚Ë ‚¿‚á‚ñ‚ÆŽ©•ª‚Å—�‰ð‚Å‚«‚½‚ç�‘‚¢‚Ä‚¢‚«‚½‚¢‚Ƃ͎v‚Á‚Ä‚¢‚é‚̂ł·‚¯‚Ç‚Ë ‚Å‚à�A‚â‚͂肿‚å‚Á‚Æ—�‰ð‚Å‚«‚Ü‚¹‚ñ�O�O�G ‚悯‚ê‚Î�A‰½‚©—á‚Æ‚©‚ ‚邯‚ ‚肪‚½‚¢‚̂ł·‚¯‚Ç�„�ƒ
90 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/24(‹à) 14:36:17
>>77 �@
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�I
>>78 ‚³‚ñ‚ÌŒ¾‚¤‚Æ‚¨‚è�A•xŽm’ÊSSL‡U‚ðŽg‚Á‚Ä‚¢‚é—lŽq‚Å‚·�B
>>82 Lahey‚âLAPACK‚Ƃ͂ǂñ‚È‚à‚̂ł·‚©�H�H
92 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/24(‹à) 23:12:56
>>90 Lahey‚̓Rƒ“ƒpƒCƒ‰‚ÌŽ©ŽÐ“ÆŽ©ŠJ”‚ð‚â‚ß‚Ä�A�¡‚ł͕xŽm’ʂ̃tƒ�ƒ“ƒgƒGƒ“ƒh‚ðŽg‚Á‚Ä‚¢‚é�B
•xŽm’Ê‚ÍLinux”Å‚µ‚©�o‚µ‚Ä‚¢‚È‚¢‚ª�ALahey‚ÍWindows”Å‚à�o‚µ‚Ä‚¢‚é�B
•xŽm’Ê‚ª—�‚ñ‚Å‚¢‚é‚Ì‚Å�Aƒvƒ�ƒtƒFƒbƒVƒ‡ƒiƒ‹ƒo�[ƒWƒ‡ƒ“‚𔃂¤‚ÆSSL‚ª‚‚¢‚Ä‚‚é�B
‚ ‚ÆSSL‚Í–¼ŒÃ‰®‘åŠw‚ÌNUPACK‚Æ–§�Ú‚ÈŠÖŒW‚ª‚ ‚é‚Ì‚Å�AnetNUMPAC‚ªŽQ�l‚É
‚Ȃ邩‚à‚µ‚ê‚È‚¢‚µ�A‚È‚ç‚È‚¢‚©‚à‚µ‚ê‚È‚¢‚—‚—‚—
˜R‚ê‚Í•xŽm’ÊŒn‚̓�ƒCƒ“‚ɂ͎g‚í‚È‚©‚Á‚½‚̂ł悒m‚ç‚ñ‚—
LAPACK‚͌ŗL’n–â‘è‚Æ�üŒ`–â‘è—p‚̃Tƒuƒ‹�[ƒ`ƒ“�W‚¾�B‚±‚ê‚Í�‘�Û•W�€‚Ɖ»‚µ‚Ä‚«‚Ä‚¢‚é‚Ì‚Å
‚Ç‚±‚Ì‹@ŠB‚Å‚à“®‚¢‚Ä‚¢‚é�B
>>89 PROGRAM unko
REAL a(5, 2)
CALL kintama(5 * 2, a)
DO 10 i = 1, 5
PRINT *, a(i, 1), a(i, 2)
10 CONTINUE
END
C
SUBROUTINE kintama(n, x)
REAL x(n)
DO 10 i = 1, n
x(i) = REAL(i)
10 CONTINUE
RETURN
END
ŽÀ�sŒ‹‰Ê
1.000000 6.000000
2.000000 7.000000
3.000000 8.000000
4.000000 9.000000
5.000000 10.00000
Press any key to continue
ƒTƒuƒ‹�[ƒ`ƒ“�@‹à‹Ê�@‚Å�A1ŽŸŒ³”z—ñ‚˜‚É‚P�`‚ނ܂Å�‡”Ô‚É�”‚ð‘ã“ü‚µ‚Ä‚¢‚é�B
ˆê•û�Aƒ�ƒCƒ“ƒ‹�[ƒ`ƒ“‚©‚çŒÄ‚Ñ�o‚·‚Æ‚«‚Í�A‚QŽŸŒ³”z—ñ‚ðˆø�”�i‚Ђ«‚·‚¤�j‚É—^‚¦‚Ä‚¢‚é�B
—v‘f�”‚Í�s�~—ñ��‚P‚OŒÂ‚Å“n‚µ‚Ä‚¢‚é�B�@•Ô‚Á‚Ä‚‚錋‰Ê‚ðŒ©‚é‚Æ�A—ñ•ûŒü‚ɘA‘±‚µ‚½’l‚Å–ß‚Á‚Ä—ˆ‚Ä‚¢‚é�B
“¯—l‚Ì‚±‚Æ‚ðSORT‚Å‚â‚ê‚Î�A‚Í‚¶‚ß“ñŽŸŒ³‚Ƀ‰ƒ“ƒ_ƒ€‚¾‚Á‚½�”‚ª�A
—ñ•ûŒü‚Ƀ\�[ƒg‚³‚ê‚Ä–ß‚Á‚Ä‚‚é�B
‚e‚n‚q‚s‚q‚`‚m‚̃Gƒ�ƒQ‚Æ‚©‚È‚¢‚Ì�H
96 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/27(ŒŽ) 19:00:46
>>53 �„x(1:n) = y(1:n)
‚±‚Ì�‘‚«•û‚Á‚ėႦ‚ÎŽŸ‚̂悤‚È‘Q‰»Ž®‚ÉŽg‚¤‚Æ
‚¿‚á‚ñ‚ÆŒvŽZ‚µ‚Ä‚‚ê‚È‚¢�D
x(1)=0
x(2)=1
x(3:n) = 2*x(2:n-1) - 4*x(1:n-2)
Ž©•ª‚ÉŽ©•ª‚ð‘ã“ü‚·‚邿‚¤‚È
Ž®‚¾‚ƑʖڂÁ‚Û‚¢ (“r’†‚©‚ç‘S•”0‚ɂȂé)�D‚È‚ñ‚Å�H�H
>>96 ”z—ñ‚̉‰ŽZ‚Í‚·‚ׂĕÀ—ñŒvŽZ‚Æ‚µ‚Ä�ˆ—�‚³‚ê‚é‚̂Šx ‚Ì—v‘f‚ª 0 ‚Å�‰Šú‰»‚³‚ê‚Ä‚¢‚½�ê�‡�A
x(3) = 2*x(2) - 4*x(1) = 2*1 - 4*0 = 2
x(4) = 2*x(3) - 4*x(2) = 2*0 - 4*1 = -4
x(5) = 2*x(4) - 4*x(3) = 2*0 - 4*0 = 0
x(6) = 2*x(5) - 4*x(4) = 2*0 - 4*0 = 0
�E�E�E
‚ƂȂé�B
do i=2,n
x(i) = x(i-1) + 1
end do
‚Æ
x(2:n) = x(1:n-1) + 1
‚ł͈Ӗ¡‚ªˆá‚¤‚Ì‚¾�B
98 �F
96 �F2006/11/27(ŒŽ) 22:18:19
>>97 ‚¨‚¨�`‚æ‚‚í‚©‚è‚Ü‚µ‚½�I
‚ ‚肪‚Æ‚¤
99 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/28(‰Î) 00:17:59
>>96 REAL::A(N, N), B(N, N)
‚`�@���@‚`�@�–�@‚a
‚̂悤‚È�󋵂ð�l‚¦‚ê‚Î�A�¡‚Ì‚e‚n‚q‚s‚q‚`‚m‚ÌŽd—l‚ª‚à‚Á‚Æ‚à‚¾‚Æ•ª‚©‚é�B
�s—ñ‘€�삪‚ç‚Ý‚Å�A‚±‚ÌŽd—l‚͂ƂĂà•Ö—˜�B‚¢‚¿‚¢‚¿Ž©•ª‚Ńeƒ“ƒ|ƒ‰ƒŠ‚ɃRƒs�[‚µ‚È‚‚Ä‚¢‚¢�B
‚ ‚ƈꉞ�A•À—ñ‰»‚³‚ꂽ‚Æ‚«‚Ì‚±‚Æ‚à�l—¶‚³‚ê‚Ä‚»‚¤‚¢‚¤Žd—l‚ɂȂÁ‚Ä‚¢‚é‚炵‚¢�B
100 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/29(�…) 13:24:49
>>74 ‚̃vƒ�ƒOƒ‰ƒ€‚É‚¨‚¢‚Ä�Aƒtƒ@ƒCƒ‹‚Ì’è‹`‚Ƃ͂ǂ̕”•ª‚ɂǂ̂悤‚É�‘‚«�ž‚Þ‚à‚̂Ȃ̂ł·‚©�H
‘S‘̂̃vƒ�ƒOƒ‰ƒ€‚Ì’†‚̂ǂ±‚©‚ɉB‚ê‚Ä‚¢‚é‚̂łµ‚傤‚©�H
101 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/29(�…) 21:16:59
ŽŸ‚Ì�ðŒ�‚Ì‚¤‚¿‚©‚瑼‚̈ʒu‚̈ܓx(ƒÆ2)‚ÆŒo“x(ƒÉ2)‚ð‹�‚ß‚éƒvƒ�ƒOƒ‰ƒ€‚ð�ì�¬‚¹‚æ�B 1.Œ³‚Ì�ê�Š‚ÌˆÜ“x(ƒÆ1)‚ð–kˆÜ35“x40•ª�AŒo“x(ƒÉ1)‚𓌌o139“x12•ª 2.‹——£(s)‚ð6242.2‚‹‚�‚Æ‚·‚é�@‚“��R�~ƒ¿�‹�~ƒÎ/180�@�@�iR��6370‚‹‚��j 3.•ûˆÊŠp(ƒË)‚ð86.6“x‚Æ‚·‚é�@sinƒË=cosƒÆ2�~sin‡™ƒÉ/sinƒ¿ �i‡™ƒÉ=ƒÉ2-ƒÉ1�j (—˜—p‚Å‚«‚é‚̂ł ‚ê‚Îcosƒ¿=sinƒÆ1sinƒÆ2+cosƒÆ1cosƒÆ2cos‡™ƒÉ‚ð—˜—p‚µ‚Ä‚à‚æ‚¢) ‚Ü‚½�A‘¼‚Ì•û–@‚ª‚ ‚é‚̂ł ‚ê‚΂»‚̃vƒ�ƒOƒ‰ƒ€‚ð�ì�¬‚¹‚æ�B �³’¼Œ¾‚Á‚Ä�A‚¿‚ñ‚Õ‚ñ‚©‚ñ‚Õ‚ñ‚Ȃ̂ł·�„�ƒ ‚í‚©‚é•û‚ª‚¢‚ê‚΂悯‚ê‚Î�A‹³‚¦‚Ä‚‚¾‚³‚¢‚Ü‚¹‚ñ‚©�„�ƒ
102 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/29(�…) 23:12:10
>>100 Šî–{“I‚ÉƒŠƒ“ƒJ�[‚ɑ΂µ‚ă‰ƒCƒuƒ‰ƒŠ‚ðŽw’è‚·‚邾‚¯‚Å‚ ‚é�B
�ŋ߂̃Rƒ“ƒpƒCƒ‰‚Í�AƒRƒ“ƒpƒCƒ‰�Eƒhƒ‰ƒCƒo‚Æ‚¢‚¤‚à‚Ì‚ª�AƒRƒ“ƒpƒCƒ‰‚⃊ƒ“ƒJ�[‚Ȃǂð
Ž©“®“I‚ÉŽŸ�XŒÄ‚Ñ�o‚µ‚Ä‚¢‚é‚Ì‚Å�A‚»‚̃wƒ‹ƒv‚ð‚æ‚“Ç‚ñ‚Å�AƒŠƒ“ƒJ�[‚Ƀ‰ƒCƒuƒ‰ƒŠ‚ð
Žw’è‚·‚éƒIƒvƒVƒ‡ƒ“‚ð’T‚·‚ׂµ�B
ƒRƒ“ƒpƒCƒ‰�Eƒhƒ‰ƒCƒo‚É‚Í�AƒRƒ“ƒpƒCƒ‰‚ւ̃IƒvƒVƒ‡ƒ“‚Æ�AƒŠƒ“ƒJ�[‚ւ̃IƒvƒVƒ‡ƒ“‚ð
ŒÂ�X‚É—^‚¦‚邱‚Æ‚ª‚Å‚«‚é�B
‚±‚̕ӂÍ�A•Ö—˜‚ɂȂÁ‚½•ª‚©‚¦‚Á‚Ä�Ì‚æ‚艽‚â‚Á‚Ä‚é‚Ì‚©‚í‚©‚ç‚È‚‚È‚Á‚Ä‚é�B
>>101 ‹…–ÊŽOŠp‚ª‚ñ‚΂ꂗ
103 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/30(–Ø) 02:28:58
>>101 ‚Ç‚¤‚à”MŠC‚Ì“‡‚©‚çŽË’ö–ñ‚U‚O‚O‚O‚‹‚�‚̃eƒ|ƒhƒ“‚ð”ŽË‚µ‚Ä‚¢‚邿‚¤‚¾‚ª�A
•ûˆÊŠp(ƒË)‚Ì’è‹`‚ª•ª‚©‚ç‚ñ�B‚à‚¤�‚µ�Ú‚µ‚�B
‚Ü‚ŸŽ®‚ª—^‚¦‚ç‚ê‚Ä‚¢‚é‚Ì‚Å�î•ñ‚Æ‚µ‚Ă͂·‚Å‚É�\•ª‚Ȃ̂¾‚ª�A
�”Ž®‚©‚ç‹tŽZ‚·‚é‹C—Í‚ª‚È‚¢�B
cosƒ¿=sinƒÆ1sinƒÆ2+cosƒÆ1cosƒÆ2cos‡™ƒÉ�@‚Í“à�Ï‚©‚ç�o‚½�B
>>101 �¡“x‚Í2‚¿‚á‚ñ‚É�‘‚¢‚½Œãmixi‚Å‚·‚©�B
105 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/30(–Ø) 22:25:56
>>101 “š‚¦‚Í�Aƒnƒ�ƒC‚̃IƒAƒt“‡‚¾�B�@–kˆÜ‚Q‚P“x‚Q‚S•ª�@�¼Œo‚P‚T‚V“x‚T‚R•ª‚¾�B
‚‚¢‚łɔŽË’n“_‚Í”MŠC‚ł͂Ȃ�A”ª‰¤Žq‚Ì‚ ‚½‚肾‚È�B
PROGRAM vipper
IMPLICIT NONE
REAL :: theta1, theta2, phi1, phi2, alpha, anu, pi
REAL :: rot_z(3, 3), rot_y(3, 3), vec1(3), vec2(3)
CHARACTER :: ns, ew
pi = 4.0 * ATAN(1.0)
alpha = 6242.2 / 6370.0
anu = ( 180.0 - 86.6 ) * pi / 180.0
theta1 = ( 90.0 - ( 35.0 + 40.0 / 60.0 ) ) * pi / 180.0
phi1 = ( 139.0 + 12.0 / 60.0 ) * pi / 180.0
!
rot_z(1, :) = (/ COS(phi1), -SIN(phi1), 0.0 /)
rot_z(2, :) = (/ SIN(phi1), COS(phi1), 0.0 /)
rot_z(3, :) = (/ 0.0, 0.0, 1.0 /)
!
rot_y(1, :) = (/ COS(theta1), 0.0, SIN(theta1) /)
rot_y(2, :) = (/ 0.0, 1.0, 0.0 /)
rot_y(3, :) = (/ -SIN(theta1), 0.0, COS(theta1) /)
!
vec1(1) = SIN(alpha) * COS(anu)
vec1(2) = SIN(alpha) * SIN(anu)
vec1(3) = COS(alpha)
!
vec2 = MATMUL(rot_z, MATMUL(rot_y, vec1))
!
106 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/11/30(–Ø) 22:27:15
theta2 = ASIN(vec2(3)) * 180.0 / pi phi2 = ATAN2(vec2(2), vec2(1)) * 180.0 / pi ! PRINT *, theta2, phi2 ns = 'N' IF (theta2 < 0.0) ns = 'S' ew = 'E' IF ( phi2 < 0.0) ew = 'W' PRINT '(i4, a, i2, 1x, a)', INT(ABS(theta2)), ' ', NINT(( ABS(theta2) - INT(ABS(theta2)) ) * 60.0), ns PRINT '(i4, a, i2, 1x, a)', INT(ABS( phi2)), ' ', NINT(( ABS( phi2) - INT(ABS( phi2)) ) * 60.0), ew STOP END PROGRAM vipper
107 �F
105 �F2006/11/30(–Ø) 22:29:33
‚²‚ß‚ñ�@–kˆÜ‚Æ“ìˆÜ‚Ì�ˆ—�‚ªŠÔˆá‚Á‚½‚܂܂̌¢‚Ì‚¤‚�‚µ‚Ä‚µ‚Ü‚Á‚½�B ‚Ü�A–{Ž¿‚͕ςí‚ç‚ñ‚©‚ç“K“–‚É�ˆ—�‚µ‚Ä‚¨‚¢‚Ä‚‚ê�B Ž¿–₪‚ ‚ê‚Î�A“š‚¦‚â‚·‚˜_—�“I‚É•·‚¢‚Ä‚‚ê�B
108 �F
105 �F2006/11/30(–Ø) 22:33:40
ƒXƒŒ‰˜‚µ�@‚·‚Ü‚ñ‚±‚— �o—ÍŒ‹‰Ê‚¾�B 21.39687 -157.8804 21 24 N 157 53 W Press any key to continue ‚ ‚Æ�A•ûˆÊŠpƒË‚Í�^–k‚©‚玞Œv‰ñ‚è‚É‘ª‚邱‚ƂƂµ‚½�B ‚‚܂è�¡‚Ì–â‘è‚Å‚Í�A”ª‰¤Žq‚©‚ç‚Ù‚Ú�^“Œ‚É�A’n‹…‚Ì”¼Œa‚Æ‚¾‚¢‚½‚¢“¯‚¶‚¾‚¯”ò‚Ô‚Æ ƒnƒ�ƒC‚̃zƒmƒ‹ƒ‹‹ß•Ó‚É’…‚‚Æ‚¢‚¤Ž–‚¾�B ‚f‚�‚�‚‡‚Œ‚…�@‚d‚�‚’‚”‚ˆ‚ÅŠm‚©‚߂Ė¡‘X�B’è‹K‚ðŽg‚¤‚Æ‚Q’n“_ŠÔ‚Ì‹——£‚𑪂ê‚é�B
Mixi ‚æ‚è vipper ‚Ì•û‚ª�ã‚Ȃ̂©‚æ‚—�@
110 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/01(‹à) 15:04:03
�„105‚³‚ñ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚· �¡“ú‚¾‚³‚ꂽ“š‚¦‚ðŒ©”ä‚ׂĂ݂½‚ç�A�‡‚Á‚Ä‚¢‚Ü‚·�I�I ‚Å‚à�AŽ„‚ªŽÀ�Û‚É‚â‚Á‚Ă݂½�Š‚½‚‚³‚ñ‚̃Gƒ‰�[�o‚Ä‚«‚Ăǂ¤‚µ‚悤‚à‚È‚¢ �ó‘Ô‚Å‚·�„�ƒ �¡�AŽ„‚ª—˜—p‚µ‚Ä‚¢‚é‚Ì‚Í[fc pad FTR77]‚Æ‚¢‚¤fortran77‚Ì‚à‚̂Ȃñ‚Å‚·‚ª ‚Ç‚¤‚µ‚ăGƒ‰�[‚ª�o‚Ä‚µ‚Ü‚¤‚Ì‚©‚ª‚æ‚‚í‚©‚è‚Ü‚¹‚ñ�„�ƒ ‚à‚µ‚à�¡‰ñ‚Ì‚à‚Ì‚ªfortran77‚łȂ¢‚Æ‚µ‚½‚ç�A�¡“x‚©‚çŽÀ�Û‚É‚â‚邯‚µ‚½‚ç ‚Ç‚Ì‚æ‚¤‚ȃvƒ�ƒOƒ‰ƒ€‚ɂȂé‚̂ł·‚©�H ‚悯‚ê‚Î�A‹³‚¦‚Ä‚‚¾‚³‚¢�„�ƒ
•‚“®�¬�”“_‚Ì’l‚ª‚Å‚©‚·‚¬‚Ä�®�”Œ^‚ɕς¦‚ç‚ê‚Ü‚¹‚ñ ‚Á‚ăGƒ‰�[‚ª�o‚Ä‚‚é‚ñ‚Å‚·‚ª�A‚Ç‚¤‚·‚ê‚Ήñ”ð‚Å‚«‚Ü‚·‚©�H •‚“®�¬�”“_‚̂܂܂¿‚Á‚¿‚á‚‚µ‚Ä�i‚P‚O‚ÅŠ„‚邯‚©�j�®�”Œ^‚ɕς¦‚Ä‚©‚ç‚P‚O‚ð Š|‚¯‚邯‚©‚·‚ê‚Ήñ”ð‚Å‚«‚邯Žv‚¢‚Ü‚·‚¯‚Ç�i’[�”‚ÍŽæ‚Á‚Æ‚¢‚ÄŒã‚Å‘«‚·‚Æ‚µ‚Ä�j ‚±‚ñ‚È–‚È‚±‚Æ‚·‚é•K—v‚È‚¢‚Å‚·‚æ‚Ë�c ‚‚¾‚·‚ê‚É�‘‚«�ž‚ނׂ«‚©‚ÆŽv‚¢‚Ü‚µ‚½‚ª—Ž‚¿‚Ă܂·‚æ‚Ë�H
>>112 ‚ ‚ê�H‚½‚Á‚Ă܂µ‚½‚©�c‚·‚݂܂¹‚ñ�B
‚»‚¿‚ç‚Å•·‚¢‚Ä‚«‚Ü‚·�A‚ ‚肪‚Æ‚¤�B
>>111 �¡‚̈ê”Ê‚ÌFORTRAN‚Ì�®�”‚Í‚R‚Qƒrƒbƒg‚Ì�®�”‚¾�B
‚»‚Ì�ê�‡•\‚µ‚¤‚é�”‚͈̔͂Í�|‚Q�O‚R‚P�`‚Q�O‚R‚P�|‚P‚¾�B
‚Q�O‚R‚P��‚Q‚P‚S‚V‚S‚W‚R‚U‚S‚W�`‚Q�–‚P‚O�O‚X�¨‚QƒMƒK�@‚¾‚©‚ç�A‚±‚ê‚æ‚è�â‘Î’l‚̑傫‚¢
ŽÀ�”‚ð�®�”‚ɕϊ·‚µ‚悤‚Æ‚·‚ê‚΃Gƒ‰�[‚ª�o‚é�B
‚½‚Æ‚¦‚P‚O‚ÅŠ„‚Á‚Ä‚¤‚Ü‚Žû‚Ü‚Á‚Ä‚à‚P‚O”{‚µ‚½‚çƒI�[ƒo�[ƒtƒ��[‚·‚é‚̂Ŗ³ˆÓ–¡‚¾�B
�®�”‚̃I�[ƒo�[ƒtƒ��[‚ÍŒŸ’m‚³‚ê‚È‚¢‚Ì‚Å�iƒIƒvƒVƒ‡ƒ“‚É‚à‚æ‚邪�jŽÀ�sŽžƒGƒ‰�[‚ª
�o‚È‚¢‚܂ܖ³ˆÓ–¡‚ÈŒvŽZ‚ª‘±‚‚±‚ƂɂȂé�B
>>110 ‚»‚ê‚ÍFortran90‚̃vƒ�ƒOƒ‰ƒ€‚¾‚©‚ç�AFortran77‚ł̓Gƒ‰�[‚ª�o‚é‚͓̂–‘R‚¾�B
‚¿‚Ý‚Í�¡“x‚©‚ç‚Í�A‚‚¾ƒXƒŒ‚Ì•û‚É�‘‚«‚È‚³‚¢�B
‚µ‚©‚µ‚»‚Ì’ö“x‚̃Œƒxƒ‹‚Å�A‚ ‚Ì�À•W‰ñ“]‚ðŽg‚Á‚Ä‰ð‚¢‚½ƒvƒ�ƒOƒ‰ƒ€‚ð�o‚µ‚½‚ç
‘¼�l‚É‚â‚Á‚Ä‚à‚ç‚Á‚½‚±‚Æ‚ªƒoƒŒƒoƒŒ‚¾‚—‚—‚—
ŽŸ‚©‚ç‚Í�Å�‰‚ÉFORTRAN77‚Å‚¨Šè‚¢‚µ‚Ü‚·‚Æ�‘‚¢‚Ä‚¨‚«‚È‚³‚¢�B
‚à‚Á‚Æ�‰�SŽÒ‚ɂ₳‚µ‚‚µ‚Ä‚â‚ê‚æ�B Fortranƒ†�[ƒU�[‚ð‘�‚â‚·‚½‚ß‚É�B
>>117 “¯ˆÓ�E�E�E�i‚Ç‚¤‚Å‚à‚¢‚¢‚ª‚—�j
�‰�SŽÒ‚Á‚Â�[‚æ‚è‘ü‚Ì�h‘苳‚¦‚ăNƒ“‚Á‚Û‚¢‚ª�B
FORTRAN77 ‚ÌGOTO•¶‚ƃ‰ƒxƒ‹‚Ì—’‚É ‚¢‚â‚ɂȂè�CŽb‚C++Œn‚É•‚‹C‚µ‚Ä‚½‚ª Fortran90“–‚è‚©‚ç‚Ü‚½Ì«Ä×Ýۂɖ߂Á‚½
>>120 ‚¨‚©‚¦‚è‚È‚³‚¢�B
CŒ¾Œê‚Í�AC99,D,C++,ObjectiveC,Secure‚ÈC‚Ȃǂɕª—ô‚µ‚Ä‚«‚Ä‚¢‚é‚Ì‚Å�A
�ø‚Á‚Ä‚±‚Ì•ª—ô‚ð‚¢‚Á‚»‚¤�[‚ß‚Ä�AFortran‚ð—L—˜‚É‚µ‚Ä‚‚ê�B
>>121 ‚»‚ê‚ð”“W‚Æ‚à‚¢‚¤‚ñ‚¾‚ª‚—
ŒvŽZ—Ê‚ª‘�‚¦‚Ä‚«‚½‚Ì‚Å�A1‘äƒpƒ\ƒRƒ“‚ð‘�‚â‚»‚¤‚Æ‚µ‚Ä‚¢‚é‚̂ł·‚ª�A �iŒ»�ÝPen4 3.6GHz�AIntelVisualFortran9.0�j •À—ñŒvŽZ‚µ‚»‚¤‚ɂȂ¢ƒR�[ƒh‚Ȃ̂Å�ACPU‚Ì‘I‘ð‚É–À‚Á‚Ä‚¢‚Ü‚·�B �¡‚Ü‚ÅPen4‚ ‚½‚è‚̃Vƒ“ƒOƒ‹ƒRƒA‚Å—¬‚µ‚Ä‚¢‚½•û‚Í‚±‚ê‚©‚ç ‚Ç‚¤‚³‚ê‚é‚‚à‚è‚Å‚·‚©�H Core2Duo‚Æ‚©‚Ç‚¤‚È‚ñ‚Å‚µ‚傤�E�E�E �ã‚Ì•û‚Å‚ÍCore2Duo‚Ì•û‚ª‘¬‚¢‚Æ‚¢‚¤�‘‚«�ž‚Ý‚ª‚ ‚è‚Ü‚·‚ª�E�E�E ˆê‰ž—\ŽZ‚Í1Ž®20–œ‰~ˆÊ‚ð‘z’肵‚Ä‚¢‚Ü‚·�D
>>122 ‚¢‚â�Aƒnƒbƒeƒ“‚ÍŒ‹�\‚È‚ñ‚¾‚ª�A‚¤‚Ü‚“¯‚¶‚‚ç‚¢‚ÉŽ}•ª‚©‚ꂵ‚Ä‚à‚炦‚邯�A“àƒQƒo‚ªŽn‚Ü‚Á‚Ä
‘S•”�Š‘Þ‚µ‚Ä‚‚ê‚Ä�•‚©‚é�B
‚ ‚ÆC”h�¶Œ¾Œê‚ªSecure‚È•ûŒü‚ÉŒü‚©‚Á‚Ä‚‚ê‚邯�A�Å“K‰»ƒXƒs�[ƒh‚ª—Ž‚¿‚Ă₪‚ÄŽ©–Å‚·‚邾‚낤�B
ƒoƒbƒtƒ@�[ƒI�[ƒo�[ƒ‰ƒ“‚Ì‹°•|‚Æ‚©‚ð�ø‚Á‚Ä�í‚ÉSUBCHK‚©‚¯‚½‚܂ܑ–‚邿‚¤‚ÉŽdŒü‚¯‚é‚ׂµ�B
Java‚âC#‚Ȃǂ͌‹‹Ç�ª–{“I‚É•ûŒü‚ðŠÔˆá‚Á‚Ä‚¢‚邯Žv‚¤�B
UCSD�@p-code�@Pascal‚Ì�Ì‚©‚ç�AVirtualMachine‚Í‚Æ‚Ä‚à‚¢‚¢ƒAƒCƒfƒA‚̂悤‚ÉŽv‚¦‚Ä�A
‚»‚ê‚Å‚¢‚Ä‚¤‚Ü‚�s‚Á‚½‚½‚ß‚µ‚ª‚È‚¢�BƒXƒs�[ƒh‚ª‚ ‚ê‚΃Gƒ~ƒ…ƒŒ�[ƒVƒ‡ƒ“‚Å�\•ª‚¾‚Æ�A‚Þ‚©‚µ‚©‚ç
Œ¾‚í‚ê‚Ä‚«‚½‚ª�AƒXƒs�[ƒh‚ª�オ‚邯�V‚µ‚¢Žg‚¢•û‚ª�o‚Ä‚«‚Ä�AƒMƒŠƒMƒŠ‚ÌCPU�Á”
‹�‚ß‚ç‚ê‚é‚©‚炤‚Ü‚�s‚‚Í‚¸‚ª‚È‚¢�B
‚à‚Á‚Æ‚àFortran‚à‹KŠi‚ª‚Ç‚ñ‚Ç‚ñ”ì‘剻‚µ‚Ä‚¢‚Ä‚©‚‚ĂÌPL/IŒ^‚Ì”j–ł̓¹‚ð
‚½‚Ç‚Á‚Ä‚¢‚é‹C‚ª‚µ‚È‚‚à–³‚¢‚Ì‚¾‚ª‚—
>>124 PL/I‚©‚—
VM‚͂킵‚ç‚̂悤‚ÉŒvŽZ‹@‚Æ‚µ‚ÄŽg‚¤�l‚ɂ͖³—�‚¾‚ª
•�’ʂɗV‚Ô’ö“x‚Ȃ炢‚¢‚ñ‚¶‚á‚È‚¢‚©�H
‚Á‚Ä‚¢‚¤‚©‘å�ä•v‚È‚‚ç‚¢PC‚Ì�«”\‚ª‚ ‚ª‚Á‚½‚ñ‚¶‚á‚È‚¢‚©�H
‚à‚¿‚ë‚ñ�AFortran‚ÅVMŽg‚í‚ꂽ‚ç�ª–{“I‚ȊԈႢ‚¾‚ª
Java‚Ì•ûŒü‚àƒAƒŠ‚È‚ñ‚¶‚á‚È‚¢‚©�H
Fortran‚Æ—p“r‚ª�d‚È‚ç‚È‚¢‚µ�E�E�E
‚¿‚å‚Á‚ÆPL/I‚ª‚Ȃ‚©‚µ‚‚È‚Á‚Ä�‘‚«ƒR
126 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/05(‰Î) 14:26:13
C Pad for Salford FTN77�@‚ð‚‚©‚Á‚Ä‚¢‚Ü‚·‚ª�Aƒvƒ�ƒOƒ‰ƒ€‚ðŽÀ�s‚·‚邯 RUN TIME ERROR 00402c50 SOLU [+0174] [recur= 1] 00401000 TDOFS [+09ca] ‚ª�o‚Ü‚·�B RUN TIME ERROR‚Ƃ͂Ȃñ‚Å‚µ‚傤‚©�H�H ƒ�ƒbƒZ�[ƒW—“‚É‚Í �u Licensed to: FTN77 Personal Edition Department: Non-commercial use only 0001) omega1 theta0 theta1 alph beta theta g()/kG *** Unexpected continuation line (have you got more than 19?) *** Compilation failed ^C�@�@�v ‚Ƃł܂·‚ª�A‚æ‚‚í‚©‚ç‚È‚¢‚Å‚·(�|�|�G) ‚ǂȂ½‚©‹³‚¦‚Ä‚‚¾‚³‚¢�I�I
>>126 >*** Unexpected continuation line (have you got more than 19?)
>*** Compilation failed
‚¹‚Á‚©‚ƒRƒ“ƒpƒCƒ‰‚ªƒ�ƒbƒZ�[ƒW‚ð�o‚µ‚Ä‚¢‚é‚Ì‚¾‚©‚ç�A‚¿‚á‚ñ‚Ɠǂނ悤‚É�B
>>126 ‚Ü‚Á‚½‚
>>127 ‚ÌŒ¾‚¤‚Æ‚¨‚肾�B
Žq‹Ÿ‚ª‹ƒ‚¢‚Ä‚¢‚é‚Ì‚É�A‚©‚Ü‚Á‚Ä‚â‚ç‚È‚¢ˆçŽ™•úŠü‚Ì•ê�eƒŒƒxƒ‹‚¾�B
˜R‚ê‚Ì�f’f‚Å‚Í�A‚Q‚ƒ‚ˆ‚©‚çƒRƒsƒy‚µ‚½‚Ì‚Å�A‚UƒJƒ‰ƒ€•¶‚ÌŽš‰º‚°‚ð‚µ‚Ä‚¢‚È‚¢�B
‚»‚Ì‚¹‚¢‚ÅŒp‘±�s‚ÉŠ¨ˆá‚¢‚³‚ê‚Ä‚¢‚é�B
129 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/06(�…) 12:51:58
>>127 ‚¶‚á‚ ‰p–󂵂Ă ‚°‚½‚ç�H�H
Žq‹Ÿ‚ª‹ƒ‚¢‚Ä‚¢‚é‚Ì‚É�A‚©‚Ü‚Á‚Ä‚â‚ç‚È‚¢ˆçŽ™•úŠü‚Ì•ê�eƒŒƒxƒ‹‚¾�B
>>129 ‚Í•ê�e‚ɖق点‚ë‚Á‚Ä“{–‚邾‚¯‚Ì�e•ƒ�B
>>130 ‚ÍŽ–Œ�‚ª‚ ‚Á‚½Œã‚É
ƒCƒ“ƒ^ƒrƒ…�[‚³‚ê‚é‹ß�Š‚Ì�l
�u‚æ‚‚ ‚̉Ƃ̎q‚Í‹ƒ‚¢‚Ä‚¢‚Ü‚µ‚½‚æ�E�E�E‚Ђǂ¢�e‚Å‚·‚Ë
‚Ü�AŽ„‚ÍŠÖŒW‚È‚¢‚ñ‚Å‚·‚¯‚Ç�v
132 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/06(�…) 13:52:30
�Å�‰‚Ì�l‚ª”nނɂµ‚½Œû’²‚Å�‘‚«�ž‚Þ‚©‚炱‚ñ‚È‚‚¾‚ç‚È‚¢ƒŒƒX‚ª‘±‚¢‚Ä‚µ‚Ü‚Á‚½‚æ�B
ˆ«‚¢‚Ì‚Í
>>126 �B�à–¾‚ð’[�Ü‚Á‚½Ž¿–â‚ð‚·‚é‚©‚炱‚¤‚È‚é�B
�uƒvƒ�ƒOƒ‰ƒ€�v‚ª‰½ŽÒ‚©‚±‚¿‚ç‚ɂ͑S‚•ª‚©‚ç‚È‚¢�B
‚Æ‚è‚ ‚¦‚¸�A‰´‚ªˆ«‚¢‚æ ‚Ý‚ñ‚ȺÞÒ¿
136 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/06(�…) 14:40:20
>>134 ‚Å‚à“à—e‚à‰½‚à‚í‚©‚ç‚È‚¢�l‚¾‚Á‚½‚玿–â‚ð‚¿‚á‚ñ‚Æ‚µ‚ë‚Á‚Ă̂à“‚¢‚ñ‚¶‚á‚È‚¢‚©‚È�H�H
Ž¿–â‚ð‚µ‚Ä‚¢‚é�lŠÔ‚ªŽ©•ª‚Ì‚â‚Á‚Ă邱‚Ƃ̓à—e‚à‰½‚à‚í‚©‚ç‚È‚¢�ó‘Ô‚È‚ç�A ‚»‚ꂱ‚»“š‚¦‚æ‚¤‚ª‚È‚¢‚¾‚ë�B ‚¹‚߂Ċî–{“I‚È•¶–@‚È‚èƒ\ƒtƒg‚ÌŠÈ’P‚ÈŽg‚¢•û‚‚ç‚¢‚ÍŽ©•ª‚Å’²‚×‚Ä ‚»‚ê‚Å‚àƒ_ƒ�‚¾‚Á‚½‚ç�A‰½‚ª‚µ‚½‚‚ĉ½‚ðŽŽ‚µ‚½‚¯‚ǂǂ¤�ãŽè‚‚¢‚©‚È‚©‚Á‚½‚© ’ö“x‚Ì‚±‚Æ‚Í�‘‚¢‚ÄŽ¿–â‚·‚ׂ«‚¶‚á‚È‚¢‚©�B
138 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/07(–Ø) 04:08:19
>>137 ‚à‚Á‚Æ‚à‚Ȉӌ©‚¾‚ª�A‚»‚ꂪ�o—ˆ‚ê‚΂½‚¢‚Ä‚¢‚ÍŽ©ŒÈ‰ðŒˆ‚µ‚Ä‚Q‚ƒ‚ˆ‚ɂȂñ‚©•·‚«‚É‚±‚È‚‚Ä‚·‚Þ‚—
140 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/07(–Ø) 17:42:48
Intel Fortran‚ÅMacƒAƒhƒŒƒXŽæ“¾‚·‚é•û–@‚ ‚è‚Ü‚·‚©�H ƒ}ƒjƒ…ƒAƒ‹Œ©‚Ä‚à�Ú‚Á‚ĂȂ©‚Á‚½‚Å‚·�E�E�B
143 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/08(‹à) 23:44:07
>>142 CŒ¾Œê‚Å‚à“‚¢‚悤‚¾�B•W�€‚ÌWIN32API‚Å‚Í�o—ˆ‚È‚¢‚Ì‚Å�A‘¼‚Ì•û–@‚ð‚â‚Á‚Ä‚¢‚邿‚¤‚¾�B
ˆÀ’¼‚È•û–@‚Í�ASYSTEMŠÖ�”‚ÅDOSƒRƒ}ƒ“ƒh‚Ìipconfig/all ‚ðŽÀ�s‚µ�A
‚»‚Ì�o—Í‚©‚çMACƒAƒhƒŒƒX‚ð�Ø‚è�o‚·•û–@ƒWƒƒƒ}ƒCƒJ�H
>>143 ‚â‚Á‚ς肻‚¤‚È‚è‚Ü‚·‚©‚Ë�[�B
Ž©•ª‚ÌOSˆÈŠO‚Å“®�ì‚ðŠm‚©‚ß‚ç‚ê‚È‚¢‚̂ł¿‚å‚Á‚Æ‘å•Ï�G�G
‚Ç‚¤‚àthx
win‚¾‚Á‚½‚ç�ÌNetBIOS‚łƂÁ‚½‚±‚Æ‚ª‚ ‚é�B
147 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/09(“y) 20:54:36
PROGRAM MAC USE ifwinty IMPLICIT NONE ! INTEGER, PARAMETER :: MAX_ADAPTER_DESCRIPTION_LENGTH = 128 !// arb. INTEGER, PARAMETER :: MAX_ADAPTER_NAME_LENGTH = 256 !// arb. INTEGER, PARAMETER :: MAX_ADAPTER_ADDRESS_LENGTH = 8 !// arb. ! TYPE :: IP_ADDRESS_STRING CHARACTER (4) :: String(4) END TYPE TYPE :: IP_MASK_STRING CHARACTER (4) :: String(4) END TYPE ! TYPE :: t_IP_ADDR_STRING INTEGER (LPLONG) :: pNext TYPE (IP_ADDRESS_STRING) :: IpAddress TYPE (IP_MASK_STRING) :: IpMask INTEGER (DWORD) :: Context END TYPE !
148 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/09(“y) 20:55:07
TYPE :: t_IP_ADAPTER_INFO INTEGER (4) :: pNext INTEGER (DWORD) :: ComboIndex CHARACTER (LEN = MAX_ADAPTER_NAME_LENGTH + 4) :: AdapterName CHARACTER (LEN = MAX_ADAPTER_DESCRIPTION_LENGTH + 4) :: Description INTEGER (UINT) :: AddressLength INTEGER (BYTE) :: Address(MAX_ADAPTER_ADDRESS_LENGTH) INTEGER (DWORD) :: Index INTEGER (ULONG) :: iType INTEGER (ULONG) :: DhcpEnabled INTEGER (LPLONG) :: pCurrentIpAddress TYPE (t_IP_ADDR_STRING) :: IpAddressList TYPE (t_IP_ADDR_STRING) :: GatewayList TYPE (t_IP_ADDR_STRING) :: DhcpServer INTEGER (BOOL) :: HaveWins TYPE (t_IP_ADDR_STRING) :: PrimaryWinsServer TYPE (t_IP_ADDR_STRING) :: SecondaryWinsServer INTEGER (ULONG) :: LeaseObtained INTEGER (ULONG) :: LeaseExpires; END TYPE ! INTERFACE INTEGER (BOOL) FUNCTION GetAdaptersInfo(arg1, arg2) USE ifwinty !DEC$ ATTRIBUTES DEFAULT, STDCALL, DECORATE, ALIAS:'GetAdaptersInfo' :: GetAdaptersInfo INTEGER (LPLONG) :: arg1 INTEGER (LPLONG) :: arg2 END FUNCTION END INTERFACE
149 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/09(“y) 20:56:42
! TYPE (t_IP_ADAPTER_INFO) :: AdapterInfo(16) TYPE (t_IP_ADDR_STRING) :: CurrentIpAddress INTEGER (DWORD) :: dwRetVal INTEGER (PULONG) :: pdwRetVal INTEGER (BOOL) :: iret CHARACTER (LEN = 128) :: Description dwRetVal = sizeof(AdapterInfo) iret = GetAdaptersInfo(LOC(AdapterInfo), LOC(dwRetVal) ) !PRINT *, AdapterInfo(1)%pNext !PRINT *, AdapterInfo(1)%ComboIndex !PRINT *, AdapterInfo(1)%AddressLength !PRINT *, AdapterInfo(1)%Description(1:128) PRINT '(6Z3)', AdapterInfo(1)%Address(1:AdapterInfo(1)%AddressLength) !PRINT *, AdapterInfo(1)%IpAddressList !PRINT *, AdapterInfo(2)%pNext !PRINT *, AdapterInfo(2)%ComboIndex !PRINT *, AdapterInfo(2)%AddressLength !PRINT *, AdapterInfo(2)%Description(1:128) PRINT '(6Z3)', AdapterInfo(2)%Address(1:AdapterInfo(2)%AddressLength) !PRINT *, AdapterInfo(2)%IpAddressList STOP END PROGRAM MAC ‚Æ‚è‚ ‚¦‚¸�A‚±‚ê‚ÅMACƒAƒhƒŒƒX‚ªŽæ‚ꂽ�B
150 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/09(“y) 21:09:05
>>142 �@�Ⴊ�~‚Á‚Ä‚¢‚½‚̂ʼnɂ‚Ԃµ‚É‚ª‚ñ‚΂Á‚Ă݂½�B
‚SŽžŠÔ‚®‚ç‚¢‚©‚©‚Á‚½‚ª�AMACƒAƒhƒŒƒX‚ª‚h‚Ž‚”‚…‚ŒFortran‚ÅŽæ‚ꂽ�B
•û–@‚Í
>>145 ‚Ì‚P”Ô–Ú‚ÌƒŠƒtƒ@ƒŒƒ“ƒX‚Ì‚R”Ô–Ú‚Ì•û–@‚ð—p‚¢‚½�B
Œ^‚ȂǂÍ�A‚Q”Ô–Ú‚ÌMSDN‚É�‘‚¢‚Ä‚ ‚é�î•ñ‚©‚玩•ª‚Å“K“–‚É�ì‚Á‚Ă݂½�B
TYPE‚̃TƒCƒY‚ªC++”łŋ�‚߂Ă¢‚é‚̂ƈê’v‚µ‚½‚̂ő½•ªOK‚¾‚낤�BŽ©�M‚͂Ȃ¢‚—
˜R‚ê‚̓�ƒCƒ“ƒtƒŒ�[ƒ€ˆç‚¿‚Ì�¶�ˆ‚ÌFORTRAN‚…‚’‚Å�A‚b‚à‚b�{�{‚Í‚g‚…‚Œ‚Œ‚�‚v‚�‚’‚Œ‚„ˆÈ�ã‚Ì‚à‚Ì‚Í
�‘‚¢‚½‚±‚Æ‚ª–³‚¢‚Ì‚Å�A•¶Žš—ñ‚Æ‚©ƒ|ƒCƒ“ƒ^�[‚̈µ‚¢‚Æ‚©‚ª�¡ˆêŽ©�M‚ª‚È‚¢�B
ƒRƒ“ƒpƒCƒ‹‚É•K—v‚Ȃ̂ÍPlatformSDK‚¾‚ª�A˜R‚ê‚̓Cƒ“ƒXƒg�[ƒ‹‚̂Ƃ«‚É
�ŸŽè‚ɃCƒ“ƒXƒR‚³‚ê‚Ä‚¢‚½‚悤‚¾�B‚±‚Ì’†‚̃‰ƒCƒuƒ‰ƒŠ�@IPHlpApi.lib�@‚ðƒ‰ƒCƒuƒ‰ƒŠ‚É
‰Á‚¦‚Ä‚¨‚•K—v‚ª‚ ‚é�B
Linker>Input>Additional Dependency ‚É�A‚»‚̂܂Ü�‘‚¯‚ÎOK‚¾‚Á‚½�B
ƒvƒ�ƒWƒFƒNƒgƒ^ƒCƒv‚̓Rƒ“ƒ\�[ƒ‹‚Å‚¨‚‹�B
>>146 �@
>>145 ‚Ì‹LŽ–‚É‚æ‚邯‚m‚…‚”‚a‚‰‚�‚“‚©‚çŽæ‚é•û–@‚Í�A�ŋ߂Í�„�§‚³‚ê‚È‚¢‚炵‚¢�B
‚½‚¾‚µŽæ‚è•û‚Í�‘‚¢‚Ä‚ ‚Á‚½�B
151 �F
150 �F2006/12/09(“y) 22:27:56
>>149 ‚̃�ƒCƒ“ƒvƒ�ƒOƒ‰ƒ€•”•ª‚Í�AˆÈ‰º‚É’¼‚µ‚Ä‚¨‚¢‚Ä‚‚ê�B
ƒfƒoƒbƒO—p‚̃Sƒ~‚ð�í‚Á‚½�B•¡�”‚̃lƒbƒgƒ��[ƒNƒAƒ_ƒvƒ^‚É‚à�i‚Æ‚è‚ ‚¦‚¸16ŒÂˆÈ‰º‚¾‚ª�j‘Ήž�B
TYPE (t_IP_ADAPTER_INFO) :: AdapterInfo(16)
TYPE (t_IP_ADDR_STRING) :: CurrentIpAddress
INTEGER (DWORD) :: dwRetVal
INTEGER (BOOL) :: iret
INTEGER :: i
dwRetVal = sizeof(AdapterInfo)
iret = GetAdaptersInfo(LOC(AdapterInfo), LOC(dwRetVal) )
IF (iret /= 0) STOP 'Error'
DO i = 1, 16
PRINT '(5(Z2.2,"-"), Z2.2)', AdapterInfo(i)%Address(1:AdapterInfo(i)%AddressLength)
IF (AdapterInfo(i)%pNext == NULL) EXIT
END DO
STOP
END PROGRAM MAC
152 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/12(‰Î) 14:31:56
compaq visual fortran 6.1‚ðŽg‚Á‚Ä‚¢‚Ü‚·�B 1‚‚̃vƒ�ƒWƒFƒNƒg‚Ì’†‚Ìsource file‚̂Ȃ©‚É‚Í�A“ñ‚ˆÈ�ãƒvƒ�ƒOƒ‰ƒ€ ƒtƒ@ƒCƒ‹‚ð“ü‚ê‚Ă͂¾‚߂Ȃ̂łµ‚傤‚©�H‚½‚ß‚µ‚ɕЕû‚̃vƒ�ƒOƒ‰ƒ€ ‚ðƒRƒ“ƒpƒCƒ‹‚·‚邯ŽÀ�sŽž‚Ɉø‚Á‚©‚©‚Á‚Ä‚µ‚Ü‚¢‚Ü‚·�B ˆê‚‚ð�Á‚·‚Æ�ãŽè‚‚¢‚‚̂ł·‚ª�c�B ‚ł͕½�s‚µ‚Ä“ñ‚‚̃vƒ�ƒOƒ‰ƒ€‚ð�ì‚肽‚¢�ê�‡‚Ç‚¤‚·‚ê‚΂¢‚¢‚̂łµ‚傤‚©�H ‚Ç‚¤‚©‚²•Ô“š‚¨Šè‚¢‚µ‚Ü‚·�B
>>152 ƒR�[ƒh‚ð•Ï�X‚·‚邯‚«‚É‚Í�Aƒ��[ƒNƒXƒy�[ƒX‚à•Ï�X‚·‚é•K—v‚ª‚ ‚é‚Í‚¸�B
Žè‚ÁŽæ‚è‘�‚‚·‚é‚É‚Í�AƒR�[ƒh•Ï�X��CVF ‚ðˆê’U�I—¹�B
>>152 ŽÀ�sƒtƒ@ƒCƒ‹–ˆ‚ÉProject‚ð�ì�¬‚µ‚Ä�A‚P‚‚ÌWorkspace‚É'Insert Projects into Workspace'‚Å
Project‚ð’ljÁ�A‚Ü‚½‚Í'Add New Project to Workspace'‚Å�V‚µ‚¢ƒvƒ�ƒWƒFƒNƒg‚ð’ljÁ‚·‚é�B
Build‚·‚邯‚«‚Í'Set Active Project'‚ÅProject‚ð‘I‚ñ‚Å‚©‚çBuild‚·‚é‚©
‚Ü‚½‚Í'Batch Build'‚ł܂Ƃ߂ÄBuild‚·‚é�B
CVF6.6‚Ì�ê�‡‚¾‚ª�A6.1‚Å‚à‚½‚Ô‚ñ“¯‚¶‚¾‚낤�B
>>153-154 �e�؂ɂ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½�B
‚¿‚å‚Á‚Ævisual fortranŽ©‘̂͂¶‚߂Ďg‚Á‚½‚à‚Ì‚Å
‚æ‚•ª‚©‚è‚Ü‚¹‚ñ‚Å‚µ‚½‚ª•·‚¢‚Ä‰ðŒˆ‚µ‚Ü‚µ‚½
ƒm�[ƒgƒpƒ\ƒRƒ“‚ÅLAPACKƒRƒ“ƒpƒCƒ‹‚·‚邯 ƒtƒ@ƒ“‚ª‚Ô‚ñ‚Ô‚ñ‰ñ‚Á‚Ä‚¤‚邳‚¢‚æ�`
>>156 LAPACK‚ÅŒvŽZ‚ð‚·‚é‚¤‚悤‚ɂȂê‚Γ¯‚¶‚±‚Æ�B
158 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/18(ŒŽ) 16:58:00
‰º‹L‚Ì•¶�Í‚ðfortran77‚Å•\‚·‚Ƃǂ¤‚Ȃ邩�A‹³‚¦‚Ä‚¢‚½‚¾‚¯‚Ü‚¹‚ñ‚©�H ex=2.0**((-1)*(l+1)) i=0 k=0 do 210 while(i.lt.n) i=i+1 k=k+1 if(k.gt.p)then call delay(ivw,p,q,j) else j=k end if if(ivw(j).ne.0) then a(i)=ivw(j)*ex else i=i-1 end if 210 continue
>>158 while‚̃‹�[ƒv‚ðgoto•¶‚ðŽg‚Á‚Ä�‘‚¢‚½‚ç�H
160 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/18(ŒŽ) 23:10:13
ŒvŽZ�I—¹Žž‚É�AŒg‘Ñ“d˜b‚Öƒ��[ƒ‹‚Å’m‚点‚Ä‚‚ê‚é‚Á‚Ä‚±‚Ƃł«‚Ü‚·‚©�H�H
161 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/18(ŒŽ) 23:13:01
>>160 ƒVƒFƒ‹ƒXƒNƒŠƒvƒg‚ð�‘‚¯‚΂¢‚¢�B
162 �F
f90 �F2006/12/19(‰Î) 13:07:00
do if(i>=n) exit i=i+1 k=k+1 if(k>p) then call delay(ivw,p,q,j) else j=k end if if(ivw(j)/=0) then a(i)=ivw(j)*ex else i=i-1 end if enddo
Intel fortran9.1Žg‚Á‚Ä‚é‚ñ‚¾‚¯‚Ç�Asystem()‚Å’èŠú“I‚ÉŠO•”ƒvƒ�ƒOƒ‰ƒ€‚ðŒÄ‚ԂƃRƒ~ƒbƒgƒ`ƒƒ�[ƒW‚ªŽžŠÔ‚ƂƂà‚É‘�‚¦‘±‚¯‚Ä‚µ‚Ü‚¤‚Æ‚¢‚¤ �Ç�ó‚É”Y‚Ü‚³‚ê‚Ä‚¢‚½�B‚Æ‚±‚낪�Asystem()‚Ì‘ã‚í‚è‚Ésystemqq()‚ðŽg‚¤‚Æ�A‚»‚Ì�Ç�ó‚ª�o‚È‚‚È‚Á‚½�B ‚±‚ñ‚ÈŒoŒ±‚µ‚½�l‚¢‚é�H
‚r‚x‚r‚s‚d‚l‚Á‚Ä‚o‚n‚r‚h‚wŒÝŠ·‚̃‹�[ƒ`ƒ“‚©‚¢�H ‚r‚x‚r‚s‚d‚l‚p‚p‚Í‚p‚t‚h‚b‚j‚v‚h‚m‚©‚ç‚Ý‚©�H ‚Ç‚Á‚¿‚àŽg‚í‚ñ‚È‚Ÿ‚—
>>164 ‚¶‚á‚ �AŠO•”ƒRƒ}ƒ“ƒh‹N“®‚µ‚½‚¢‚Æ‚«‚͂ǂ¤‚â‚Á‚Ä‚é‚Ì�H
ŠO•”ƒRƒ}ƒ“ƒhŒÄ‚΂Ȃ¢‚— W‚‰‚Ž32‚Å�o—ˆ‚镨‚ÍWin32‚Å‚â‚é�B ‚Å‚«‚È‚¢‚à‚̂͒ú‚߂邗
ƒRƒ“ƒ\�[ƒ‹ƒAƒvƒŠ–³Ž‹‚µ‚Ä‚¢‚«‚È‚èWin32‚©‚æ‚—
‚¨‚Ü‚¢‚ç’‡—Ç‚‚â‚ê‚æ ƒXƒNƒŠƒvƒg‚ő˦‚µ‚Æ‚¯‚—
169 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2006/12/28(–Ø) 23:25:36
ƒIƒbƒyƒ“‰»�Ï•i�I OpenMP‚Ì‚¢‚¢ŽQ�lƒTƒCƒg‚©–{‚̓Aƒ‹ƒJƒCƒ_�H ‚ ‚Ÿ‚»‚ê‚ÆMPI‚É‚µ‚ë‚Æ‚©Œ¾‚¤‚ȃˆ�[ƒ�ƒbƒp�B
ƒRƒ“ƒpƒCƒ‰‚ÌŽ©“®•À—ñ‰»‚¾‚¯‚Å‚ª‚Ü‚ñ‚“ ‰´‚à‹³‚¦‚Ä—~‚µ‚¢�B “ò‘¹‚ÅŒŸ�õ‚µ‚½‚ç�A˜a�‘‚Í‚P�û‚µ‚©–³‚©‚Á‚½�E�E�E
>>169 ‚¢‚₳�A‚³‚Á‚ς莩“®•À—ñ‰»‚³‚ê‚È‚¢‚©‚ç�A�‚µ’mŒb‚ð‚‚¯‚Ä‚â‚é‚©‚ÆŽv‚Á‚Ä�B
‚QCPUƒVƒ“ƒOƒ‹ƒ}ƒVƒ“‚ÅŒy‚�s‚«‚½‚¢�B
QuadCore‚𔃂¤ŒûŽÀ‚à—~‚µ‚¢‚—
‚¦�[�A‚©‚Ȃ蔙‘R‚Æ‚µ‚½Ž¿–â‚Å‚·‚ª‚¿‚å‚Á‚ƃAƒhƒoƒCƒX‚ð‚à‚炦‚Ü‚¹‚ñ‚©�H ‚ ‚錳‚ƂȂéŒvŽZƒR�[ƒh‚Å‚Í�AƒZƒ‹‚Ì•�‚â�‚‚³‚ª‚·‚ׂĂ̗̈æ‚ňê’è‚Å‚·�B ŒvŽZ‚·‚é—̈æ‚Í’·•ûŒ`‚Å�A NCX:ƒZƒ‹‚Ì�s�iX•ûŒü�j NCY:ƒZƒ‹‚Ì—ñ(Y•ûŒü�j CW:—ñ•ûŒü‚ւ̃Zƒ‹‚Ì•� CH:�s•ûŒü‚ւ̃Zƒ‹‚Ì•� ‚Æ‚¢‚Á‚½Š´‚¶‚Å‚·�B ‚Ü‚½�A‚»‚ꂼ‚ê‚̃Zƒ‹‚ɂ͒ʂµ”Ô�†‚ªŠ„‚è�U‚ç‚ê‚Ä‚¢‚Ü‚·�B �i�Å�‰‚Ì�s‚ð�¬‚³‚¢‚Ù‚¤‚©‚ç�‡‚É1.2.3�c‚ÆŠ„‚è�U‚Á‚Ä‚¢‚Á‚Ä �@’[‚É�s‚Á‚½‚玟‚Ì�s‚Ɉڂè‚Ü‚·�j �ªY 9....... 5678 1234�@ �¨X ‚±‚̃R�[ƒh‚ðŒ³‚É�A”CˆÓ‚Ì—ñˆÈ�~‚ŃZƒ‹‚̑傫‚³‚ð�c‰¡‚»‚ꂼ‚ê ”¼•ª‚É‚·‚é�i–Ê�Ï‚ð1/4�j‚É‚µ‚Ä�i‚à‚¿‚ë‚ñˆÈ�~‚Ì�s�A—ñ�”‚Í”{‚ɂȂè‚Ü‚·�j ŒvŽZ‚·‚éƒvƒ�ƒOƒ‰ƒ€‚ð�‘‚«‚½‚¢‚ÆŽv‚¢‚Ü‚·�BƒZƒ‹‚̑傫‚³‚̕ω»‚͉½’iŠK‚©�s‚í‚ê‚Ü‚·�B �i‹ï‘Ì“I‚É‚ÍY�À•WˆË‘¶‚Ì‚ ‚镨—�—ʂƔäŠr‚µ‚ăZƒ‹‚ð�¬‚³‚‚·‚é‚©‚Ç‚¤‚©”»•Ê‚µ‚Ü‚·�j
173 �F
172 �F2006/12/29(‹à) 03:03:23
�i‘±‚«�j ‚µ‚©‚µ�AŒ³‚̃R�[ƒh‚ɂ͗Ⴆ‚΃Zƒ‹‚ª‰½�s�A‰½—ñ–Ú‚©‚ð”»•Ê‚·‚邽‚ß‚É NY=(N-1)/NCX+1 NX=N-(NY-1)*NCX ‚̂悤‚È•\Œ»‚ª‘½—l‚³‚ê‚Ä‚¢‚Ü‚·�B�iN‚̓Zƒ‹‚Ì’Ê‚µ”Ô�†�j ‚Ü‚½�A‹t‚É�s‚â—ñ‚ÌŽw’è‚©‚çƒZƒ‹”Ô�†‚ð”»•Ê‚·‚邿‚¤‚È‚à‚Ì‚à‚ ‚è‚Ü‚·‚µ�A �À•WŽw’è‚É X=NY*CH ‚Ý‚½‚¢‚ÈŽ–‚à‚µ‚Ä‚¢‚Ü‚·�B NCX,NCY,CW,CH‚ð”z—ñ‚É‚µ‚Ä�A�‰Šú‚̑傫‚³‚̃Zƒ‹‚̗̈æ‚Ì�s�A—ñ�”‚ð NCX(1)�ANCY(1)‚É�AŽŸ‚̑傫‚³‚̃Zƒ‹‚Ì�s�A—ñ�”‚ðNCX(2)�ANCY(2)‚É�A ‚Æ‚¢‚¤‚悤‚ɃZƒ‹‚̑傫‚³‚ŗ̈æ‚𕪂¯‚Ä�l‚¦‚悤�A‚ÆŽv‚Á‚½‚̂ł·‚ª�A ‚ ‚éƒZƒ‹‚ª‰½”Ԗڂ̗̈æ‚É‘®‚·‚é‚©‚ð‚¢‚¿‚¢‚¿”»•Ê‚·‚é‚Ì‚à‚ß‚ñ‚Ç‚‚³‚¢‚Å‚·‚Ë�B ‚¿‚å‚Á‚Æ�ã‹L‚Ì”»•ʂ̎®‚ª•¡ŽG‚ɂȂÁ‚Ä‚«‚Ä‚µ‚Ü‚¢‚Ü‚·�B �iƒ‹�[ƒv‚Å”ñ�í‚ɉ½“x‚à’Ê‚é‚Æ‚±‚ë‚Ȃ̂Å�o—ˆ‚é‚©‚¬‚èŠÈ’P‚É‚µ‚½‚¢‚Å‚·�j ŠeƒZƒ‹‚ª‰½�s‰½—ñ–Ú‚É‘®‚·‚é‚©‚Ɖ½”Ԗڂ̗̈æ‚É‘®‚·‚é‚©‚ð ”z—ñ‚ÉŠi”[‚µ‚Ä‚¨‚¯‚΂¢‚¢‚©‚Ƃ͎v‚¢‚Ü‚·‚ª�A ƒvƒ�ƒOƒ‰ƒ€‚ÌŒoŒ±‚ª�󂢂±‚Æ‚à‚ ‚è‚©‚Ȃ薳‘ʂȂ±‚Æ‚ð‚µ‚Ä‚¢‚È‚¢‚©•sˆÀ‚ɂȂÁ‚Ä‚«‚Ü‚µ‚½�B Šù‘¶‚Ì�\‘¢‚ð�¶‚©‚µ‚½‚è�i’uŠ·‚·‚邾‚¯‚Å‚·‚Ï‚Á‚Æ�I—¹‚Æ‚©�j ‚ ‚Ü‚è—]Œv‚È‚à‚Ì‚ð’ljÁ‚µ‚È‚¢ƒGƒŒƒKƒ“ƒg‚È‚â‚è‚©‚½‚Á‚Ä‚ ‚è‚Ü‚·‚©‚Ë�H ‚â‚Á‚Ï‚è’n“¹‚É‚â‚邵‚©‚È‚¢‚Å‚µ‚傤‚©�H’·•¶‚·‚݂܂¹‚ñ�B
174 �F
172 �F2006/12/29(‹à) 03:14:28
‚·‚݂܂¹‚ñ�A �iŒë�jX=NY*CH �i�³�jY=NY*CH ‚Å‚·�B
>>173 ƒTƒCƒY‚Ɉˑ¶‚·‚é�B
�¬‚³‚¢‚Ȃ炢‚Á‚½‚ñŠù‘¶‚ÌŒvŽZŽ®‚Å‹�‚ß‚½ƒZƒ‹ƒTƒCƒY‚ðƒe�[ƒuƒ‹‚Æ‚µ‚ĕۑ¶‚·‚ê‚΂悢�B
ƒTƒCƒY‚ª‘å‚«‚‚ă�ƒ‚ƒŠ�[ƒMƒŠƒMƒŠ‚܂Ŏg‚Á‚Ä‚¢‚é‚È‚ç�A‚P‰ñ‚²‚ƂɌvŽZ‚·‚é‚Ù‚¤‚ª‚¢‚¢�B
‚T‚U‚V
‚Q‚R‚W�@�@‚Ì‚¿‚ÈŒ`‚ŃTƒCƒg‚ðŽw’肵‚Ä‚à‚¢‚¢‚È‚ç�A”»•ʂ̌vŽZŽ®‚àŠÈ’P‚ɂȂ邩‚à‚µ‚ê‚È‚¢�B
‚P‚S‚X�@�@ŒvŽZ‹@Šw‰È‚Ì�l‚©‚ç‚Í‚µ‚©‚ç‚ê‚邪�A�‚‘¬‚Å‚â‚é‚ɂ̓f�[ƒ^�\‘¢‚Æ�ˆ—�‚ª
�@�@�@�@�@�؂藣‚¹‚È‚¢‚Ì‚Å�A‚Ü‚Ÿ–â‘è‚ð—�‰ð‚µ�®—�‚µ‚ÄŽ©•ª‚Å—Ç‚�l‚¦‚ë‚—
176 �F
172 �F2007/01/05(‹à) 18:17:30
>>175 ’xƒŒƒX�\‚µ–ó‚È‚¢�B—L“‚²‚´‚¢‚Ü‚·�B
‚â‚Á‚Ï‚è‚ ‚é’ö“x’n“¹‚É‚â‚é‚Ù‚©–³‚³‚»‚¤‚Å‚·‚Ë�B
‚µ‚±‚µ‚±‚â‚Á‚Ă܂·�B
ŽáбFortran‚©‚çˆí‚ê‚Ü‚·‚ª�A‚í‚©‚é•û‚²‹³Žö‚‚¾‚³‚¢�B Intel‚ÌVisual Fortran‚Å�ì�¬‚µ‚½ƒRƒ“ƒ\�[ƒ‹ƒAƒvƒŠ‚©‚ç VC‚Å�ì‚Á‚½Libƒtƒ@ƒCƒ‹‚ðŒÄ‚Ñ�o‚µ‚½‚¢‚Å‚·�B ŠÈ’P‚É�‘‚‚Æ�AVC‚Í BOOL PrintMessage() { ’†—ª } ‚Æ‚¢‚¤ŠÖ�”‚ɂȂÁ‚Ä‚¢‚Ü‚·�B ‚±‚ê‚ðFortran‚©‚çŒÄ‚Ñ�o‚·‚½‚ß‚É�A Ž©•ª‚È‚è‚Ƀ}ƒjƒ…ƒAƒ‹‚ð“Ç‚Ý�A ˆÈ‰º‚̂悤‚ɃR�[ƒfƒBƒ“ƒO‚µ‚Ă݂܂µ‚½�B
INTERFACE LOGICAL FUNCTION PrintMessage() !DEC$ ATTRIBUTES STDCALL :: PrintMessage END FUNCTION END INTERFACE LOGICAL LX LX = PrintMessage() ‚µ‚©‚µ�AƒŠƒ“ƒNŽž‚É_PrintMessage‚ªŒ©‚‚©‚è‚Ü‚¹‚ñ�A‚Æ ƒŠƒ“ƒNƒGƒ‰�[‚ª�o‚Ü‚·�B ‰ðŒˆ•û–@‚Í‚ ‚é‚Å‚µ‚傤‚©�H ‚È‚¨�AVC‚©‚ç�ã‹LVC‚ðŒÄ‚Ñ�o‚·ƒP�[ƒX‚à‚ ‚邽‚ß�A —¼•ûFortran‚Å�‘‚¯‚Î�H‚Æ‚¢‚¤‚͖̂³‚µ‚Å‚¨Šè‚¢‚µ‚½‚¢‚Å‚·�B ˆê‰žŠÂ‹«‚Æ‚µ‚Ä‚Í�A Visual Studio .NET 2003 + Intel Visual Fortran v9.0 ‚ɂȂè‚Ü‚·�B ‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·�B
>>178 ŒÄ‚Ñ�o‚µ‹K–ñ‚ªSTDCALL‚Ì�ê�‡�AŠO•”–¼‚̓fƒtƒHƒ‹ƒg‚Å‚·‚ׂÄ�¬•¶Žš‚ƉðŽß‚³‚ê‚Ä‚µ‚Ü‚¤‚Ì‚Å
‘å•¶Žš�E�¬•¶Žš‚ª�¬�Ý‚·‚é�ê�‡‚͈ȉº‚Ì—l‚É‚·‚é
!DEC$ ATTRIBUTES STDCALL, DECORATE, ALIAS: 'PrintMessage' :: PrintMessage
C‘¤‚Ì PrintMessage() ŠÖ�”‚à __stdcall ‚ŃRƒ“ƒpƒCƒ‹‚³‚ê‚Ä‚¢‚é•K—v‚ª‚ ‚é�B
C++‚Ì�ê�‡‚Í extern "C" ‚à•K—v�B
‚Ü‚½�AIVF‚Å‚ÍLOGICAL‚Ì“à•”•\Œ»�i�®�”’l�j‚ªŠï�”‚̂Ƃ«�^�A‹ô�”‚̂Ƃ«‹U‚ƂȂé‚Ì‚Å
‘¼Œ¾Œê‚ÌŠÖ�”‚ÆLOGICAL‚ðŽó‚¯“n‚µ‚·‚é�ê�‡‚Í’�ˆÓ‚·‚邱‚Æ�B
180 �F
178 �F2007/01/09(‰Î) 21:34:40
>>179 ƒŒƒX‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
‚È‚é‚Ù‚Ç�E�E�B
F‘¤‚Ì‘å•¶Žš�¬•¶Žš‘Î�ô‚̓}ƒjƒ…ƒAƒ‹‚É�‘‚¢‚Ä‚ ‚è‚Ü‚µ‚½‚ª�A
‚¢‚ë‚¢‚ë’²�®‚µ‚Ä‚àŒ‹‰Ê‚ª“¯‚¶‚¾‚Á‚½‚̂Ŋ֌W‚È‚¢‚ÆŽv‚Á‚Ă܂µ‚½�B
C‘¤‚Ì‘Î�ô‚Í‘S‚Œ©‚¦‚Ă܂¹‚ñ‚Å‚µ‚½�O�O
�³’¼C‚̓h‘f�l‚Ȃ̂Å�ã‹L‚̂悤‚É‚¢‚í‚ê‚Ä‚·‚®‚ɑΉž‚Å‚«‚Ü‚¹‚ñ‚ª
ŽQ�l‚É‚µ‚Ä’²‚ׂĂ݂܂·�I
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½�B
>>180 IntelFortran‚̃}ƒjƒ…ƒAƒ‹Œ©‚邯‚¿‚Ü‚¿‚Ü‚Æ�‘‚¢‚Ä‚ ‚邿�B
DECORATE�C�üŽq‚ª�V�Ý‚³‚ꂽ‚Ì‚Å�A‚c‚d‚bŽž‘ã‚É�ê�‡•ª‚¯‚µ‚Ä�‘‚¢‚Ä‚¢‚½‚Ì‚ª
‚·‚Á‚«‚肵‚Ä‚¤‚ꂵ‚¢�B
>>180 ATTRIBUTES STDCALL, ... ‚ł͂Ȃ ATTRIBUTES C, ... ‚ðŽg‚¦‚ÎCŒ¾Œê‚Ì•û‚Í‚¢‚¶‚ç‚È‚‚Ä‚à‚¨‚‹�B
183 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/01/12(‹à) 23:52:31
ŽO‚‚Ì�”’lƒf�[ƒ^‚ð—^‚¦‚Ä‚»‚ÌŽO‚‚Ì�”’l‚Ì�Å‘å’l�A�Å�¬’l�A’†‰›’l�A •½‹Ï’l�A•W�€•Î�·�A•s•ΕªŽU‚ð‹�‚ß‚ç‚ê‚éƒvƒ�ƒOƒ‰ƒ€‚ð�ì�¬‚¹‚æ�B ‚í‚©‚ç‚È‚‚Ä‘å•ςł·�B ‚¨Šè‚¢‚µ‚Ü‚·
184 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/01/16(‰Î) 12:41:49
185 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/01/16(‰Î) 12:45:26
Šù‚É“š‚¦‚ª�o‚Ä‚é�B ‚Ä‚¢‚¤‚©ƒ}ƒ‹ƒ`�B
>>184 Fortran‚ÌŽ‘ŽYŽg‚¦‚È‚¢‚Ì‚ÉFortran•—‚É‚·‚éˆÓ–¡‚ª‚¢‚Ü‚¢‚¿—Ç‚•ª‚©‚ç‚ñ�B
>>184 pseudocode ‚ð‚»‚Ì‚Ü‚ÜƒRƒ“ƒpƒCƒ‹‚µ‚Ä‚‚ê‚é‚Ȃ炤‚ꂵ‚¢�B
190 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/01/19(‹à) 23:38:03
Salford ftn95‚Ålapack95‚ðŽg‚¢‚½‚¢‚Ë‚ñ‚¯‚Ç�A‚Ç�[‚·‚ê‚΂¢‚¢‚ñ�H�H
>>190 ‚P�DNetlib‚©‚çLAPACK‚ð�E‚Á‚Ä‚‚é�B
‚Q�D‚Ç‚¤‚É‚©‚µ‚Äblas.lib‚Ælapack.lib
192 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/01/20(“y) 00:44:49
>>190 ‚P�DNetlib‚©‚çLAPACK‚ð�E‚Á‚Ä‚‚é�B
‚Q�D‚Ç‚¤‚É‚©‚µ‚Äblas.lib‚Ælapack.lib‚ð‚‚‚é�B
‚R�DNetlib‚©‚çLAPACK95‚ð�E‚Á‚Ä‚‚é�B
‚S�D‚Ç‚¤‚É‚©‚µ‚Älapack95.lib‚ƃ‚ƒWƒ…�[ƒ‹ƒtƒ@ƒCƒ‹‚ð‚‚‚é�B
‚T�D > ftn95 hoge.f90
‚U�D > slink hoge.obj lapack95.lib lapack.lib blas.lib
193 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/01/20(“y) 08:07:50
>>192 ‚Ç‚à‚Ç‚à�I
‚Ç‚¤‚É‚©‚µ‚Ä‚Á‚ĂƂ±‚낪–â‘肾‚ª�A‚Ç‚¤‚É‚©‚µ‚Ă݂܂·�B
‚Ç‚¤‚É‚©‚·‚é•û–@‚ª‚í‚©‚Á‚½‚ç�A‚Ü‚½‚æ‚낵‚ã�`�I
77‚Å“®“I”z—ñ‚Á‚Ăł«‚È‚¢‚Ì�H x(i,j) ‚Á‚Ä‚µ‚Æ‚¢‚Ä ƒtƒ@ƒCƒ‹‚©‚çi,j“Ç‚Ý�ž‚ñ‚ŃTƒCƒYŒˆ‚ß‚é‚Ý‚½‚¢‚ÈŠ´‚¶‚É‚µ‚½‚¢‚ñ‚¾‚¯‚Ç�E�E
>>194 Œ¾Œê‹KŠi‚Æ‚µ‚Ä‚Í�o—ˆ‚È‚¢�B
‚½‚¾�AƒRƒ‚ƒ“‚Æ‚©�ã‚̃‹�[ƒ`ƒ“‚ő傫‚ȃ��[ƒN”z—ñ‚ðŽæ‚Á‚Ä‚¨‚¢‚Ä�A
‚¢‚Á‚½‚ñ•K—v‚ȃTƒCƒY‚ð’m‚Á‚½�ã‚ʼnº‚̃Tƒuƒ‹�[ƒ`ƒ“‚Å�ì‹Æ—̈æ‚Å�®�‡”z—ñ‚ð
�Ø‚Á‚ÄŽg‚Á‚ÄŽ—‚½‚悤‚È‚±‚Æ‚Í�o—ˆ‚é�B
CŒ¾Œê‚àK&R‚Ì•t˜^‚ðŒ©‚é‚Æmalloc‚ð‚»‚¤‚¢‚¤Š´‚¶‚ÅŽÀŒ»‚·‚é—á‚ð�o‚µ‚Ä‚¢‚é�B
90‚È‚çƒ|ƒCƒ“ƒ^�[Žg‚¦‚é�B PGI‚Æ‚©77‚Å‚àƒ|ƒCƒ“ƒ^�[Žg‚¦‚é�ˆ—�Œn‚à‚ ‚é�B ƒ|ƒCƒ“ƒ^�[‚ÌŽg‚¦‚È‚¢77‚Å‚àC‚Æ‚Ì�‡‚킹‹Z‚ʼn”\�B
197 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/01/20(“y) 16:25:44
>>193 LAPACK(BLAS):
�Enetlib‚©‚ç lapack-3.1.0.tgz ‚ðŽæ‚Á‚Ä‚‚é�B
blas.lib:
�Elapack-3.1.0\BLAS\SRC ‚Ì’†‚̃\�[ƒX�i*.f�j‚ð‘S•”ƒRƒ“ƒpƒCƒ‹‚·‚é�B
�E�o—ˆ‚½ƒIƒuƒWƒFƒNƒgƒtƒ@ƒCƒ‹‚ð slim ‚Å blas.lib ‚ɂ܂Ƃ߂é�B
�@slim *.obj /file:blas
lapack.lib:
�Elapack-3.1.0\INSTALL ‚Ì’†‚Ì dlamch.f, dsecnd.f, ilaver.f, lsame.f, second.f, slamch.f ‚ð
lapack-3.1.0\SRC ‚ɃRƒs�[‚·‚é�B
’A‚µ�AFTN95‚É‚Í second.f, dsecnd.f ‚ÅŽg‚í‚ê‚Ä‚¢‚é ETIMEŠÖ�”‚ª–³‚¢‚Ì‚Å
ETIME‚ðŽ©�ì‚·‚é‚© CPU_CLOCK, SYSTEM_CLOCK•Ó‚è‚ðŽg‚Á‚Ä�‘‚«Š·‚¦‚é�B
�Elapack-3.1.0\SRC ‚Ì’†‚̃\�[ƒX‚ð‘S•”ƒRƒ“ƒpƒCƒ‹‚·‚é�B
‚±‚Ì�Û�Aslaruv.f, dlaruv.f ‚ðƒRƒ“ƒpƒCƒ‹‚·‚邯‚«‚Í�Å“K‰»ƒIƒvƒVƒ‡ƒ“‚ðŠO‚·�B
�E�o—ˆ‚½ƒIƒuƒWƒFƒNƒgƒtƒ@ƒCƒ‹‚ð slim ‚Å lapack.lib ‚ɂ܂Ƃ߂é�B
tmglib.lib:
�Elapack-3.1.0\TESTING\MATGEN ‚Ì’†‚̃\�[ƒX‚ð‘S•”ƒRƒ“ƒpƒCƒ‹‚·‚é�B
‚±‚Ì�Û�Aslaran.f, dlaran.f ‚ðƒRƒ“ƒpƒCƒ‹‚·‚邯‚«‚Í�Å“K‰»ƒIƒvƒVƒ‡ƒ“‚ðŠO‚·�B
�E�o—ˆ‚½ƒIƒuƒWƒFƒNƒgƒtƒ@ƒCƒ‹‚ð slim ‚Å tmglib.lib ‚ɂ܂Ƃ߂é�B
198 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/01/20(“y) 16:27:59
�i
>>197 ‚Ì‘±‚«�j
LAPACK95:
�Enetlib‚©‚ç lapack95.tgz ‚ðŽæ‚Á‚Ä‚«‚Ä“WŠJ‚·‚é�B
�Elapack95\SRC‚Ɉړ®�B
�Ela_auxmod.f90 ‚ðƒRƒ“ƒpƒCƒ‹‚·‚é�B �¨ la_auxmod.mod, la_precision.mod ‚ª�o—ˆ‚é�B
�Ef77_lapack_single_double_complex_dcomplex.f ‚ðƒRƒ“ƒpƒCƒ‹‚·‚é�B �¨ f77_lapack.mod ‚ª�o—ˆ‚é�B
�Ef95_lapack_single_double_complex_dcomplex.f ‚ðƒRƒ“ƒpƒCƒ‹‚·‚é�B �¨ f95_lapack.mod ‚ª�o—ˆ‚é�B
�Ela_csygst.f90, la_csygv.f90, la_csygvd.f90, la_csytrd.f90, la_zsygst.f90, la_zsygv.f90, la_zsygvd.f90, la_zsytrd.f90
ˆÈŠO‚Ì la_*.f90 ‚ðƒRƒ“ƒpƒCƒ‹‚·‚é�B
�E�o—ˆ‚½ƒIƒuƒWƒFƒNƒgƒtƒ@ƒCƒ‹‚ð slim ‚Å lapack95.lib ‚ɂ܂Ƃ߂é�B
ˆÈ�ã‚Å�o—ˆ‚½ƒ‰ƒCƒuƒ‰ƒŠƒtƒ@ƒCƒ‹(*.lib)‚ðŠÂ‹«•Ï�” LIB ‚ÅŽw’肵‚½ƒtƒHƒ‹ƒ_‚Ö�A
ƒ‚ƒWƒ…�[ƒ‹ƒtƒ@ƒCƒ‹(*.mod)‚ðŠÂ‹«•Ï�” MOD_PATH ‚ÅŽw’肵‚½ƒtƒHƒ‹ƒ_‚Ö‚»‚ꂼ‚êˆÚ‚·�B
199 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/01/20(“y) 17:04:13
ŠÖ�”–¼‚ðˆø�”‚ÉŽg‚¢‚½‚¢‚̂ł·‚ª�A‚d‚w‚s‚d‚q‚m‚`‚k•¶‚ðŒÄ‚Ñ�o‚µ‘¤‚ÅŽg‚Á‚Ä‚à ‚¤‚Ü‚‚¢‚«‚Ü‚¹‚ñ�B ‰º‚̃vƒ�ƒOƒ‰ƒ€‚Ȃ̂ł·‚ª�A‰½�ˆ‚ªŠÔˆá‚Á‚Ä‚¢‚é‚ñ‚Å‚µ‚傤�H External func real func,SUM write(*,*) SUM(func) end real Function SUM(f) External func real f SUM = f(1.0)+f(2.0) return end real Function func(x) real x func = x return end
>>199 SUM�i�j�@‚ªF90‚ÌŠÖ�”‚Æ�¬“¯‚³‚ê‚Ä‚¢‚é‚ñ‚Å“à‰Èˆã�H
SUM0‚Æ‚©‚É‚·‚ê‚΂¨‚j
>>199 External func �¨ external func, SUM
202 �F
199 �F2007/01/20(“y) 22:07:45
>>200 >>201 �A‚²Žw“E‚Ì•û–@‚Å‰ðŒˆ‚·‚邱‚Æ‚ª�o—ˆ‚Ü‚µ‚½�B
—L“‚²‚´‚¢‚Ü‚·�B
203 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/01/20(“y) 22:37:50
>>197 ,198
‚ ‚肪‚Æ‚¤�`�AŠi“¬‚Ì––‰½‚Æ‚©‚È‚è‚Ü‚µ‚½�B
ƒIƒŒ‚à‚ ‚ñ‚½‚‚ç‚¢�A‚�‚ƒ‚ðŽ©—R‚É‚ ‚â‚‚肽‚¢‚à‚ñ‚Å‚·‚í�I
–{—ˆ‚È‚çMakefile‚ð�‘‚¢‚Ä�AƒeƒXƒgƒvƒ�ƒOƒ‰ƒ€‚àŠÜ‚ß‚Ämake(MK32)‚Å�ˆ—�‚³‚¹‚é‚ׂ«‚Ȃ̂¾‚낤‚¯‚Ç FTN95‚Ì�ê�‡�A‘¼‚̃Rƒ“ƒpƒCƒ‰‚ƃIƒvƒVƒ‡ƒ“‚ÌŽw’è•û–@‚ªˆá‚Á‚½‚è‚·‚é‚©‚ç’†�X–Ê“|‚‚³‚¢�B
Ž¿–â‚Å‚·�B OPEN (4,FILE=RESULT.OUT,FORM='FORMATTED') ‚±‚ÌRESULT.OUT‚ð�A‚ ‚éI‚ÆŒ¾‚¤�”’l‚ð“Ç‚Ý�ž‚ñ‚Å —Ⴆ‚ÎI=5000‚È‚çRESULT5000.OUT‚̂悤‚É‚µ‚½‚¢‚ñ‚Å‚·‚ª�A �o—ˆ‚é‚Å‚µ‚傤‚©�H—v‚·‚é‚ÉŒvŽZ‚̃Xƒeƒbƒv�”‚ɉž‚¶‚Ä Ž©“®“I‚Ƀtƒ@ƒCƒ‹–¼‚ð‚‚¯‚Ä�o—Í‚µ‚Ä‚â‚肽‚¢‚ñ‚Å‚·‚ª�A OPEN‚Ì’†�g‚ð‚¢‚¶‚邾‚¯‚¶‚áƒ_ƒ�‚Å‚·‚©‚Ë�H
206 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/01/26(‹à) 10:04:30
>>205 ‚»‚ÌŽ¿–â‚Í�ç‰ñ‚‚ç‚¢�o‚Ä‚¢‚é�B
‰ß‹Žƒ�ƒOŒ©‚ê
207 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/01/28(“ú) 18:26:34
Ž©•ª‚̃}ƒVƒ“‚̃tƒH�[ƒgƒ‰ƒ“ƒRƒ“ƒpƒCƒ‰ƒRƒ}ƒ“ƒh‚ð�`‚ɂ͂ǂ¤‚µ‚½‚ç—Ç‚¢‚Å‚·‚©�H VINELINUXŽg‚Á‚Ă܂·�B
>>207 shell ‚É g77 ‚Æ‚© gfortran ‚Æ‚© g95 ‚Æ‚© ifort ‚Æ‚©“ü‚ê‚Ă݂é�B
Žg‚¦‚邿‚¤‚È‚ç no input files ‚ȂǂƕԂÁ‚Ä‚‚é�B
‚È‚¯‚è‚Ꭹ•ª‚ŃCƒ“ƒXƒgƒ��[ƒ‹‚·‚é�B
209 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/01/28(“ú) 21:47:58
‘S•”Žg‚¦‚Ü‚¹‚ñ‚Å‚µ‚½�B ifort‚¢‚ꂽ‚¢‚̂ł·‚ª�A‚Ç‚±‚Ń_ƒEƒ“ƒ��[ƒh‚Å‚«‚Ü‚·‚©�H
211 �F
209 �F2007/01/28(“ú) 22:35:38
‰½“x‚à‚·‚݂܂¹‚ñ�B ƒCƒ“ƒeƒ‹‚̃Rƒ“ƒpƒCƒ‰“ü‚ê‚æ‚¤‚Æ‚µ‚½‚牺‹L‚̃�ƒbƒZ�[ƒW‚ÅŽ~‚Ü‚Á‚Ä‚µ‚Ü‚¢‚Ü‚·�B ‰ðŒˆ•û–@‚ðŒä‘¶‚¶‚Ì‚©‚½‚Í‹³‚¦‚Ä‚‚¾‚³‚¢�B ./.././data/install_fc.sh: line 1459: ERROR: unable to find command "ls" !: command not found ./.././data/install_fc.sh: line 1463: Please add the location to the above commands to your PATH and re-run the script.: command not found ./.././data/install_fc.sh: line 1464: Please press Enter to continue...: command not found
>>211 > ‰ðŒˆ•û–@‚ðŒä‘¶‚¶‚Ì‚©‚½‚Í‹³‚¦‚Ä‚‚¾‚³‚¢�B
–éŠÔ’†Šw‚ʼnpŒê‚ðŠw‚тȂ¨‚·�B
‚Â�[‚© ls‚ªŒ©‚‚©‚ç‚ñ‚Ä�A‚Ç‚ñ‚Ȋ‹«‚â‚Ë‚ñ
Eclisp‚ÌPhortran‚Á‚Ăǂ¤‚æ�H ‚Æ‚‚ÉLinu‚˜�ã‚ÌIntelƒRƒ“ƒpƒCƒ‰‚Ƃ̑g‚Ý�‡‚킹‚ÌŽg‚¢�S’n�@’m‚肽‚¢
216 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/02/03(“y) 07:25:11
Mac OS X �ã‚Ìgfortran 4.0‚ŃRƒ“ƒpƒCƒ‹‚µ‚½Žž‚É gfortran: spec failure: unrecognized spec option 'M' ‚Æ‚¢‚¤ƒGƒ‰�[‚ª‚Å‚é‚̂ł·‚ª‰½‚ª‚Ü‚¸‚̂łµ‚傤�H�@‚¿‚Ȃ݂ɑ¼‚̃}ƒVƒ“(LINUX)‚Ìgfortran‚Å‚Í ƒGƒ‰�[‚͂ł܂¹‚ñ�Bˆê‰ž�A‘–‚é‚̂ł·‚ª�Awrite‚Åposition='append'‚ðŽw’肵‚Ä‚àŠù‘¶ƒtƒ@ƒCƒ‹‚É ƒf�[ƒ^‚ð•t‚¯‰Á‚¦‚¸�AŠ®‘S‚É�ã�‘‚«‚µ‚Ä‚µ‚Ü‚¤‚Ì‚Å�¢‚Á‚Ä‚¢‚Ü‚·�B‚¿‚Ȃ݂ÉLINUX�ã‚Å‚Í ‚¤‚Ü‚�s‚«‚Ü‚·�B
217 �F
209 �F2007/02/04(“ú) 11:51:06
>>214 ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
Š´ŽÓ‚µ‚Ü‚·�B
218 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/02/15(–Ø) 00:11:54
‚m‚`‚f‚Ì‚e‚�‚’‚”‚’‚�‚Ž‚a‚•‚‰‚Œ‚„‚…‚’‚Ì‚m‚`‚f‚e‚�‚’‚”‚’‚�‚Ž‚X‚TƒRƒ“ƒpƒCƒ‰‚Ì‚u‚…‚’‚“‚‰‚�‚Ž‚Á‚Ä‚T�D‚O�H‚»‚ê‚Æ‚à‚T�D‚P�H ‚T�D‚P‚Ȃ甃‚¢‚½‚¢‚ñ‚¾‚¯‚Ç�A’N‚©’m‚Á‚Ä‚é�l‚¢‚é�H
‘SŠp‰p�”‚Í‹CŽ�‚¿ˆ«‚¢‚Æ‚¢‚¤ƒZƒ“ƒX‚ð�g‚É’…‚¯‚Ä‚©‚ç�o’¼‚µ‚Ä‚‚ê�B
221 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/02/17(“y) 00:00:33
>>219 ‚²‚ß‚ñ�@’ù�³‚³‚¹‚Ä‚à‚炤
‚m‚`‚f‚Ì‚e‚�‚’‚”‚’‚�‚Ž‚a‚•‚‰‚Œ‚„‚…‚’‚Ì‚m‚`‚f‚e‚�‚’‚”‚’‚�‚Ž‹ãŒÜƒRƒ“ƒpƒCƒ‰‚Ì‚u‚…‚’‚“‚‰‚�‚Ž‚Á‚ćX�D‚O�H‚»‚ê‚Æ‚à‡X�D‡T�H
‡X�D‡T‚Ȃ甃‚¢‚½‚¢‚ñ‚¾‚¯‚Ç�A’N‚©’m‚Á‚Ä‚é�l‚¢‚é�H
‘SŠpŠ¿�”Žš‚©ƒ��[ƒ}�”Žš‚ð‚‚©‚¦‚΂¢‚¢‚킯‚¾‚ë�H
‚‚܂ç‚ñ
ƒtƒH�[ƒgƒ‰ƒ“‚Á‚Ä�¡‚Å‚àƒŠƒAƒ‹‚ÉŽg‚Á‚Ă邯‚±‚ ‚é‚Ì‚©�Hw –{•¨‚̃vƒ�ƒOƒ‰ƒ}‚Í�`�A‚ÌŽž‘ã‚Å‚à‚·‚łɎž‘ã’x‚ê‚̃_ƒ�Œ¾Œê‚¾‚Á‚½‚Ì‚É
>>223 ‚¨‚Ü‚¦�A‚¿‚å‚Á‚Æ‚»‚±‚É�³�À‚µ‚ë�B
‚±‚Ì�¢ŠÔ’m‚炸‚ª‚—
‚¢‚¢‚©�A“dŽqŒvŽZ‹@‚Ì–{—¬‚ÍFortran‚¾‚¼�I
ƒXƒpƒRƒ“�Eƒ‰ƒ“ƒLƒ“ƒO‚Ì‹@ŠB‚Å“®‚¢‚Ä‚¢‚éƒvƒ�ƒOƒ‰ƒ€‚ÍŠî–{“I‚ÉFortran‚¾�B
‘å‘̃}ƒ‹ƒ`ƒRƒA‚Å•À—ñ‰»‚Æ‚¢‚Á‚Ä‚¢‚邪�AMPI‚àOpenMP‚à‘ΉžƒRƒ“ƒpƒCƒ‰‚ÍFortran‚©
‚b‚µ‚©‚È‚‚Ä�AC‚Í‚ ‚‚܂ł¨‚Ü‚¯‚¾�B‘命�”‚Ì�lŠÔ‚ÍFortran‚Ńvƒ�ƒOƒ‰ƒ€�‘‚¢‚Ä‚é�B
‚±‚ê‚©‚ç•À—ñ‰»‚ªŽå—¬‚ɂȂé‚ɂ‚ê�AFortran‚Ì“V‰º‚ª�Ăтâ‚Á‚Ä‚‚é‚̂͊ԈႢ‚È‚¢�I
‰÷‚¢‰ü‚ß‚æ�I‚³‚à‚È‚‚Î’n�–‚̋Ɖ΂É�Ä‚©‚ê‚é‚ׂµ�I
�Ú‚µ‚‚̓}ƒ^ƒˆƒVƒCƒGƒX‚̃TƒCƒg‚ð�n’m‚·‚ׂµ�B
—Bˆê�_Fortran
>>221 �u‘SŠp‰p�”�v‚̈Ӗ¡‚ª‚í‚©‚邿‚¤‚ɂȂÁ‚Ä‚©‚ç�o’¼‚µ‚Ä‚‚ê�B
227 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/02/17(“y) 01:43:01
>>216 gfortran ‚Ç‚â‚Á‚Ä‚¢‚ꂽ‚ñ‚Å‚·‚©�H
‰´‚Ìmac‚ɂ͂͂¢‚Á‚ĂȂ¢‚ñ‚¾‚Ä‚Ç
>>227 ŒN‚ÌMac‚̓nƒYƒŒ‚¾‚Á‚½‚ñ‚¾‚æ�B
>>226 ‚¨‚Ü‚¢‚ç�C‚¤‚º�[‚©‚瑼�Ђłâ‚ê�D
�ŋ߂‚¾ƒXƒŒ‚̂ق¤‚ªƒŒƒxƒ‹‚ª�‚‚¢‚È‚—
232 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/02/21(�…) 15:40:26
233 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/02/21(�…) 22:54:23
>>232 ‡dƒNƒX�I
nag‚̃TƒCƒg‚É’²‚ׂɂ¢‚Á‚½‚ñ‚¾‚ª�AWindows—p‚͂܂¾5.0‚¾‚Á‚½‚Ì‚Å�A‚¾‚ß‚©‚ÆŽv‚Á‚½‚ª�B
ˆÀ‚¢‚â‚”ƒ‚Á‚ÄŒ©‚Á‚©�[�@‚Å‚àƒ‰ƒCƒZƒ“ƒX‚ªƒEƒ[�[‚ñ‚¾‚æ‚È�B
234 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/02/25(“ú) 00:31:39
Intel Visual Fortran 9.1‚É•t‘®‚µ‚Ä‚‚éƒfƒoƒbƒK(idb)‚Ì�Ú‚µ‚¢“ú–{Œê‚ÌŽ‘—¿‚â�‘�ЂÁ‚ĂȂ¢‚ñ‚Å‚µ‚傤‚©�H
ƒGƒNƒZƒ‹ƒ\ƒtƒg‚ªƒRƒ“ƒpƒCƒ‰ƒ}ƒjƒ…ƒAƒ‹‚Ì“ú–{Œê–ó‚ð�o‚µ‚Ä‚¢‚½‚ª�AƒfƒoƒbƒK‚à‚ ‚Á‚½‚©‚È�H
>>235 XLsoft‚©‚ç“ú–{Œêƒ}ƒjƒ…ƒAƒ‹‚𗎂Ƃµ‚Ă݂܂µ‚½‚ª�A
�Ú‚µ‚�Ú‚Á‚Ä‚¢‚é‚Ì‚ÍVisual Studio‚ł̃fƒoƒbƒO‚¾‚¯‚ÅIDB‚ɂ‚¢‚Ă͎å—v‚ȃRƒ}ƒ“ƒh‚Ì�à–¾‚݂̂łµ‚½�B
>IDB ‚ÉŠÖ‚·‚é�Ú�ׂÍ�A[ƒXƒ^�[ƒg] ƒ�ƒjƒ…�[‚©‚ç—˜—p‰Â”\‚ȃCƒ“ƒeƒ‹�EƒfƒoƒbƒK�[‚̃Iƒ“ƒ‰ƒCƒ“ƒ}ƒjƒ…ƒAƒ‹ (‰pŒê) ‚ðŽQ�Æ‚µ‚Ä‚‚¾‚³‚¢�B
‚Ƃ̂±‚Æ‚Å�E�E�E‚±‚̃}ƒjƒ…ƒAƒ‹�AŠ®‘S‚É“ú–{Œê–󂳂ê‚Ä‚é–ó‚¶‚á‚È‚¢‚ñ‚Å‚·‚Ë�B
Language Reference‚Æ‚©‰p•¶‚̂܂܂¾‚µ�B
237 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/03/11(“ú) 12:16:05
Interl Visual Fortran‚̃fƒoƒbƒK‚Í•³‚¾‚ÆŽv‚¤�BHP‚âCompaq‚Ì� ‚܂ł̂ªˆê”Ô—Ç‚©‚Á‚½�B
Compaq Visual Fortran‚Ì� ‚ÍVisual Studio‚̃fƒoƒbƒK‚¾‚¯‚¶‚á‚È‚©‚Á‚½‚Á‚¯
240 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/03/11(“ú) 17:16:03
idb‚ÍŠT‚ËUNIX/Linux‚Ìdbx/gdbŒÝŠ·�i‚̃Rƒ}ƒ“ƒh‘ÌŒn�j‚Ȃ̂Å
‚±‚ê‚ç‚ɂ‚¢‚Ä�‘‚©‚ê‚½Ž‘—¿‚ð’T‚¹‚ÎŽQ�l‚ɂȂ邩‚à’m‚ê‚ñ�B
>>237 >/O3‚Æ‚©•�’ʂɎg‚Á‚Ä‘å�ä•v‚Ȃ̂©‚È�E�E�E
“¯Žž‚ɃfƒoƒbƒO�EƒIƒvƒVƒ‡ƒ“‚à•t‚¯‚Æ‚¯‚Î‚Æ‚è‚ ‚¦‚¸‚¨‚‹�A‚¾‚ª
�Å“K‰»‚É‚æ‚é–½—߂̕À‚בւ¦‚⃋�[ƒv‚̃Aƒ“ƒ��[ƒ‹‚Ȃǂ̉e‹¿‚Å
ƒ\�[ƒXƒtƒ@ƒCƒ‹’Ê‚è‚ɃgƒŒ�[ƒX‚Å‚«‚È‚‚È‚é�Š‚ª�o‚Ä‚‚é�B
>>240 ƒCƒ“ƒeƒ‹�EƒRƒ“ƒpƒCƒ‰‚̓fƒoƒbƒOƒIƒvƒVƒ‡ƒ“‚‚¯‚Ä‚àŽ©“®“I‚É�Å“K‰»‚Í—}Ž~‚³‚ê‚È‚¢‚Ì‚©�H
>>241 ifort /debug:full hoge.f90
‚̂悤‚ɃfƒoƒbƒO�EƒIƒvƒVƒ‡ƒ“�i/debug:full�j‚¾‚¯•t‚¯‚Ä�Å“K‰»‚ÌŽwަ‚ð�È—ª‚·‚邯
‚·‚ׂĂÌ�Å“K‰»‚ª–³Œø‚ɂȂé�B
ifort /debug:full /O3 hoge.f90
‚̂悤‚É�Å“K‰»‚𖾎¦�i/On�j‚·‚邯�A�Å“K‰»‚µ‚½�ó‘ԂŃfƒoƒbƒO�î•ñ‚Ì�¶�¬‚ð�s‚¤�B
>>242 ‚»‚¤‚¢‚Á‚½Ž‘—¿‚͂ǂ±‚©‚É‚ ‚é‚à‚Ì‚¾‚낤‚©�H
•KŽ€‚±‚¢‚ăOƒO‚Á‚ÄŒ©‚½‚ªƒCƒ}ƒCƒ`‚æ‚—�‰ð‚Å‚«‚È‚‚Ä�E�E�E
‰½‚©‚æ‚¢‚à‚Ì‚ª‚ ‚ê‚΋³‚¦‚Ä‚‚¾‚³‚¢
>>243 XLsoft‚©‚çDL�o—ˆ‚é“ú–{Œêƒ}ƒjƒ…ƒAƒ‹‚©‚ç�B
>>242 ‚Ì“à—e‚È‚ç�A�uƒAƒvƒŠƒP�[ƒVƒ‡ƒ“‚̃rƒ‹ƒh�v�|�uDebugging�v�|�uƒfƒoƒbƒO‚Æ�Å“K‰»�v‚Ì�Š‚É�Ú‚Á‚Ä‚¢‚Ü‚·�B
>>244 ‚Ü‚³‚©‚»‚ñ‚ȂƂ±‚ë‚É�I�I
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�A�n“Ç‚µ‚Ä‚«‚Ü‚·�B
246 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/03/20(‰Î) 19:03:09
247 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/03/21(�…) 11:13:38
248 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/03/21(�…) 13:16:33
ƒWƒ‡ƒ“‚³‚ñ�A‰ù‚©‚µ‚¢
249 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/03/21(�…) 14:02:59
250 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/03/21(�…) 14:50:05
ƒoƒbƒJƒX‚Á‚ÄŽðˆù‚Ý‚Ì
251 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/03/23(‹à) 19:54:29
‚·‚¢‚Ü‚¹‚ñ�A�‰�SŽÒ‚Å‚·�B �«‚̂悤‚ȃf�[ƒ^‚ð‰æ–Ê‚É�o‚µ‚½‚¢‚̂ł·‚ª ŽQ�lƒvƒ�ƒOƒ‰ƒ€‚ð‹³‚¦‚Ä‚¢‚½‚¾‚¯‚Ü‚¹‚ñ‚©�H 1964/1/1 115 89 80 81 104 154 209 256 287 298 285 260 229 199 176 170 189 1964/1/2 155 111 89 81 91 124 171 227 266 293 292 274 252 221 190 174 181 1964/1/3 191 147 112 92 94 113 151 194 241 271 290 283 267 241 214 189 176 1964/1/4 222 185 147 117 101 107 134 168 208 248 274 284 274 256 233 208 185 1964/1/5 238 213 184 156 134 127 139 164 193 227 259 276 274 267 249 226 204 1964/1/6 248 234 214 190 165 151 149 161 181 206 234 257 267 266 257 243 222 1964/1/7 234 236 229 215 199 184 175 175 184 203 224 241 256 264 259 248 233 1964/1/8 216 228 234 229 221 213 203 192 190 197 210 225 239 252 258 254 243 1964/1/9 193 212 227 237 238 231 220 209 199 194 195 205 217 232 243 250 246 1964/1/10 163 181 203 226 238 243 240 229 217 205 195 196 202 215 232 245 251
252 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/03/24(“y) 07:34:06
ŠJ”ŽÒŽ€‚ñ‚¾‚̂ɂ¨‘O‚ç—¬�΂ɃXƒ‹�[‚µ‰ß‚¬‚—
>252 Žè‚Í�‡‚킹‚½‚ª�A2ch‚ÅŒê‚é˜b‘è‚Å‚à‚È‚©‚낤�B
>>252 ƒoƒbƒJƒX‚̃„ƒIƒC“¯�l‚Å‚à�ì‚ê‚΂¢‚¢‚Ì‚©�H
‚Ü‚ �AƒoƒbƒJƒX‚³‚ñŽ©�g‚Í‚ ‚Ü‚èFORTRAN‚ð�D‚«‚¶‚á‚È‚©‚Á‚½‚Ý‚½‚¢‚¾‚µ‚È�B
write‚ð‚‚©‚Á‚ăoƒCƒiƒŠƒf�[ƒ^‚ð�‘‚«�o‚µ‚Ä‚¢‚é‚̂ł·‚ª�A ƒ}ƒVƒ“‚É‚æ‚Á‚Ä�o—Í‚³‚ê‚éƒoƒCƒiƒŠ‚ª”÷–‚ɈႢ�A ŒÝŠ·�«‚̂Ȃ¢ƒoƒCƒiƒŠƒtƒ@ƒCƒ‹‚ª‚Å‚«‚Ä‚µ‚Ü‚¢‚Ü‚·�B ‚ǂ̃}ƒVƒ“‚Å‚à‹¤’ʂ̃oƒCƒiƒŠƒtƒ@ƒCƒ‹‚ð“Ç‚Ý�‘‚«‚Å‚«‚邿‚¤‚É‚·‚é‚É‚Í ‚ǂ̂悤‚É‚µ‚½‚ç‚æ‚¢‚̂łµ‚傤‚©�H
257 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/04/10(‰Î) 10:59:24
>>256 –³—�Œ¾‚¤‚È‚—
‚Ç‚¤‚µ‚Ä‚à‚â‚肽‚¯‚ê‚Î�AŽ©•ª‚Ńrƒbƒg—ñ‚ð�¶�¬‚µ‚Ä�A‚»‚ê‚ð‚P•¶Žš‚É‚µ‚Ä�‘‚¯�B
‚»‚ê‚Å‚à‚ ‚킹‚é‚͕̂s‰Â”\�B
ƒeƒLƒXƒg•¶Žš‚Å�o‚µ‚ÄIBM’P–§“xŒ`Ž®‚ÌŽ¥‹Cƒe�[ƒv‚Å‚â‚èŽæ‚è‚·‚é‚Ì‚ªˆê”ÔŠmŽÀ‚¾�B
‘å‘Ì�Aƒ}ƒVƒ“–ˆ‚Ƀ��[ƒh�”�iƒoƒCƒg�”�j‚ªˆÙ‚È‚é�ê�‡‚ª‚ ‚é�B
�Ì‚ÌACOS‚Í‚Xƒrƒbƒg�ACDC‚à–‚Èƒ��[ƒh’·‚¾‚Á‚½�B
•¶ŽšƒR�[ƒh‚É‚µ‚Ä‚à�AIBMŒÝŠ·‚ÌEBCDICŒn‚Æ�i‚½‚¾‚µƒ��[ƒJ�[–ˆ‚É”÷–‚ɈႤ�j�A
DEC‚âACOS‚ÌASCIIŒn‚Ȃǂª“ü‚è—�‚ê‚Ä‚¢‚é�B
�”’l‚̃tƒH�[ƒ}ƒbƒg‚͉ïŽÐ–ˆ‚Ƀ}ƒVƒ“–ˆ‚ɃRƒ“ƒpƒCƒ‰–ˆ‚ɈقȂé‚Ì‚ª•�’Ê‚¾�B
‚³‚ç‚É‚ÍIBM�Aƒ‚ƒgƒ��[ƒ‰Œn—ñBigEndianƒrƒbƒg—ñLittleEndian�ADEC�AIntelŒn‚ÌLittleEndianŒn‚É
•ª‚©‚ê‚Ä‚¢‚é�B‚±‚ê‚ç‚àƒrƒbƒg•À‚тł³‚ç‚É•ª—ô‚·‚é‚炵‚¢�B
‚Ƃ͂¢‚¦�A–¾‚é‚¢˜b‚à‚ ‚é�B�”’lŒvŽZ‚Ì�¢ŠE‚Å‚Í�A‚à‚Í‚âACOS‚àCDC‚à‚Ù‚Æ‚ñ‚ÇŽg‚í‚ê‚Ä‚¢‚È‚¢�B
EBCDIC‚à‚ß‚Á‚½‚ÉŒ©‚È‚‚È‚Á‚½�Bƒ��[ƒh’·‚Í‚R‚Qƒrƒbƒg‚ª•�’Ê‚¾‚µ�A‚PƒoƒCƒg‚Í‚Wƒrƒbƒg‚É“�ˆê‚³‚ꂽ�B
�”’l‚̃tƒH�[ƒ}ƒbƒg‚àIEEE754‚ɂقړ�ˆê‚³‚ꂽ�B
Žc‚é–â‘è‚̓Gƒ“ƒfƒBƒAƒ“‚¾‚¯‚¾�B‚»‚̃Gƒ“ƒfƒBƒAƒ“‚·‚çƒRƒ“ƒpƒCƒ‰‚̃IƒvƒVƒ‡ƒ“‚Å‘å’ï‚Í�Aƒ}ƒVƒ“‚Ì
Ž©‘R‘̂Ɋւí‚炸�ABig/Little‚̂ǂ¿‚ç‚Å‚à“Ç‚Ý�‘‚«‚Å‚«‚é‚Ì‚ª•�’Ê‚¾�B
‚䂦‚É�A�wƒGƒ“ƒfƒBƒAƒ“�x‚ðƒ}ƒjƒ…ƒAƒ‹‚Å’²‚ׂê‚Î�Aƒ`ƒ~‚Ì–â‘è‚Í‰ðŒˆ‚·‚é�B
ƒCƒ“ƒeƒ‹‚̃tƒH�[ƒgƒ‰ƒ“ƒRƒ“ƒpƒCƒ‰ifort‚ðŽg‚Á‚ăRƒ“ƒpƒCƒ‹‚µ‚Ä‚¢‚Ü‚·�B CPU‚ÍOpteron‚Ȃ̂ł·‚ª�A-xWƒIƒvƒVƒ‡ƒ“‚ð‚‚¯‚È‚¢‚ÆSSE‚âSSE2‚Í‘S‚Žg—p‚³‚ê‚È‚¢‚̂łµ‚傤‚©�H
>>258 ƒfƒtƒH‚ł͎g—p‚³‚ê‚È‚©‚Á‚½‚ÆŽv‚¤�B�Ú‚µ‚‚ÍHelp‚ÅŠm‚©‚ß‚æ�B
‚r‚r‚d‚ÍŒµŠi‚É‚ÍIEEE754‚Ì‹K–ñ‚ð–ž‚½‚µ‚Ä‚¢‚È‚¢‚¹‚¢‚©�A
‚ ‚é‚¢‚Í‘SƒoƒCƒiƒŠ�[‘Ήž‚Ì‚½‚ß‚©�H‚—
Mac—p‚Í-xP‚ªƒfƒtƒHƒ‹ƒg‚Ì—l‚¾‚©‚çŒÝŠ·�«‚Ì‚½‚߂Ȃñ‚Å‚µ‚傤‚Ë�B
FORTRAN‚Å�‘‚«�o‚µ‚½ƒoƒCƒiƒŠƒtƒ@ƒCƒ‹‚̓ǂÝ�o‚µ•û‚Í•ª‚©‚é‚̂ł·‚ª�A ŽÀŒ±‹@Ší‚ª‚Í‚«�o‚µ‚½ƒoƒCƒiƒŠƒtƒ@ƒCƒ‹‚ð“Ç‚Ý�ž‚ނɂ͂ǂ¤‚µ‚½‚ç‚æ‚¢‚̂łµ‚傤‚©�H ‚È‚¨�AFORTRAN‚Å�‘‚«�o‚·‚Æ�A�¡Žg‚Á‚Ä‚¢‚éƒ}ƒVƒ“‚Å‚Í�擪‚É4ƒoƒCƒg‚قǂ̎¯•ʃf�[ƒ^‚ª•t‰Á‚³‚ê‚Ü‚·‚ª�A ŽÀŒ±‹@Ší‚ª‚Í‚«�o‚µ‚½ƒoƒCƒiƒŠƒtƒ@ƒCƒ‹‚ɂ͂±‚ꂪ‚‚¢‚Ä‚¢‚Ü‚¹‚ñ�B
>>261 ƒtƒ@ƒCƒ‹‚ðOPEN‚·‚邯‚«‚É form="binary" ‚Æ‚µ‚½‚è �i�ˆ—�ŒnˆË‘¶�j
access="stream" ‚Æ‚µ‚½‚è �iFortran 2003�j
>>261 DIRECTŒ`Ž®‚ðŽg‚Á‚Ä�‘‚‚Æ‚¢‚¤— ‹Z‚ª‚ ‚é�B�̂̃Rƒ“ƒpƒCƒ‰‚Å‚â‚é‚ɂ͂±‚ê‚©�B
‚½‚¾�¡‚Í
>>262 ‚Ì�‘‚‚悤‚É�AF2003Šg’£‚Ì�æŽæ‚è‚ÅSTREAMƒ‚�[ƒh‚ª‘å’ï‚ ‚é‚̂ł»‚ê‚ðŽg‚¤‚ª‚æ‚낵‚¢�B
–Ê“|‚Ȃ̂ÅC‚œǂÝ�ž‚Þ�B
265 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/04/25(�…) 16:57:37
STDCALL ‚ÌŠÖ�”‚ð g95 ‚©‚çŒÄ‚Ñ‚½‚¢‚̂ł·‚ª�A‚Ç‚¤‚·‚é‚Ì‚ª‚æ‚¢‚Å‚µ‚傤‚©�B
266 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/04/25(�…) 21:35:56
>>257 >‚PƒoƒCƒg‚Í‚Wƒrƒbƒg‚É“�ˆê‚³‚ꂽ�B
ˆÈ‘O‚Í“�ˆê‚³‚ê‚ĂȂ©‚Á‚½‚Ì�H
>>266 ‚ ‚ç‚ä‚é‚à‚Ì‚ª“�ˆê‚³‚ê‚Ä‚¢‚È‚©‚Á‚½�B
�¡‚Í“�ˆê‚³‚ê‚Ä‚¢‚邯‚¢‚Á‚Ä‚¢‚¢‚Ì‚©�H
‚Ü‚ �̂ɔä‚ׂê‚Î
270 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/05/07(ŒŽ) 06:10:19
fortran‚Å
web‚ÌŒ‹‰Ê‚𓾂邱‚Ƃł«‚é�H
get
http://www.hoge.com ‚ð�s‚¢
Œ‹‰Ê‚ðƒtƒ@ƒCƒ‹‚ÉŽc‚·
‚ ‚é‚¢‚Í�A–ß‚è’l�@403 not found
‚©‚Ç‚¤‚©‚Ì”»’è‚Æ‚©�B
Linux *g77
‚Å‚·
‚Å‚«‚È‚‚͂Ȃ¢‚¾‚낤‚¯‚Ç�A •ʂ̌¾Œê‚ðŽg‚Á‚½•û‚ª‚¢‚¢‚ÆŽv‚¤�B
272 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/05/07(ŒŽ) 08:01:53
‚¤‚í�A•ÔŽ–‚Í‚â�I ‚ ‚肪‚Æ‚¤�B Ž©—RŽ©�Ý‚É�‘‚¯‚錾Œê‚ªFortran‚ÆVBŒnˆÈŠO‚Ìbasic‚È‚ñ‚Å‚·�B ŒŸ“¢‚µ‚Ă݂܂·
274 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/05/07(ŒŽ) 11:18:23
>>270 ŠO�l‚ª‚‡‚V‚V‚ł̂â‚è•û‚ð‰ð�à‚µ‚Ä‚¢‚éƒy�[ƒW‚ª‚ ‚é�B
ŠÂ‹«•Ï�”‚ðŽg‚Á‚Ä•Ï�”‚Ì‚â‚èŽæ‚è‚ð‚µ‚Ä‚¢‚½�B
LINK‚ª‚݂‚©‚ñ‚Ë�[‚—
fortran cgi�@‚ŃOƒOƒ‹‚Æ�F�Xˆø‚Á‚©‚©‚é�B
275 �F
274 �F2007/05/07(ŒŽ) 11:24:19
>>270 ‚ ‚ ‚²‚ß‚ñ�B
FORTRAN‚ŃT�[ƒo�[‘¤‚ÌCGI‚ð�‘‚‚Ì‚©‚ÆŽv‚Á‚½‚ª‹t‚©�B
ƒNƒ‰ƒCƒAƒ“ƒg‚ð�‘‚«‚½‚¢‚Ì‚©�B
Windows ‚È‚ç WinInet.Lib�{Intel Visual Fortran‚łȂç�o—ˆ‚é�B
Linux‚Å‚à‚»‚Ì—Þ‚ÌDLL‚ðFortran‚©‚çŒÄ‚Ñ�o‚¹‚Ή½‚Æ‚©‚È‚é‚̂ł͂Ȃ¢‚©�H
�y‰ÈŠw‹Z�pŒvŽZ�zCŒ¾Œê‚ÆFortran�@‚Ç‚Á‚¿‚ª‚¢‚¢�H
http://science6.2ch.net/test/read.cgi/sim/1042715803/ 629 –¼‘O�F–¼–³‚µ‚³‚ñ�—‚TŽü”N[] “Š�e“ú�F2007/05/08(‰Î) 07:49:36
Fortran‚©C‚©‚È‚ñ‚Ä‹c˜_‚Í”nŽ‚°‚Ä‚¢‚邿�B
Fortran‚È‚ñ‚Ä‚à‚͂≻�ÎŒ¾Œê�B
‚¾‚©‚ç�Á‹Ž–@‚ÅC‚ð‘I‚Ô‘¼‚È‚¢�B
‚µ‚©‚µŒN‚½‚¿�B
ŽÀ‚Í‚à‚Á‚Æ‚à�g‹ß‚ÅŠÈ’P‚ȉȊwŒvŽZ—pŒ¾Œê‚ª‚ ‚é‚Ì‚¾�B
‚»‚ꂪExcelVBA�B
“š‚¦‚ÍˆÄŠO‘«Œ³‚É‚ ‚Á‚½‚킯‚¾�B
‚¢‚í‚ä‚é�‚¢’¹‚Á‚Ă₂¾‚Ë�B
�i�”�OƒÖ�O�j
277 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/05/08(‰Î) 21:42:56
fortranƒvƒ�ƒOƒ‰ƒ€‚Ì�ì�¬ˆË—Š‚Í‚±‚̃XƒŒ‚łł«‚Ü‚·‚©�H
279 �F
270 �F2007/05/09(�…) 23:38:08
ŠF‚³‚ñ‚ ‚肪‚Æ‚¤�B
>>273 Žn‚ß�Apython‚Å�u�H�H�H�H�v‚Å‚µ‚½‚ªŒ©‚邯•Ö—˜‚Å‚·‚Ë�B
‚Å‚àpython‚̃tƒ@ƒCƒ‹IO’m‚ç‚È‚¢‚̂Œ²‚ׂĂ݂܂·�B
>>274 ‚¦‚¦�AŒ©‚é•û‚Å‚·�B‚Å‚àcgiŒŸ�õ‚µ‚ÄŒ©‚邯fortran‚Å‚àcgi�o—ˆ‚Ü‚·‚Ë�B
FORTRAN�i’´�‰�SŽÒ—p�j‚»‚Ì2
‚Å‚à•·‚¢‚Ă݂ėǂ¢‚Ì‚©‚È�H
Visual Fortran 9 ‚ðŽg—p‚³‚ê‚Ä‚¢‚é•û‚¢‚Ü‚·‚©�H �w“ü‚ðŒŸ“¢‚µ‚Ä‚¢‚é‚̂ł·‚ª�CƒAƒNƒeƒBƒx�[ƒVƒ‡ƒ“‚ ‚é‚ñ‚©‚È�H
>>280 ƒlƒbƒgŒo—R‚Ì”F�Ø‚à�o—ˆ‚邵�Aƒ��[ƒJƒ‹‚ł̃‰ƒCƒZƒ“ƒXƒtƒ@ƒCƒ‹‚ł̔F�Ø‚à�o—ˆ‚é�B
‚Ç‚¿‚ç‚©‚Æ‚¢‚¤‚ƃlƒbƒgŒo—R‚Ì”F�؂ֈÚ�s‚µ‚½‚¢‚ÆŽv‚Á‚Ä‚¢‚é�ß‚ª‚ ‚é�B
‚ ‚Æ‚P”N‚щƒCƒZƒ“ƒX‚Í�Ø‚ê‚é�B�؂ꂽŒã‚̓Cƒ“ƒXƒg�[ƒ‹‚Å‚«‚È‚¢�B�ăCƒ“ƒXƒg�[ƒ‹‚à�o—ˆ‚È‚¢�B
ŽÀ�s‚ɂ͖â‘è‚È‚¢�B‚½‚¾‚µƒoƒOƒtƒBƒbƒNƒX‚Í�ăCƒ“ƒXƒg�[ƒ‹‚ɂȂé‚Ì‚Å�o—ˆ‚È‚¢�B
‚¤‚Á‚©‚è�Á‚µ‚Ä‚µ‚Ü‚¤‚Æ�A�ăCƒ“ƒXƒg�[ƒ‹‚Å‚«‚È‚¢�B
ƒ‰ƒCƒZƒ“ƒX‚Á‚Ä’P”NŒ_–ñ‚È‚ñ‚Å‚·‚©�H�P‹vŒ —˜‚¾‚ÆŽv‚Á‚Ä‚½�E�E�E‚â‚Á‚Ï‚è�¡‚ÌVisual Fortran 6Žg‚¢‘±‚¯‚悤‚©‚È‚ �D
> �؂ꂽŒã‚̓Cƒ“ƒXƒg�[ƒ‹‚Å‚«‚È‚¢�B�ăCƒ“ƒXƒg�[ƒ‹‚à�o—ˆ‚È‚¢�B ‚»‚ñ‚È‚±‚Ƃ͂Ȃ¢�B �w“üŒã�A1”NŠÔ‚ÌŠÔ‚ÉƒŠƒŠ�[ƒX‚³‚ꂽƒ}ƒCƒi�[ƒo�[ƒWƒ‡ƒ“ƒAƒbƒv‚܂ł͎©—R‚ÉŽg‚¦‚邿�B Žg‚¦‚È‚¢‚Ì‚Í�A‚»‚êˆÈ�~‚ÉƒŠƒŠ�[ƒX‚³‚ꂽ�Å�V”łƂ©�AƒvƒŒƒ~ƒAƒTƒ|�[ƒg‚Æ‚©�B
ƒlƒbƒgŒo—R‚Ì”F�Ø‚ª‚¢‚é‚Á‚Ä‚±‚Æ‚Í�C•¡�”‘ä‚ÌPC‚ɃCƒ“ƒXƒR‚µ‚Ä“¯Žž‚ÉŒvŽZ‘–‚点‚邯‚©‚Å‚«‚È‚¢‚킯‚Å‚·‚æ‚Ë�H �i”F�؂Ȃ‚Ä‚à‚â‚Á‚¿‚Ⴞ‚߂Ȃñ‚¾‚낤‚ª�j Œ‹‹Ç‚±‚Ì—�—R‚Åoffice‚à2000�Cvisual studio‚à6‚̂܂Ü�E�E�E Fortran‚à6‚Å‚¢‚¢‚©�[
>>284 Œ_–ñ‚µ‚½ƒ‰ƒCƒZƒ“ƒX�”‚ð’´‚¦‚Ä�i‚Ü‚½‚ÍŒ_–ñ‚µ‚½Žg—pŽÒˆÈŠO‚ª�j�uƒRƒ“ƒpƒCƒ‰�v‚ðŽg‚¤‚̂͂¢‚¯‚È‚¢‚ª
ƒRƒ“ƒpƒCƒ‹‚µ‚Ä�o—ˆ‚½ŽÀ�sƒvƒ�ƒOƒ‰ƒ€‚Ì•û‚Í”z•z‚ª‰Â”\�B
�i•]‰¿”Å‚â”ñ�¤—pƒ‰ƒCƒZƒ“ƒX‚Ì�ê�‡‚͕ʂ¾‚ª�j
‚Ü‚½‚»‚̃vƒ�ƒOƒ‰ƒ€‚ÌŽÀ�s‚ÉIntel‚ª’è‚ß‚½�Ä”z•z‰Â”\ƒtƒ@ƒCƒ‹‚ª•K—v‚È‚ç�A‚»‚ê‚àŠÜ‚߂Ĕz•z‰Â”\�B
‚¿‚Ȃ݂ɃVƒ“ƒOƒ‹�Eƒ†�[ƒU�[�Eƒ‰ƒCƒZƒ“ƒX‚Ì�ê�‡�AŒ_–ñŽÒŒÂ�l‚ª“¯Žž‚É‚P‚‚µ‚©Žg—p‚µ‚È‚¢‚̂ł ‚ê‚Î
ƒRƒ“ƒpƒCƒ‰‚ð•¡�”‚ÌPC‚ɃCƒ“ƒXƒg�[ƒ‹‚·‚邱‚Æ‚à‰Â”\�B
http://www.intel.com/cd/software/products/asmo-na/eng/compilers/295825.htm
’N‚©eclipse‚ðŽg‚Á‚ătƒH�[ƒgƒ‰ƒ“‚̃Rƒ“ƒpƒCƒ‹‚µ‚Ä‚¢‚é�l‚¢‚Ü‚¹‚ñ‚©�H photran‚ÌŽg‚¢•û‚ª‚í‚©‚ç‚È‚‚Ä�D�D
>>286 ‚»‚ê‚ð‚â‚낤‚Æ‚µ‚Ä�A’ú‚ß‚½‚—
�Ý’è‚¢‚ë‚¢‚ë‚¢‚¶‚낤‚ÆŽv‚¤‚Æeclipse‚܂ŕ׋‚µ‚È‚«‚á‚È‚ç‚È‚‚ÄŽžŠÔ‚Ì–³‘Ê‚¾‚ÆŠ´‚¶‚½�B
�Ý’è‚Å‚«‚½‚ç•ñ��‚æ‚ë�I
’ʂ肷‚ª‚è‚ÌŽÒ‚¾‚ª�E�E�E�E
>>288 ’ñ‹Ÿ�悪Salfort‚©‚çŠÖ˜A‰ïŽÐ‚ÌSilverFrost‚ɈÚ�s‚µ‚½‚Æ‚«‚ɕςí‚Á‚Ä‚µ‚Ü‚Á‚½‚Ì‚³�B
>>286 fortran‚ÅeclipseŽg‚Á‚Ă邯‚±‚Á‚Ä‚ ‚é‚ñ‚©‚È�H
fortran‚Á‚ĉȊw‹Z�pŒn‚ª‘½‚¢‚µ�A‘¼‚̈ê”ʋƊE‚ÌŒ¾Œê‚âƒR�[ƒh‚É”ä‚ׂ½‚çƒVƒ“ƒvƒ‹‚¾‚©‚ç‚Ë�E�E
’†‚É‚Ívi‚ŃKƒVƒKƒV‚Ì�l‚à‚¢‚邵
>>289 ƒTƒ“ƒNƒX�B
‚¶‚á‚ �A‚ ‚Ì�ó‘Ô‚ÅFortran95‚ðƒ_ƒEƒ“ƒ��[ƒh‚·‚é‚ɂ͂ǂ¤‚·‚ê‚Î�c�c�H
–{—ˆ‚È‚ç�à–¾‚µ‚Ä‚¢‚éƒTƒCƒg‚É•ñ��‚·‚ׂ«‚¾‚ÆŽv‚¤‚¯‚Ç�A
SilverFrost‚ł̃_ƒEƒ“ƒ��[ƒh•û–@‚ð’m‚Á‚Ä‚¢‚é�l‚ª‚¢‚½‚狳‚¦‚Ä‚‚¾‚³‚¢�B
>>292 ƒTƒ“ƒNƒX�B
�ã’i‚̃y�[ƒW‚©‚çƒ_ƒEƒ“ƒ��[ƒh‚µ‚ÄŒã�AVisualStugio2003‚ðƒCƒ“ƒXƒg�[ƒ‹‚µ‚Ä‚½‚©‚瓯‚¶‚2003‚ŃCƒ“ƒXƒg�[ƒ‹‚µ‚Ü‚µ‚½�B
‚ ‚Ƃ͕¡�”‚ ‚éƒVƒXƒeƒ€‚Ì’†‚Å�AFortran‹³‰È�‘‚É�Ú‚Á‚Ä‚éƒvƒ�ƒOƒ‰ƒ€‚ð�‘‚¢‚ÄŽÀ�s‚·‚é‚̂ɑI‚Ԃׂ«ƒVƒXƒeƒ€‚Æ‚»‚Ì•û–@‚³‚¦‚í‚©‚ê‚Î�c�c
294 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/06/13(�…) 22:07:13
Fortress‚ɂ‚¢‚Ăǂ¤Žv‚¤‚æ�H
µÜÀ
296 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/06/14(–Ø) 00:49:28
‚·‚¢‚Ü‚¹‚ñ‚ª�AFORTRAN77‚Å�A“ñŠK”ñ�üŒ`�í”÷•ª•û’öŽ®‚ðƒ‹ƒ“ƒQ�EƒNƒbƒ^–@‚ðŽg‚Á‚ăvƒ�ƒOƒ‰ƒ€‚ð‘g‚Ý‚½‚¢‚̂ł·‚ª�A ˆêŠK‚Ȃ番‚©‚Á‚½‚̂ł·‚ª�A�‚ŠK‚É‚È‚é‚Æ‚æ‚‚í‚©‚è‚Ü‚¹‚ñorz
>>296 ‚»‚ê‚̓vƒ�ƒOƒ‰ƒ€‚ª‚í‚©‚ç‚È‚¢‚Ì�H
‚»‚ê‚Æ‚à�”Šw‚ª‚í‚©‚ç‚È‚¢‚Ì�H
>>296 ƒ‹ƒ“ƒQ‹ò‚Á‚½‚È‚ñ‚Ä�A�”’lŒvŽZ‚Ì–{‚Ì�A•p�oŽ–�€‚¶‚á‚ñ‚©�B
�}�‘ŠÙ‚É�s‚Á‚½‚Ù‚¤‚ª‚Q‚ƒ‚ˆ‚É—ˆ‚邿‚èŒø—¦“I�B
ƒ‹ƒ“ƒQŒx•”‚ð‹ò‚Á‚¿‚Ⴄ‚È‚ñ‚Ä�E�E�E
ƒyƒbƒp�[ƒ‰ƒ“ƒ`‚Ńyƒbƒp�[Œx•”‚É�H‚í‚ê‚Ü‚µ‚½�i�³�Î
302 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/07/07(“y) 05:25:58
Fortran‚©‚çLinux‚ÌsystemŠÖ�”‚ð—˜—p‚µ‚Ä�o—Í‚µ‚½ƒ‚ƒm‚ð •Ï�”‚É”[‚ß‚½‚¢‚̂ł·‚ª�A‚Ç‚¤‚·‚ê‚΂悢‚̂łµ‚傤‚©? —Ⴆ‚Î call system('echo 2') ‚Åa.out‚ðŽÀ�s‚·‚邯�³�í‚É2‚ª�o—Í‚³‚ê‚é‚̂ł·‚ª�A ‚»‚Ì2‚ð•Ï�”‚É‘ã“ü‚µ‚悤‚Æ�B integer var call system('echo 2',var) ‚̂悤‚É‚µ‚Ă݂½‚̂ł·‚ª�AƒGƒ‰�[‚ɂȂè‚Ü‚µ‚½�B characterŒ^‚àŽŽ‚µ‚Ă݂½‚̂ł·‚ª�A‚â‚Í‚èƒGƒ‰�[‚ɂȂè‚Ü‚µ‚½�B
>>302 ƒRƒ“ƒpƒCƒ‰‚Ȃɂæ�B
‚Ü�Aƒ}ƒjƒ…ƒAƒ‹“Ç‚ñ‚¾‚Ù‚¤‚ª‘�‚¢‚ÆŽv‚¤‚¯‚Ç�B
>>302 call system('echo 2 > hoge.txt')
open(10, file='hoge.txt', status='OLD')
read(10,*) var
close(10,status='DELETE')
write(*,*) var
>>303 pgiƒRƒ“ƒpƒCƒ‰‚¾‚»‚¤‚Å‚·�B
‚¿‚å‚Á‚ƃ}ƒjƒ…ƒAƒ‹’T‚µ‚Ă݂܂·�B
>>304 ƒRƒ“ƒpƒCƒ‰‚Ì–â‘è‚Ȃ̂©DELETE‚̂Ƃ±‚낪‚¿‚å‚Á‚ƃGƒ‰�[‚łł«‚È‚©‚Á‚½‚̂ł·‚ª�B
close(10)‚Æ‚µ‚½‚ç•Ï�”‚É2‚ð“ü‚ê‚邱‚Æ‚ª‚Å‚«‚Ü‚µ‚½�B
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½
‚ �A‚·‚݂܂¹‚ñ�B
>>304 ‚łł«‚Ü‚µ‚½�B
‚ ‚Æ�ASystemŠÖ�”‚ð—˜—p‚¹‚¸‚ÉŠO•”ƒtƒ@ƒCƒ‹‚Ì�s�”‚ðŽæ“¾‚·‚é•û–@‚Á‚Ä‚ ‚è‚Ü‚·‚©�H —Ⴆ‚Îhoge.txt‚Ì’†�g‚ª ---------- apple 123 456 pie ---------- ‚Å‚ ‚ê‚Î�A‚»‚̃tƒ@ƒCƒ‹‚Ì�s�”‚ð“ǂݎæ‚èintegerŒ^‚Ì•Ï�”‚É3‚ð ‘ã“ü‚·‚邯‚¢‚¤‘€�ì‚ð�s‚¢‚½‚¢‚̂ł·�B ‚à‚¿‚ë‚ñSystemŠÖ�”‚Ì—˜—p‚łł«‚½‚̂ł·‚ª�A‚»‚ꂾ‚ƃvƒ‰ƒbƒgƒtƒH�[ƒ€‚ª Linux‚ÉŒÀ‚ç‚ê‚Ä‚µ‚Ü‚¤‚Ì‚Å�AFortran‚Ńtƒ@ƒCƒ‹‚Ì�ˆ—�‚ð�s‚¤‚悤‚É‚·‚ê‚Î ŠeŽíƒvƒ‰ƒbƒgƒtƒH�[ƒ€�ã‚Å‚àŽg‚¦‚éƒ\�[ƒX‚ɂȂÁ‚ĕ֗˜‚¾‚ȂƎv‚¢‚Ü‚µ‚½�B ‚±‚Ì‘€�ì‚ÉŒÀ‚炸�AFortran‚Ńtƒ@ƒCƒ‹‚ð•Ò�W‚·‚邽‚߂̕׋‚͂ǂ̂悤‚È ‚Æ‚±‚ë‚ŕ׋‚·‚ê‚΂¢‚¢‚̂łµ‚傤‚©�H
>>307 •�’ʂɋóread‚Åend of file ‚ª�o‚é‚܂ł܂킵‚Ä�A•Ï�”‚Ɉꑫ‚µ‚Ä‚¢‚¯‚΂¢‚¢�B
>>308 ‚Å‚«‚Ü‚µ‚½�B
[Fortran]$ cat num_of_tmp
sfejoiwa
seflkew
sfepo pweko
wsefk
sefpowe posef
sdf s;ef
[Fortran]$ ./a.out
x = 8
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½�i�„�ƒ�j
310 �F
TEST‚¿‚イ �F2007/07/12(–Ø) 17:03:55
ƒtƒBƒ{ƒiƒbƒ`‚̃vƒ�ƒOƒ‰ƒ€‚ª‹}‚¬‚Å•K—v‚Å‚·�B‚¾‚ê‚©‹³‚¦‚Ä‚‚¾‚³‚¢�I�I�I
WRITE(*,*) 'N=' READ (*,*) N DO 10 I=1,N IF0=IF1 IF1=IF2 IF ( I.GT.2 ) THEN IF2=IF1+IF0 ELSE IF2 = 1 END IF 10 WRITE(*,*) I,IF2 STOP END
Numerical Recipes ‚Ì‘æ‚R”Å‚ª�o‚é‚炵‚¢‚È�B
�ª‚Á‚ÄC++‚ªƒ�ƒCƒ“‚ɂȂÁ‚ĂȂ¢‚©(�Î) ”÷–‚ɃXƒŒ‚¿‚ª‚¢‚©‚à
>>314 ƒzƒ“ƒg‚¾
— �Ø‚ç‚ꂽ�I‚—‚—‚—
‰ö‚µ‚©‚ç‚ñ“Þ�I
>>314 FORTRAN”Å‚Í�o‚·‹C‚ ‚é‚Ì‚©‚È�H
�‰”ł̔ñFortran”ł̓gƒ‰ƒ“ƒXƒŒ�[ƒ^‚É‚©‚¯‚½‚¾‚¯‚̂悤‚È
gotoƒoƒŠƒoƒŠƒR�[ƒh‚Å�o”Å‚µ‚Ä‚¢‚½‚Ì‚¾‚©‚ç�A–³’ƒ‚ÈFortranƒR�[ƒh‚Å‚à
’˜ŽÒ‚͕ʂɋC‚É‚µ‚È‚¢‚æ‚È‚—
>>316 ‚Ç‚¤‚¾‚ë�HC++‚Ì‹@”\‚ð‚‚©‚Á‚ÄŽÀ‘•‚µ‚Ä‚¢‚邿‚¤‚¾‚©‚ç�A
ˆÈ‘O‚Ì�@FORTRAN -> ‚»‚êˆÈŠO‚ÌŒ¾Œê�@‚̈Ú�A‚Ƃ͖󂪈Ⴂ‚»‚¤
NR‚Ì2nd(1992)‚©‚ç3rd(2007)‚ւ̈È�~‚É15”NŠ|‚©‚Á‚Ä‚¢‚é‚Ë
‚½‚Ô‚ñ3rd‚ÉŽæ‚è‘g‚ÝŽn‚ß‚½� ‚Í�A‚Ü‚¾C++‚ª‹P‚¢‚Ä‚½‚ñ‚¾‚ë
•¡‘f�”‚ÌŽæ‚舵‚¢‚ª�AƒNƒ\‚â‚₱‚µ‚¢ƒeƒ“ƒvƒŒ�[ƒg‚ɂȂÁ‚Ä‚¢‚½‚è�A
�®�‡”z—ñ‚É–â‘肪‚ ‚Á‚½‚è‚Æ�AC++‚Í�”’lŒvŽZ‚ÉŒü‚¢‚ĂȂ¢
c99‚Ì•û‚ª‚¸‚Á‚ƃ}ƒV�i‚½‚¾‚µ�A‚±‚Á‚¿‚͑ΉžƒRƒ“ƒpƒCƒ‰‚ªPGI‚®‚ç‚¢‚µ‚©–³‚¢�j
Fortran90‚©FORTRAN77‚̂܂Ü�AƒAƒ‹ƒSƒŠƒYƒ€‚¾‚¯�i•à‚³‚¹‚½•û‚ª—Ç‚©‚Á‚½‚ÆŽv‚¤‚æ�@
NR‚̃�ƒŠƒbƒg‚͈À‚¢’l’i‚ƃ\�[ƒXƒR�[ƒh•t‚«‚Á‚ĂƂ±‚¾‚Á‚½‚ª�A
C++‚Ì‚Ý‚É‚È‚é‚Æ�A‚ ‚ñ‚Ü‚èƒ�ƒŠƒbƒgŠ´‚¶‚È‚¢‚Ë�@CŒ¾Œê‚¾‚ÆGSL‚Æ‚©‚ ‚邵‚Ë
‚Ç‚¤‚¹Ž©—R‚É”z•z‚Å‚«‚È‚¢‚ñ‚¾‚Á‚½‚ç NAG, IMSL‚Ì•û‚ª‚¢‚¢‚ñ‚¶‚á‚È‚¢‚©�H
�‚È‚‚Æ‚à˜R‚ê‚ÍNR 3rdƒCƒ‰ƒl
>>317 ‚ ‚ê‚ê2”Å‚©‚ç‚à15”N‚½‚Á‚Ä‚é‚Ì‚©‚æ‚—
‚µ‚©‚µƒAƒ‹ƒSƒŠƒYƒ€‚Ì�i•à”łƂ©‚Ì‚Á‚Ă͂¢‚È‚¢‚Ì‚©‚Ë�H
‘æ2”łłÍ�A�‰”łɖ³‚©‚Á‚½non-numerical algorisms ‚Ì�Í‚ªˆê”Ô–ð‚É—§‚Á‚½‚—
CRC16‚Æ‚©Huffman•„�†‰»‚Æ‚©�A�î•ñ�HŠw“I‚ȃAƒ‹ƒSƒŠƒYƒ€‚ª�A�”’lŒvŽZ‚Ƃ̊_�ª‚ð�æ‚è‰z‚¦‚Ä‚«‚½
ƒ^ƒCƒ~ƒ“ƒO‚¾‚Á‚½‚Ì‚©�B
�¡“ú–{‰®‚É�s‚Á‚½‚炱‚ñ‚È–{‚ª‚ ‚Á‚½�B FortressŒ¾Œê�\ƒ}ƒ‹ƒ`ƒRƒAŽž‘ã‚Ì•À—ñ‰»ƒvƒ�ƒOƒ‰ƒ~ƒ“ƒOŒ¾Œê ‚à‚¤�o‚·‚Ì‚©‚æ‚—�@ ‚´‚Á‚ÆŒ©‚½Š´‚¶•³–{‚¾‚Á‚½‚ª‚—
‚Ü‚Á‚½‚˜b‚ð•·‚©‚È‚¢‚µ‚È‚Ÿ�„Fortress ƒXƒ‰ƒh‚Å‚à‹c˜_‚ª‚ ‚Á‚½‚¯‚Ç�A�«—ˆ‚à•�‹y‚·‚錩�ž‚݂͌µ‚µ‚»‚¤‚Ë
321 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/07/23(ŒŽ) 01:55:57
>>320 ‚æ‚’m‚ç‚ñ‚ª�ASUN‚̃}ƒ‹ƒ`ƒRƒACPU‚É‘å—ʂ̃XƒŒƒbƒh‚ð‚΂çŽT‚¢‚Ä•À—ñŒvŽZ‚³‚¹‚邯‚¢‚¤
ƒRƒ“ƒZƒvƒg‚ÌŒ¾Œê‚È‚ñ‚¾‚ë�H
ƒAƒCƒfƒA‚Æ‚µ‚Ă͖ʔ’‚¢‚ñ‚Å“à‰Èˆã�H
Haskell‚Á‚Û‚¢Žd—l‚à“ü‚ê‚Ä‚¢‚é‚炵‚¢‚µ�AŽŸ�¢‘ã‚Ì“¥‚Ý‘ä‚É‚—‚—‚—
>>321 ƒI�[ƒvƒ“‚É‚µ‚½‚©‚çSUN‚Ì�Î�ê—p‚Á‚Ă킯‚¶‚á‚È‚¢‚̂łÍ�H
Šm‚©‚É“¥‚Ý‘ä‚Û‚¢‚È‚—
Thoughts on Language Design
New challenges require new solutions
Guy L. Steele Jr.
ttp://www.ddj.com/dept/architect/184406382 ‚Ü‚Ÿ�A‚»‚ê‚È‚è‚É�l‚¦‚ª‚ ‚Á‚ÄFortress‚ð�ì‚Á‚Ä‚¢‚邿‚¤‚¾�B
Sun‚ªƒAƒ�ƒŠƒJ‚̃XƒpƒRƒ“�•�¬‚©‚ç’E—Ž‚µ‚½‚Ì‚Å�A‚³‚¢‚³‚«‚͈¢‚¾‚낤�B
“ú–{�i•xŽm’Ê�j‚Å�E‚¤�U‚è‚ð‚µ‚Ä�AƒAƒ�ƒŠƒJ‚É‹^�SˆÃ‹S‚ð‹N‚±‚³‚¹‚é‚Ì‚ª‹g‚¾‚ÆŽv‚¤‚—‚—‚—‚—
�„“ú–{�i•xŽm’Ê�j‚Å�E‚¤�U‚è‚ð‚µ‚Ä�AƒAƒ�ƒŠƒJ‚É‹^�SˆÃ‹S‚ð‹N‚±‚³‚¹‚é ƒXƒQ�[‚—‚—‚—‚— �ôŽm‚Á‚·‚Ë‚—
>>324 �ŋ߂Ì�Å‘¬ƒXƒpƒRƒ“‹£‘ˆ‚Í�A‚È‚ñ‚©“yŒš‰®‚ÌŠù“¾Œ ‘ˆ‚¢‚Á‚Û‚¢‚©‚ç�A
’Þ‚è‚É‘–‚Á‚Ä—V‚Ô‚Ù‚¤‚ª�A‚½‚µ‚©‚É‚¢‚¢‹C‚ª‚·‚é‚—
Cygwin�ã‚Å“®‚fortran90ƒRƒ“ƒpƒCƒ‰‚Á‚Ä‚ ‚è‚Ü‚¹‚ñ‚©�H ‚·‚݂܂¹‚ñ‚ª ‚ǂȂ½‚©�î•ñ‚ð‚¨Ž�‚¿‚Å‚µ‚½‚狳‚¦‚ĉº‚³‚¢�B
>>329 - 330
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚“�BŽŽ‚µ‚Ă݂܂·�I
ϼ޶Ö
Intel fortran‚Ä�Aƒo�[ƒWƒ‡ƒ“‚P‚O‚ɂȂÁ‚Ä‚©‚ç�AMKL‚ª‚¨‚Ü‚¯‚Å•t‚¢‚Ä‚‚邿‚¤‚ɂȂÁ‚½‚È�B MKL”ƒ‚Á‚½�l¶Ü²¿½��‚¨‚ê
‚¨‚Ü‚¯‚ÆŒ¾‚Á‚Ä‚àMKL—L‚è‚Æ‚È‚µ‚¶‚á�A‚¯‚Á‚±‚¤‰¿Ši�·‚ª�c
>>335 –Y‚ꂽ‚ªMKL‚̃‰ƒCƒZƒ“ƒX‚©‚ç‚ðƒRƒ“ƒpƒCƒ‰‚̃‰ƒCƒZƒ“ƒX‚É“]Š·‚Å‚«‚Ä‚QŒÂ•ª‚ɂȂÁ‚½‚ñ‚¶‚á’†“cƒb‚¯�H
ƒKƒZ‚¾‚Á‚½‚ç�|ƒ}ƒ“ƒR‚—
338 �F
335 �F2007/08/31(‹à) 01:05:11
‚X�¨‚P‚O‚ւ̃o�[ƒWƒ‡ƒ“ƒAƒbƒv‚̂Ƃ«‚É�AƒXƒ^ƒ“ƒ_�[ƒh”Å‚©‚çƒvƒ�ƒtƒFƒbƒVƒ‡ƒiƒ‹”łւ̕Ï�X‚ª ˆÀ‚�i‚P–œ‰~‚‚ç‚¢�j‚Å‚«‚½‚¾‚¯‚¾‚Á‚½�B‚¢‚¸‚ê‚É‚µ‚Ä‚à�AMKL’P‘̂Ŕƒ‚Á‚Ä‘¹‚µ‚½‹C•ª‚¾�B
339 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/09/07(‹à) 13:02:07
intel fortran compiler for windows 9.0�@‚ðŽg—p‚µ‚Ä‚¢‚Ä
http://icl.cs.utk.edu/lapack-for-windows/nmake_install.html ‚ÌŽè�‡‚É�]‚¢lapack‚Æblas‚𓱓ü‚µ‚悤‚Æ‚µ‚Ă܂·‚ª
1. C:\Program Files\LAPACK_3.1.1_for_Windows\LAPACK 3.1.1 for Windows\�@‚Ɉړ®
2. set_environment.bat x86 Intel
�@‚Æ“ü—Í�iBlas‚̓fƒtƒHƒ‹ƒg‚ðŽg—p�j
4. nmake /nologo all
‚Æ‚·‚邯
xilib.exe /OUT:"C:\Program Files\LAPACK_3.1.1_for_Windows\LAPACK 3.1.1 for Windows\blas.lib" *.obj
‚ªŽÀ�s‚³‚ê‚Ä‚¢‚邯‚«‚ÉŽŸ‚ÌŽ|‚Ì•\ަ‚ª‚łĂ¤‚Ü‚‚¢‚«‚Ü‚¹‚ñ�B
"lib"‚ðŽÀ�s‚µ‚Ä‚¢‚Ü‚·
"lib"‚ª‚݂‚©‚è‚Ü‚¹‚ñ
>>197 ‚Ì slim ‚ɑГ–‚·‚éŒ`‚Åxilib‚ªŽg‚í‚ê‚Ä‚¢‚é‚à‚Ì‚¾‚ÆŽv‚¤‚ñ‚¾‚¯‚Ç�A‚Ç‚¤Žg—p‚·‚ê‚΂¤‚Ü‚‚¢‚‚Ì‚©‚í‚©‚è‚Ü‚¹‚ñ�B
‚¿‚Ȃ݂Éxilib�@‚ɑウ‚Ä�@xilink /lib ‚ðŽg‚Á‚Ä‚à“¯‚¶‚Å‚·�B
blas.lib�@lapack.lib ‚ð�ì‚é‚ɂ͂ǂ¤‚·‚ê‚΂悢‚Å‚µ‚傤‚©�H
Ž¿–â‚Å‚·�B fortran95‚ðŽg‚Á‚Ä‚¢‚é‚̂ł·‚ª do i=1, size(A) A(i) = hoge + i * fuga end do ‚Ý‚½‚¢‚Ì‚ð A = hoge + [‚Ȃɂ©] * fuga ‚̂悤‚É‚µ‚Ä“YŽš‚ð”z—ñ‰‰ŽZ‚É—p‚¢‚Ĉê�s‚ɂ܂Ƃ߂ç‚ê‚È‚¢‚̂łµ‚傤‚©�H ‚»‚ê‚Æ do i=1, size(A) hoge = •¡ŽG‚ÈŽ® A(i) = hoge * fuga B(i) = hoge * piyo end do ‚̂悤‚È�ê�‡�A A = •¡ŽG‚ÈŽ® * fuga B = •¡ŽG‚ÈŽ® * piyo ‚Æ�‘‚Ž–‚Å“ñ“xŒvŽZ‚³‚ê‚Ä‚µ‚Ü‚¤‚͖̂³‘ʂł·‚µ Ž®‚ª’·‚‚È‚Á‚ēǂ݂Â炢‚̂ł·‚ª�A”z—ñ‰‰ŽZ‚ɑ΂·‚éˆêŽž•Ï�”‚̂悤‚È‚à‚͖̂³‚¢‚̂łµ‚傤‚©�B
>>340 Visual Studio‚Ɋ܂܂ê‚Ä‚¢‚élib.exe/link.exe‚ւ̃pƒX‚ª’Ê‚Á‚ĂȂ¢�B
’Ê�í‚Íset_environment.bat‚©‚çŒÄ‚΂ê‚Ä‚¢‚é
"%IFORT_COMPILER91%\IA32\Bin\ifortVars.bat"
‚Ì’†‚ÅVS‚Ö‚Ì�Ý’è‚à�s‚í‚ê‚é‚Í‚¸‚¾‚ª
ŠÂ‹«•Ï�” IFORT_COMPILER91 ‚ÍIVF9.1—p‚Ì�Ý’è‚Ȃ̂Å
IVF9.0‚È‚ç IFORT_COMPILER90�A10.0‚È‚ç IFORT_COMPILER10
‚É•Ï�X‚·‚é•K—v‚ª‚ ‚é�B
ifortVars.bat ‚ðŽÀ�s‚µ‚Ä‚àlib.exe/link.exe‚ªŽg‚¦‚È‚¢�ê�‡‚Í
ifortVars.bat ‚ð�C�³‚·‚é‚©�A—\‚ßVS’†‚Ì VSVars32.bat ‚©
VCVars32.bat ‚ðŽÀ�s‚µ‚Ä‚¨‚•K—v‚ª‚ ‚é�B
>>341 A = hoge + (/(i,i=1,size(A))/) * fuga
>>343 ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B‚±‚ñ‚È‘f’¼‚È•û–@‚ª‚ ‚Á‚½‚ñ‚Å‚·‚Ë�B
ŒãŽÒ‚ɂ‚¢‚Ä‚Í�¡‚̂Ƃ±‚ë“‚¢‚Å‚µ‚傤‚©�B
‚ ‚Æ”z—ñ‰‰ŽZ‚ÉŽg‚¦‚éŠÖ�”‚ª�ì‚ê‚邯‚¢‚¢‚̂ł·‚ª�A‚±‚ê‚à“‚¢‚Å‚·‚©‚Ë�B
”z—ñ‚ð‚à‚ç‚Á‚Ä”z—ñ‚ð•Ô‚·‚悤‚ȃ^ƒCƒv‚¾‚ƈꎟ“I‚É–ß‚è’l—p‚Ì”z—ñ‚ðŠm•Û‚µ‚È‚‚Ă͂¢‚¯‚È‚¢‚̂Ō»ŽÀ“I‚ł͂Ȃ¢‚ñ‚Å‚·�B
>>344 ‚µ‚©‚µ
>>343 ‚̂悤‚É‚â‚邯�A‚¢‚Á‚½‚ñˆÃ–ق̃eƒ“ƒ|ƒ‰ƒŠ”z—ñ‚ª�¶�¬‚³‚ê‚Ä
‚»‚ê‚©‚ç�Ï‚ªŽæ‚ç‚ê‚邱‚ƂɂȂé‚Ì‚Å�ADO LOOP‚Ì“WŠJŽ®‚Ƃ͓™‰¿‚ł͂Ȃ¢�B
>‚ ‚Æ”z—ñ‰‰ŽZ‚ÉŽg‚¦‚éŠÖ�”‚ª�ì‚ê‚邯‚¢‚¢‚̂ł·‚ª�A‚±‚ê‚à“‚¢‚Å‚·‚©‚Ë�B
elemental‚¾‚Á‚½‚©pureƒIƒvƒVƒ‡ƒ“‚‚¯‚ê‚Ή”\‚¾‚Á‚½‹C‚ª‚·‚é�B
’²‚ׂĂ‚ê‚—
346 �F
345 �F2007/09/11(‰Î) 01:37:16
>>344 MODULE m_elemental
CONTAINS
ELEMENTAL REAL FUNCTION watson(x)
IMPLICIT NONE
REAL, INTENT(IN) :: x
watson = x**2
RETURN
END FUNCTION watson
END MODULE m_elemental
!
PROGRAM holmes
USE m_elemental
IMPLICIT NONE
INTEGER :: i
REAL :: x(10), y(10)
DO i = 1, 10
x(i) = REAL(i)
END DO
y = watson(x)
PRINT '(10f7.1)', x
PRINT '(10f7.1)', y
STOP
END PROGRAM holmes
1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 10.0
1.0 4.0 9.0 16.0 25.0 36.0 49.0 64.0 81.0 100.0
Press any key to continue . . .
elemental �¼ pure ‚¾‚Á‚½‚—
>>345 ŽŽ‚µ‚Ă݂܂µ‚½‚ªŠm‚©‚Ƀeƒ“ƒ|ƒ‰ƒŠ”z—ñ�ì‚ç‚ê‚Ă܂·‚Ë�B
elemental‚͕֗˜‚Å‚·‚Ë�B‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½�B
>>347 a(1:n) ‚Æ‚©•”•ª”z—ñ‚Ì—Þ‚àƒeƒ“ƒ|ƒ‰ƒŠ‚ð�ì‚邱‚Æ‚ª‘½‚¢‚Ì‚Å�A
ƒ\�[ƒXƒR�[ƒh‚ª’Z‚‚Ȃ邩‚ç‚Æ’²Žq‚É�æ‚Á‚Ä�ADO LOOP‚Ì‘ã‚í‚è‚É—�—p‚·‚邯�A
Žv‚í‚ʂƂ±‚ë‚ŃXƒ^ƒbƒNƒI�[ƒo�[ƒtƒ��[‚Æ‚©‚Å•®Ž€‚·‚é�B
ƒxƒNƒgƒ‹‹@‚Ì�ê�‡‚͈ê’Uƒeƒ“ƒ|ƒ‰ƒŠ”z—ñ‚É“WŠJ‚µ‚½‚Ù‚¤‚ª‘�‚‚Ȃ邾‚낤‚ª�A
ƒpƒCƒvƒ‰ƒCƒ“‚̃XƒJƒ‰�[‹@‚Ì�ê�‡‚ÍDO LOOP‚̂܂܂̕û‚ª‘�‚¢‚̂ł͂Ȃ¢‚©‚ÆŽv‚¤�B
‚Ü‚Ÿ�ŸŽè‚É�Å“K‰»‚·‚é‚©‚à’m‚ê‚ñ‚µ�AƒgƒŒ�[ƒhƒIƒt‚ª�F�X‚ ‚é‚Ì‚Å�A‚È‚ñ‚Æ‚àˆÝ‰Š‚ª�B
age
350 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/09/18(‰Î) 22:17:04
age‚à–ž‘«‚ɂł«‚ñ‚Ì‚©�I�I
intel Visual fortran 10.0�@“ú–{Œê”Å�@””„
�u“ú–{Œê”Å�v‚Â�[‚Ä‚àFortran‚Ì�ê�‡�AƒRƒ“ƒpƒCƒ‰‚̃�ƒbƒZ�[ƒW‚͉pŒê‚̂܂܂¾‚©‚ç‚ ‚肪‚½‚Ý‚ª‚È‚¢‚È‚Ÿ�B “ú–{Œêƒ}ƒjƒ…ƒAƒ‹‚͕ʓrƒ_ƒEƒ“ƒ��[ƒh‚Å‚«‚邵�B
353 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/09/21(‹à) 23:56:06
Ž¿–â‚Å‚·�B fortran77‚ðŽg‚Á‚Ä‚¢‚é‚̂ł·‚ª�AƒRƒ“ƒpƒCƒ‰Žž‚ɂ̓m�[ƒGƒ‰�[‚Å�AŽÀ�s‚̂Ƃ«ƒ‰ƒ“ƒ^ƒCƒ€ƒGƒ‰�[‚Æ•\ަ‚³‚ê‚é‚̂ł·‚ª�A WARNING - Label 170 has not been referenced NO ERRORS,1 WARNINGS [<MAIN@>FTN77 Ver 4.03] Creating executable: sinchouryuu.exe *** Unable to create executable file: sinchouryuu.exe ŽÀ�s‰Â”\‚ȃtƒ@ƒCƒ‹‚Ì�ì‚è•û‚ð‹³‚¦‚ĉº‚³‚¢�B ‚ ‚Æ�AŽÀ�sŽž‚̃Gƒ‰�[‚Ì 00401000 MAIN# [+174f] ‚Ä�‘‚¢‚Ä‚ ‚é‚̂ł·‚ª�A‚Ç‚¤‚¢‚¤ˆÓ–¡‚Å‚µ‚傤‚©�H ˆö‚Ý‚É170�s‚Í 166:* cnb‚Ì“]’u�s—ñ 167: 168: do 70 j=1,10 169: do 80 i=1,6 170: 171: cbn(j,i)=cnb(i,j) 172: 173: 80 continue 174: 70 continue ‚±‚ñ‚È‚ñ‚È‚ñ‚Å‚·�B
354 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/09/22(“y) 00:01:51
ƒ„ƒRƒrƒAƒ“�s—ñ‚ª‚‚‚ê‚Ü‚¹‚ñ�I�I ‚Ç‚¤‚¢‚Á‚½•—‚É�ì‚é‚Ì‚©�A�ì‚è•û‚ð‚ǂȂ½‚©‚¨‚µ‚¦‚Ä‚‚¾‚³‚¢�I
>>353 >fortran77‚ðŽg‚Á‚Ä‚¢‚é‚̂ł·‚ª
‚»‚ê‚Í�u‹KŠi‚ÌŽí—Þ�v‚Å‚ ‚Á‚Ä‚±‚Ì�ê�‡�A‚»‚ê‚æ‚è‚àŽg—p‚µ‚Ä‚¢‚éƒRƒ“ƒpƒCƒ‰‚â
OS‚Ì–¼‘O‚ð�‘‚¢‚Ä‚‚ꂽ•û‚ª‚ ‚肪‚½‚¢�B
> WARNING - Label 170 has not been referenced
�u170�s�v‚ł͂Ȃ•¶”Ô�†‚Ì170‚ªŽQ�Æ‚³‚ê‚Ä‚¢‚È‚¢�B
> *** Unable to create executable file: sinchouryuu.exe
> ŽÀ�s‰Â”\‚ȃtƒ@ƒCƒ‹‚Ì�ì‚è•û‚ð‹³‚¦‚ĉº‚³‚¢�B
‚¨‚»‚ç‚sinchouryuu.exe‚ðŽÀ�s’†‚Å�‘‚«Š·‚¦‚ç‚ê‚È‚¢‚Ì‚¾‚낤�B
‚·‚ׂĂÌsinchouryuu.exe‚ð�I—¹‚³‚¹‚Ä‚©‚çƒRƒ“ƒpƒCƒ‹‚·‚é‚Ì‚¾�B
> 00401000 MAIN# [+174f]
> ‚Ä�‘‚¢‚Ä‚ ‚é‚̂ł·‚ª�A‚Ç‚¤‚¢‚¤ˆÓ–¡‚Å‚µ‚傤‚©�H
MAIN#�iƒvƒ�ƒOƒ‰ƒ€‚ÌŠJŽnˆÊ’u�j‚©‚ç 5919ƒoƒCƒg–ڂ̈ʒu‚ŃGƒ‰�[‚ª”�¶‚µ‚½�B
ƒGƒ‰�[‚ÌŽí—Þ‚ÍFTN77‚Ì�ê�‡�Aƒ_ƒCƒAƒ�ƒO‚Ì�ã‚Ì•û‚É�‘‚¢‚Ä‚ ‚é�B
>>354 ‚Â google
FTN95‚ðƒCƒ“ƒXƒg�[ƒ‹‚µ‚Ü‚µ‚½�B plato3(“ú–{Œê•sŽg—p)‚ŃRƒ“ƒpƒCƒ‹ŽÀ�s‰Â”\‚Å‚µ‚½ �« fcpad‚ð—˜—p‚µ‚Ä‚Í�o—ˆ‚È‚¢‚Å‚·‚©�H ƒRƒ“ƒpƒCƒ‰ƒpƒX C:\Program Files\Silverfrost\FTN95\ftn95.exe ‚Æ“ü—Í *** Invalid executable file suffix - only .EXE is permitted ‚ƂłăRƒ“ƒpƒCƒ‹‚Å‚«‚È‚¢�B �GŠÛ‚Ń}ƒNƒ�‚ðŽg‚¨‚¤‚©‚ÆŽv‚¢‚«‚â�A PATH‚ª’Ê‚ç‚¸Ž¸”s�B ’N‚©�A‚²Žw“±Šè‚¢‚Ü‚·�E�E�E�B
Intel Visual Fortran‚Å/Qparallel‚ðŽg‚Á‚Ä•À—ñ‰»‚µ‚½‚Æ‚±‚ë�A ‚ ‚Ü‚è�‚‘¬‰»‚µ‚Ü‚¹‚ñ‚Å‚µ‚½�Bƒvƒ�ƒOƒ‰ƒ€‚É‚æ‚Á‚Ă͂ނµ‚ë’x‚‚Ȃ邱‚Æ‚à�B ƒTƒ|�[ƒg‚É–â‚¢�‡‚킹‚½‚ç�A‚±‚¿‚ç‚Å‚à2ƒRƒA‚ł͊m‚©‚ɃXƒs�[ƒhƒ_ƒEƒ“‚ª Šm”F‚Å‚«‚Ü‚µ‚½‚ª�A‚SƒRƒA‚ł̓Xƒs�[ƒhƒAƒbƒv‚ªŠm”F‚Å‚«‚Ü‚µ‚½�A‚Ɖñ“š�B ‚Ü‚é‚ÅƒŠƒtƒH�[ƒ€�¼‹\‚̂悤‚¾�E�E�E ’P�ƒ‚È�s—ñ�~ƒxƒNƒgƒ‹‚݂̂̌vŽZ‚Å‚à�Å‘å‚R‚O�“ƒAƒbƒv’ö“x‚Ȃ̂¾‚ª •À—ñŒvŽZ‚Á‚Ä‚»‚ñ‚È‚à‚̂ł·‚©�H
ƒ}ƒVƒ“‚Ì�\�¬‚É‚æ‚邵�E�E�E QuadƒRƒA‚ÈCPU�H
>>358 Ž©“®•À—ñ‰»‚Í�A‚»‚ñ‚È‚à‚ñ‚¾‚æ�BƒXƒpƒRƒ“‚Å‚à“¯‚¶�B
‚Ü‚Ÿ•À—ñ‰»‚æ‚èSSE‚Ì•û‚ªŠÈ’P‚ÉŠÈ’P‚ɃXƒs�[ƒh‚ª�o‚邿‚¤‚ɂȂé�B
SSE‚Í“K“–‚É-O3‚Æ‚©‚·‚邾‚¯‚Å‚à—LŒø‚ɂȂé‚Í‚¸�i‘½•ª Qparallel‚Á‚Ä—v‚·‚é‚ÉŽ©“®‚ÅOpenMPƒfƒBƒŒƒNƒeƒBƒu“ü‚ê‚Ă邾‚¯‚¾‚æ‚Ë�H �ŋ߂ÌOpenMP‚͂ǂ¤‚È‚ñ‚¾‚낤�E�E�EŒÃ‚¢ŒÃ‚¢‚Ƃ悌¾‚í‚ê‚邯‚Ç�A�¡Œã‚̃}ƒ‹ƒ`ƒRƒACPU‚Å’Ê—p‚µ‚È‚‚È‚é‚Ì‚¾‚낤‚©
>>360 �s—ñ�ςƂ©‘f–p‚ȉ‰ŽZ‚È‚çSSE‚ð“ü‚ê‚ê‚Î’P�¸“x‚Í‚S”{‘¬�A”{�¸“x‚Í‚Q”{‘¬‚Æ‚©�A‘f’¼‚É‘�‚‚È‚é�B
ƒRƒ“ƒpƒCƒ‹Žž‚̃�ƒbƒZ�[ƒW‚ɃxƒNƒgƒ‹‰»‰]�X‚Æ�o‚ê‚ÎSSEŽg‚Á‚Ä‚é�B
363 �F
358 �F2007/10/24(�…) 11:02:26
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B Œ»�Ý‚ÍOpteron1210(DualCore)‚ðŽg‚Á‚Ä‚¢‚Ü‚·�B ƒCƒ“ƒeƒ‹‚©‚ç‚͂܂é‚ÅQuadCore‚ÌCPU‚𔃂¦‚Æ‚¢‚¤‚悤‚ȉñ“š‚¾‚Á‚½‚Ì‚Å�A �¼‹\�¤–@‚̂悤‚É•·‚±‚¦‚Ü‚µ‚½�B SSE‚ÍŽg‚Á‚Ä‚¢‚Ü‚·�B CPU‚̃Nƒ�ƒbƒN�”‚ª‚ ‚ª‚ç‚È‚‚È‚Á‚½Œ»�݂ł͕À—ñŒvŽZ‚É‚µ‚È‚¢‚Æ ƒXƒs�[ƒhƒAƒbƒv‚ª–]‚߂Ȃ‚È‚é‚ÆŽv‚¢�A•À—ñ‚ðŒŸ“¢‚µ‚Ä‚¢‚Ü‚·�B Ž©•ª‚̕׋•s‘«‚à‘å‚«‚¢‚̂ł·‚ª�AŒÖ‘å�L��‚É‚ª‚Á‚©‚è‚Å‚·�B
Intel‚̃Tƒ|�[ƒg‚É•·‚¢‚½‚Ì�H ‚±‚¤‚¢‚¤‚Ì‚Á‚Ä‘å’ï‚܂Ƃà‚È(–ð‚É—§‚Â�j‰ñ“š‚ÍŠú‘Ò‚Å‚«‚È‚¢‚à‚̂łÍ�H MS‚æ‚è‚̓}ƒV‚¾‚¯‚Ç�E�E�E Œ‹‹ÇƒOƒO‚é‚È‚è2ch‚È‚è‚Ç‚Á‚©‚̃Rƒ~ƒ…ƒjƒeƒB‚È‚è‚Å’T‚·‚µ‚©‚È‚¢‚ñ‚¾‚æ‚Ë
365 �F
358 �F2007/10/24(�…) 12:58:59
>>364 ƒo�[ƒWƒ‡ƒ“ƒAƒbƒv�ž‚݂ŔNŠÔ�”–œ‰~�i‚¢‚‚ç‚©–Y‚ꂽ�j‚̃Tƒ|�[ƒg—¿‚𕥂Á‚Ä‚¢‚é‚Ì‚Å�A
Žg‚Á‚Ă݂½‚̂ł·‚ª�A–{“–‚É‚ª‚Á‚©‚è‚Å‚·�B
ƒTƒ|�[ƒg—¿‹à‚ð‚P‚O”{‚É‚µ‚Ä‚à‚¢‚¢‚Ì‚Å�A‚܂Ƃà‚ȉñ“š‚ðŠú‘Ò‚µ‚½‚¢‚Å‚·�B
ƒOƒO‚Á‚Ă܂·‚ª‚È‚©‚È‚©‚¢‚¢�î•ñ‚ª�o‚Ä‚±‚È‚¢‚Å‚·�B
Ž„‚Ì�Å�‚‚Í‚RŠ„‘�‚ª�Å�‚‚Å�AŽÀ–±“I‚ÈŒvŽZ‚ł͂قƂñ‚Ç–ð‚É—§‚¿‚Ü‚¹‚ñ�B
‚ ‚ꂱ‚ê�l‚¦‚Ä‚¢‚éŠÔ‚É�AŽžŠÔ‚ð‚©‚¯‚ÄŒvŽZ‚µ‚½‚Ù‚¤‚ª‚¢‚¢‚Ì‚©‚ÆŽv‚¦‚Ä‚«‚Ü‚µ‚½�B
>>363 ‚¢‚â�¼‹\‚ł͂Ȃ¢�B
Šù‘¶ƒvƒ�ƒOƒ‰ƒ€‚ðŽ©“®•À—ñ‰»‚µ‚Ä�ê�‡�AƒXƒs�[ƒhƒ_ƒEƒ“‚·‚é‚̂͂²‚•�’ʂ̌»�Û�B
‚Í‚¶‚ß‚©‚ç•À—ñ‰»‚ð‘O’ñ‚É�ÝŒv‚µ‚Ä�A‚©‚ÂŽwަ�s‚ð“ü‚ê‚Ü‚‚Á‚Ä‚à‚¢‚Ü‚¢‚¿‚Ȃ̂Í�AŽÀ‚Í�펯‚¾‚—
>>365 ƒXƒŒˆá‚¢‚Șb‚¾‚¯‚Ç�A–{‹C‚̃Kƒ`ƒ“ƒRƒTƒ|�[ƒg‚ð‚·‚é‚È‚ç�¤”„‚·‚鑤‚Æ‚µ‚Ä‚Í10”{‚Å‚àƒyƒC‚µ‚È‚¢‚ÆŽv‚¤‚¯‚Ç‚Ë�E�E�E
‚»‚±‚Í‚µ‚傤‚ª‚È‚¢‚Á‚·‚æ
368 �F
358 �F2007/10/24(�…) 16:19:19
“ú–{Œê‚ª‚¨‚©‚µ‚©‚Á‚½�Bޏ—炵‚Ü‚µ‚½�B
>>367 ‚ ‚éƒ\ƒtƒgƒxƒ“ƒ_�[‚Í”NŠÔ‚P‚S‚O–œ‰~‚̃Tƒ|�[ƒg‚Å‚¢‚½‚ê‚è‚‚‚¹‚è�B
�i‰½‚ªŒ´ˆö‚Å‚µ‚傤‚Ë�H‚Æ–â‚¢�‡‚킹‚½‚ç�C�³‚³‚ê‚Ä‚©‚¦‚Á‚Ä‚‚é�j
‚»‚±‚Í�Å—D�æ‚ŃTƒ|�[ƒg‚ðŒp‘±‚µ‚Ä‚¢‚é�B
•ʂ̂S‚O–œ‰~‚̂Ƃ±‚ë‚Í�A‚»‚ê‚Ȃ肾‚¯‚Ç‰ðŒˆ‚Ìƒqƒ“ƒg‚Í‚‚ê‚é�B
�i‚±‚ê‚ç‚ÍŒ¾Œê‚ł͂Ȃ‚ăAƒvƒŠƒP�[ƒVƒ‡ƒ“‚Å‚·‚ª�j
VisualFORTRAN‚Í�uŠJ”‚É–â‚¢�‡‚킹‚Ü‚·�v‚̂܂ܕú’u�E�E�E�B
‚½‚¾�A�¡‰ñ‚ÌŒ�‚ɂ‚¢‚Ă͌ˆ‚µ‚Ä“ÁŽê‚ÈŽ¿–₳͂Ȃ
�L��‚É‚¤‚½‚Á‚Ä‚ ‚é�«”\‚ª�o‚È‚¢‚æ‚ÉŽn‚Ü‚è�A
‚»‚¿‚ç‚Ì‚à‚Á‚Ä‚¢‚é—�‘z“I‚ȃvƒ�ƒOƒ‰ƒ€‚Å‚¢‚¢‚©‚ç�o‚µ‚Ä‚‚ê‚Æ‚¢‚Á‚Ä‚à
�o‚Ä‚±‚È‚¢�B‚¢‚Á‚½‚¢‚Ç‚ñ‚ÈŽ¿–₾‚Á‚½‚瓚‚¦‚邱‚Æ‚ª‚Å‚«‚é‚Ì‚¾‚낤�B
‚m‚d‚b�F�¢ŠE�Å�‚�«”\‚̃XƒpƒRƒ“�u‚r‚w�|‚X�v‚ð””„
�@‚m‚d‚b‚Í‚Q‚T“ú�A�¢ŠE�Å�‚ƒŒƒxƒ‹‚ÌŒvŽZ”\—Í‚ðŽ�‚ƒX�[ƒp�[ƒRƒ“ƒsƒ…�[ƒ^�[�u‚r‚w�|‚X�v‚ðŠJ”‚µ�A
””„‚ðŽn‚ß‚½‚Æ”•\‚µ‚½�B‚P•b‚P‚U‚O‰‰ñ‚ÌŒvŽZ”\—Í‚ðŽ�‚¿�A�Å‘åŒÀ‚Ì‚T‚P‚Q‘ä‚ð˜AŒ‹‚µ‚ĉ^—p‚µ
‚½�ê�‡�A‚P•b‚W‚R‚X’›‰ñ‚ÌŒvŽZ‚ª‰Â”\‚ȃVƒXƒeƒ€‚ªŠ®�¬‚·‚é�B
�@�VŠJ”‚Ì�‚�«”\‚b‚o‚t�i’†‰›‰‰ŽZ�ˆ—�‘•’u�j‚ð“‹�Ú‚µ‚½�B�‘“àŠO‚Ì‘åŠw‚⌤‹†‹@ŠÖ‚Ȃǂª�A
‹C�Û—\‘ª‚âƒ�ƒPƒbƒg‚Ì�ÝŒv�AŠj—Z�‡‚̃Vƒ~ƒ…ƒŒ�[ƒVƒ‡ƒ“‚Ȃǂɗ˜—p‚·‚邱‚Æ‚ð‘z’肵‚Ä‚¢‚é�B
‰¿Ši‚Í‚P‰‚T‚O‚O‚O–œ‰~�B
�@Œ»�Ý‚Ì�¢ŠE�Å‘¬‚̃Rƒ“ƒsƒ…�[ƒ^�[ƒVƒXƒeƒ€‚͕Ăh‚a‚l‚ªŠJ”‚µ�A•bŠÔ‚Q‚W‚O’›‰ñ‚ÌŒvŽZ‚ª‚Å‚«‚é�B
‚m‚d‚b‚Í�A‚P‚O”N‚ÌŠ®�¬‚ð–ÚŽw‚·�¢ŠE�Å‘¬ƒXƒpƒRƒ“‚ÌŠJ”Œv‰æ‚ð�A“ú—§�»�ì�Š‚â•xŽm’Ê‚Æ�i‚ß‚Ä
‚¢‚é�B
ttp://mainichi.jp/select/biz/news/20071026k0000m020076000c.html
371 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/11/02(‹à) 00:54:14
‚±‚̂܂ÜPS2ƒNƒ‰ƒXƒ^‚̂悤‚É‚¨—V‚Ñ‚Å�I‚í‚é‚Ì‚©‚ÆŽv‚Á‚½‚ª�A‚»‚¤‚Å‚à‚È‚¢‚Ì‚©�E�E�H ‚Å‚à’ቿŠi‚Ì•�‹yƒQ�[ƒ€‹@‚ðŽg‚¦‚é‚Á‚Ă̂ª‚»‚à‚»‚à‚̃EƒŠ‚È‚ñ‚¾‚©‚ç�A�¡‚ÌXbox‚âwii‚É‹ê�킵‚Ä‚é�󋵂¶‚ጵ‚µ‚¢‚ñ‚¶‚á‚È‚¢‚©�H
“Œ–k‘åŠw‚ª NEC ‚Ì�¢ŠE�Å‘¬ƒXƒpƒRƒ“�uSX-9�v16‘䓱“ü‚Ö
’˜ŽÒ: japan.internet.com •Ò�W•” ƒvƒŠƒ“ƒ^�[—p ‹LŽ–‚ð“]‘—
NEC ‚Í1“ú�A“Œ–k‘åŠw�î•ñƒVƒiƒW�[‹@�\�î•ñƒVƒiƒW�[ƒZƒ“ƒ^�[‚©‚ç�A�¢ŠE�Å‘¬‚Ì
ƒxƒNƒgƒ‹Œ^ƒX�[ƒp�[ƒRƒ“ƒsƒ…�[ƒ^�uSX ƒVƒŠ�[ƒY ƒ‚ƒfƒ‹ SX-9�v16‘ä‚©‚ç‚È‚é‘å‹K–Í
ƒX�[ƒp�[ƒRƒ“ƒsƒ…�[ƒ^ƒVƒXƒeƒ€‚ðŽó’�‚µ‚½‚±‚Æ‚ð”•\‚µ‚½�B�VƒVƒXƒeƒ€‚Í�A�Å‘å�«”\
26.2ƒeƒ‰ƒtƒ�ƒbƒvƒX�iƒeƒ‰ƒtƒ�ƒbƒvƒX�F1•bŠÔ‚É1’›‰ñ‚Ì•‚“®�¬�”“_‰‰ŽZ”\—Í�j‚É’B‚µ�A
SX ƒVƒŠ�[ƒY‚Å‚Í�‘“à�Å‘å‹K–͂̃VƒXƒeƒ€‚É‚È‚é‚Æ‚¢‚¤�B
“¯ƒZƒ“ƒ^�[‚Í�A‘S�‘‚Ì‘åŠw‚⌤‹†‹@ŠÖ‚ÌŒ¤‹†ŽÒ‚ª—˜—p‚·‚鋤“¯Ž{�݂Ƃµ‚Ä�A�í‚É
�Å�‚�E�Å�V‰s‚ÌŒvŽZ‹@ƒVƒXƒeƒ€‚ð�Ý’u‚µ�A�q‹ó‰F’ˆ�A’n‹…ŠÂ‹«�AIT�AƒiƒmƒeƒN•ª–ì‚È‚Ç
�Å�æ’[‚ÌŠw�pŒ¤‹†‚ðŽx‰‡�B‘¼‚ł͎À�s‚Å‚«‚È‚¢‘å‹K–̓Vƒ~ƒ…ƒŒ�[ƒVƒ‡ƒ“‚ÌŽÀ�sŠÂ‹«‚Ì
�®”õ�A�ê–å“I—§�ê‚©‚ç‚Ì—˜—pŽÒƒvƒ�ƒOƒ‰ƒ€‚Ì�‚‘¬‰»�„�i‚ð�ϋɓI‚É�s‚¢�A’·”NŒ¤‹†ŽÒ
‚ɂƂÁ‚ÄŽg‚¢�ŸŽè‚Ì—Ç‚¢ƒVƒXƒeƒ€‚ª�\’z‚³‚ê‚Ä‚¢‚é�BŒ»�Ý�AƒZƒ“ƒ^�[‚Ì—˜—pŽÒ‚ÍŠw“àŠO‚Å1,500�l‚ð’´‚¦‚邯‚¢‚¤�B
“¯ƒZƒ“ƒ^�[‚Í�A‚»‚Ì‘O�g‚Å‚ ‚é‘åŒ^ŒvŽZ‹@ƒZƒ“ƒ^�[‚ª1986”N‚É SX ƒVƒŠ�[ƒY‚𓱓ü‚µ‚Ĉȗˆ�A
ƒxƒNƒgƒ‹Œ^ƒX�[ƒp�[ƒRƒ“ƒsƒ…�[ƒ^‚ð�Ì—p‚µ‚Ä‚¢‚é�B
http://japan.internet.com/busnews/20071101/3.html
>>374 �ã‘åƒZƒ“ƒ^�[‚̓nƒbƒJ�[‚É‚â‚ç‚ê‚Ä‚©‚ç�AƒZƒLƒ…ƒŠƒeƒB�[‚ª‹‰»‚³‚ê‚·‚¬‚Ä
Žg‚¢‚É‚‚‚È‚Á‚½‚Á‚Ä’m‚è�‡‚¢‚ªŒ¾‚Á‚Ä‚½‚È�[�B
�””N‘O‚Ì‚±‚Æ‚¾‚ª�B
376 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/11/23(‹à) 16:54:32
‹x‚Ý‚¾‚µ�A‰½‚©�V‚µ‚¢ƒlƒ^‚ð�o‚µ‚Ä‚‚ê�B
‰É‚È‚çFortran2003‚Ì�ˆ—�Œn�ì‚Á‚Ä‚‚ê�B
378 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/11/29(–Ø) 13:22:06
„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª
�@�@�@�@�@“ú–{ƒjƒ…�[ƒ�ƒŠƒJƒ‹ƒAƒ‹ƒSƒŠƒYƒ€ƒYƒOƒ‹�[ƒvДޮ‰ïŽÐ
�@�@�@�@�@�@LAPACKƒTƒ“ƒvƒ‹ƒvƒ�ƒOƒ‰ƒ€�W‚ðŒöŠJŠJŽn
�@ �@�@�@�@�@�@LAPACK‚Ì—˜—p‚ª‚æ‚è�g‹ß‚É�I
„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª„ª
“ú–{ƒjƒ…�[ƒ�ƒŠƒJƒ‹ƒAƒ‹ƒSƒŠƒYƒ€ƒYƒOƒ‹�[ƒvДޮ‰ïŽÐ(“Œ‹ž“s’†‰›‹æ�AˆÈ‰º
“ú–{NAG)‚Í�Anetlib‚É‚æ‚èŒöŠJ‚³‚ê‚Ä‚¢‚é�üŒ`‘ã�”ƒpƒbƒP�[ƒW�uLAPACK�v‚Ì
ƒTƒ“ƒvƒ‹ƒvƒ�ƒOƒ‰ƒ€�W‚ðŒöŠJ‚¢‚½‚µ‚Ü‚·�B‚±‚ê‚É‚æ‚èLAPACK‚ð—˜—p‚·‚郆�[ƒU
ƒvƒ�ƒOƒ‰ƒ€‚ÌŠJ”‚ª�A‚æ‚èƒXƒs�[ƒfƒB�[‚É�s‚¦‚邿‚¤‚ɂȂè‚Ü‚·�B
ŒöŠJ‚t‚q‚k�F
http://www.nag-j.co.jp/lapack.htm ‚Ü‚½�A“ú–{ƒjƒ…�[ƒ�ƒŠƒJƒ‹ƒAƒ‹ƒSƒŠƒYƒ€ƒYƒOƒ‹�[ƒvДޮ‰ïŽÐ‚ł͂æ‚è�‚�«”\‚È
LAPACK‚ð�ANAGƒ‰ƒCƒuƒ‰ƒŠ�»•i�iNAG Fortran SMP Library�j‚Æ‹¤‚É’ñ‹Ÿ‚µ‚Ä‚¢
‚Ü‚·�B
�¡ LAPACK‚ɂ‚¢‚Ä
LAPACK‚ÍLinear Algebra PACKage‚Ì—ª‚Å�Anetlib�i
http://www.netlib.org/ �j
‚É‚æ‚èŒöŠJ‚³‚ê‚Ä‚¢‚é�‚�«”\�üŒ`‘ã�”ƒpƒbƒP�[ƒW‚Å‚·�B�i“ú–{Œê‚ł̓Gƒ‹ƒG�[
ƒpƒbƒN�A‚à‚µ‚‚̓ŒƒCƒpƒbƒN‚Æ”‰¹‚³‚ê‚Ü‚·�j˜A—§ˆêŽŸ•û’öŽ®�A�Å�“ñ�æ–â‘è
ŒÅ—L’l–â‘è�A“ÁˆÙ’l–â‘è‚ð‰ð‚‚½‚߂̃Tƒuƒ‹�[ƒ`ƒ“‚ªŠÜ‚Ü‚ê‚Ä‚¢‚Ü‚·�B
�¡ NAG Fortran SMP Library‚ɂ‚¢‚Ä
1500ˆÈ�ã‚̃Tƒuƒ‹�[ƒ`ƒ“‚©‚ç�\�¬‚³‚ê‚é•À—ñ‰ÈŠw‹Z�p�A“�ŒvŒvŽZƒ‰ƒCƒuƒ‰ƒŠ
‚Å‚·�B1500‚̃Tƒuƒ‹�[ƒ`ƒ“‚Ì’†‚ɂ͕À—ñ‰»�ς݂ÌLAPACKƒ‹�[ƒ`ƒ“‚à�”‘½‚ŠÜ‚Ü
‚ê‚Ä‚¨‚è�ALAPACK‚ð—˜—p‚·‚éƒvƒ�ƒOƒ‰ƒ€‚ð‚P�s‚à•Ï�X‚·‚邱‚ƂȂ�A�«”\‚ð
�X‚É�‚‚߂邱‚Æ‚ª‰Â”\‚Å‚·�B
379 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/12/06(–Ø) 03:09:49
�‰�SŽÒ‚Å�Å�¬“ñ�æ–@‚̃vƒ�ƒOƒ‰ƒ€‚ª‘g‚߂Ȃ¢‚ñ‚Å‚·‚ª‚Ç‚¤‚·‚ê‚΂¢‚¢‚ñ‚Å‚µ‚傤‚©�H
>>379 �}�‘ŠÙ‚Ö�s‚Á‚Ä�Aƒf�[ƒ^�ˆ—�‚Ì–{‚ð“ǂނñ‚¾�I
ƒf�[ƒ^“Ç‚Ý�ž‚ñ‚Ѱ‹�‚߂ČöŽ®’Ê‚èŒvŽZ‚·‚ê‚΂¨‚‹
382 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/12/07(‹à) 22:27:07
>>379 ‚¢‚Ü‚·‚®‰´‚ÌŒû�À‚É3000‰~�U‚è�ž‚Þ‚ñ‚¾�I
�Å�¬“ñ�æ–@‚‚ç‚¢‚Ȃ炢‚‚ç‚Å‚à“]‚ª‚Á‚Ă邾‚ë�E�E�E
384 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/12/12(�…) 20:46:38
ƒRƒ“ƒpƒCƒ‹‚͂ł«‚½‚̂ł·‚ª�A‚±‚ñ‚ȃ�ƒbƒZ�[ƒW‚ª�o‚Ä‚«‚Ä “r’†‚ÅŽ~‚Ü‚Á‚Ä‚µ‚Ü‚¢‚Ü‚·�B Runtime error from program:c:\users\�›�›�›�›\documents\fortran\traje_0point.exe Unknown floating point exception 91a1 Floating point co-processor fault at address 00401ef8 00401ad0 GOENTR [+0428] 00401000 main [+059c] eax=00000b77 ebx=00000096 ecx=00000000 edx=0365fc38 esi=0365fcdc edi=0365fcd8 ebp=0365fc94 esp=0365fbd8 IOPL=0 ds=0023 es=0023 fs=003b gs=0000 cs=001b ss=0023 flgs=00010206 [NC EP NZ SN DN NV] 00401ef8 fsqrt 00401efa fmulp st(1) 00401efc fmul [0044a2c0] ’N‚©‚±‚̃Gƒ‰�[‚̈Ӗ¡‚È‚ç‚тɉðŒˆ�ô‚ð‚²‹³Žö‚µ‚Ä‚¢‚½‚¾‚¯‚È‚¢‚Å‚µ‚傤‚©�H ‚¿‚Ȃ݂É�›�›�›�›‚̂Ƃ±‚ë‚ÍŽ„‚Ì–¼‘O‚ª“ü‚Á‚Ä‚é‚Ì‚Å�A•š‚¹‚Ä‚¨‚«‚Ü‚µ‚½�B
>>384 ƒRƒvƒ�‚Ì‹@ŠBŒê‚Ì–½—߂ɑΉž•¨‚ª–³‚¢‚Ì‚¾‚©‚ç�AƒRƒ“ƒpƒCƒ‹Žž‚É‘Î�Û‹@ŽíˆÈŠO‚Ì–½—ß‚ª“ü‚邿‚¤‚È
�Å“K‰»‚ð‚µ‚½‚̂ł͂Ȃ¢‚©‚ÆŽv‚í‚ê‚é�B
Pen4SSE2‚𖳈óƒyƒ“ƒ`ƒAƒ€‚Å“®‚©‚·‚Æ‚©�AAMD—pSSE–½—ß‚ðIntel‚Å“®‚©‚·‚Æ‚©�B
‚»‚¤‚¾‚Æ‚·‚ê‚Î�A�Å“K‰»‚𗎂Ƃ·‚©�A‘Î�Û‹@Ží‚𖾎¦“I‚ÉŽw’è‚·‚é‚©�A‘S‹@Ží‘Î�ۂɃIƒvƒVƒ‡ƒ“‚ð•Ï‚¦‚ê‚΂¢‚¢�B
>>384 ‚¿‚傤‚Çfsqrt‚̂Ƃ±‚ë(00401ef8)‚Å—áŠO‚ª‹N‚«‚Ä‚¢‚é‚Ì‚Å
GOENTR‚Ì’†‚ÅSQRT()‚É•‰‚Ì�”‚ð“n‚·“™‚Ì•s�³‚ÈŒvŽZ‚ð
‚µ‚Ä‚¢‚邿‚¤‚ÉŒ©‚¦‚邪�B
386‚Ɉê•[
ƒRƒ“ƒpƒCƒ‰‚͉½‚¾‚낤�H
389 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/12/14(‹à) 18:44:44
384‚Å‚·�B Ž©ŒÈ‰ðŒˆ‚µ‚Ü‚µ‚½�B ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½�B
>>389 �¡Œã�A‘¼‚Ì•û‚Ì–â‘è‰ðŒˆ‚ɖ𗧂‚±‚Æ‚à‚ ‚è‚Ü‚·‚Ì‚Å
�o—ˆ‚ê‚΃Rƒ“ƒpƒCƒ‰‚ÌŽí—Þ‚â‰ðŒˆ•û–@‚ðŒöŠJ‚Å‚«‚é”͈͂ŗǂ¢‚Ì‚Å
�‘‚«�ž‚ñ‚Å‚à‚炦‚邯—L“ï‚¢‚Å‚·�B
391 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/12/22(“y) 10:35:08
CONTINUE
392 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/12/23(“ú) 10:22:03
stop end
�Å‹ß‚Ì ‚hntel Fortran ‚Á‚Ä Traceback ‹@”\‚ªŒø‚¢‚ĂȂ‚Ë�H
‚»‚¤‚©�H -traceback ƒIƒvƒVƒ‡ƒ“‚łł¿‚á‚ñ‚ƃ\�[ƒX–¼‚Æ�s”Ô�†‚܂ŕ\ަ‚³‚ê‚邼�B
395 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2007/12/26(�…) 21:50:42
”N–¾‚¯‚ł悩‚Á‚½‚çv10.1‚ÅŽŽ‚µ‚Ä‚Ý‚é‚æ
>>395 —Š‚Þ�B‚â‚Á‚Ă݂Ă‚ê�B
˜R‚ê‚̊‹«‚¾‚Æ�AWindows+VisualStudio‚̃rƒ‹ƒhƒIƒvƒVƒ‡ƒ“‚Åtraceback‚ð‚‚¯‚Ä‚¢‚é‚Ì‚¾‚ª�A
9.1‚¾‚ÆTraceback‚ð“f‚‚ª�AVer10.0‚âVer.10.1‚¾‚Æ•�’ʂ̎À�sŽžƒGƒ‰�[‚µ‚©�o‚È‚¢�B
ƒc�[ƒ‹�{ƒIƒvƒVƒ‡ƒ“‚ŃRƒ“ƒpƒCƒ‰‚¾‚¯•Ï‚¦‚Ä‚¢‚é‚Í‚¸‚Ȃ̂Å�AƒIƒvƒVƒ‡ƒ“Žw’è‚Í‹¤’Ê‚¾‚ÆŽv‚¤‚Ì‚¾‚ª�E�E
ŽèŒ³‚ÌPC‚É10.1‚µ‚©“ü‚Á‚ĂȂ¢‚̂ő¼‚̃o�[ƒWƒ‡ƒ“‚Æ”äŠr‚Å‚«‚È‚¢‚ª�A10.1‚Ì�ê�‡: �EVS�ã‚Å[ƒfƒoƒbƒO] -> [ƒfƒoƒbƒOŠJŽn] (F5) ‚ÅŽÀ�s �@VS‚̃fƒoƒbƒK�ã‚ŃuƒŒƒCƒN‚ª‚©‚©‚é�i�uŒÄ‚Ñ�o‚µ—š—ð�v‚ɃXƒ^ƒbƒNƒgƒŒ�[ƒX‚ð•\ަ�j �EVS�ã‚Å[ƒfƒoƒbƒO] -> [ƒfƒoƒbƒO‚È‚µ‚ÅŠJŽn] (Ctrl + F5) ‚ÅŽÀ�s �@ƒgƒŒ�[ƒXƒoƒbƒN�î•ñ‚ð•\ަ‚¹‚¸‚É�I—¹ �E•Ê“rƒRƒ}ƒ“ƒhƒvƒ�ƒ“ƒvƒg‚ðŠJ‚¢‚ÄŽÀ�s �@ƒgƒŒ�[ƒXƒoƒbƒN�î•ñ‚ð•\ަ‚µ‚Ä�I—¹ ‚ƂȂÁ‚½�B
>>397 ‡dƒNƒX
Šm”F�E”cˆ¬‚µ‚½�B
˜R‚ê‚͋ߔNƒfƒoƒbƒOŽÀ�s‚ð‚Ü‚Á‚½‚Žg‚Á‚Ä‚¢‚È‚©‚Á‚½‚Ì‚Æ�AƒGƒ‰�[‚Ì�o‚é“z‚Í
ƒRƒ}ƒ“ƒhƒ‰ƒCƒ“‚©‚çŽÀ�s‚µ‚½‚±‚Æ‚ª‚È‚©‚Á‚½‚̂ŋC‚©‚È‚©‚Á‚½‚—
‘½•ª�AƒfƒoƒbƒO‚È‚µŽÀ�s‚Å‚àƒgƒŒ�[ƒXƒoƒbƒN‚͌ĂÑ�o‚µ—š—ð‚É‹�§ƒŠƒ_ƒCƒŒƒNƒg‚³‚ê‚Ä‚¢‚邪�A
�ierror�o—Í‚©‚È‚ñ‚©‚Å�j
‚±‚Ì�ê�‡ŒÄ‚Ñ�o‚µ—š—ð‚ðŒ©‚éƒ�ƒjƒ…�[�€–Ú‚ª–³‚¢‚Æ‚¢‚¤ƒoƒO‚Ȃ̂¾‚낤‚—�@‹ó‘z‚¾‚ª‚—
‚¹‚Á‚©‚Visual Studio‚ðŽg‚Á‚Ä‚¢‚é‚ñ‚¾‚©‚çƒfƒoƒbƒK‚àŽg‚¨‚¤‚º�B
>>399 ‚¢‚â�A�͎̂g‚Á‚Ä‚¢‚½‚¯‚Ç�A‚È‚ñ‚Æ‚¢‚¤‚©�AFortranŒü‚«‚łȂ¢Š´‚¶‚ª‚µ‚Ä�B
‹�‘å”z—ñ‚݂̂͂¾‚µ‚Æ‚©‚ÌŒŸ�o‚ÉŒü‚¢‚ĂȂ¢‚¹‚¢‚©‚È�H
401 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/02/21(–Ø) 23:04:14
Fortran2003‚Ì�ˆ—�Œn‚Í‚æ�o‚¹
>>401 IBM‚̃Rƒ“ƒpƒCƒ‰‚ªˆê”Ô�i‚ñ‚Å‚é‚Á‚Ä•·‚¢‚½‚ñ‚¾‚¯‚Ç�B
‚Ç‚¤‚Ȃ̂©‚Ë�H
NAG‚à�ŋ߂¨‚ƂȂµ‚¢‚µ�B
’†‹K–Í‘a�s—ñ˜A—§•û’öŽ®‚ð‰ð‚‚Ì‚ÉFortran (Intel Win & Linux)‚ðŽg‚¨‚¤‚Æ‚µ‚Ă܂·�B �¬‹K–͂̂à‚Ì‚Í�AMATLAB‚Å�A•sŠ®‘SŽOŠp•ª‰ð‘O�ˆ—��{BiCGSTAB‚Æ‚©GMRES‚Å‰ð‚¢‚Ä‚«‚Ü‚µ‚½�B ‚µ‚©‚µ•û’öŽ®‚̑傫‚³‚ª1–œ‚ð’´‚¦‚é‚ ‚½‚è‚©‚ç�AMATLAB‚Ì‘g‚Ý�ž‚݃\ƒ‹ƒo�[‚̃�ƒ‚ƒŠŒø—¦‚ªˆ«‚‚Ä Fortran‚É–ß‚Á‚Ä‚«‚½ŽŸ‘æ‚Å‚·�B �¡�A‚Æ‚è‚ ‚¦‚¸MKL‚ð“ü‚ê‚Ă݂Ä�A‚»‚Ì’†‚Å‚¨‚·‚·‚ß(?)‚Û‚©‚Á‚½PARDISO‚ðŽg‚Á‚½ƒR�[ƒh‚ð‘g‚ñ‚Å‚Ý‚Ä ƒTƒCƒY5–œ‚‚ç‚¢‚¾‚Æ‚»‚ê‚È‚è‚Ì‘¬‚³‚Å‰ð‚¢‚Ä‚‚ê‚邱‚Æ‚ª‚í‚©‚è‚Ü‚µ‚½�BMKL‚̃}ƒjƒ…ƒAƒ‹‚É‚Í�A•�’Ê‚Ì ‘a�s—ñ—p”½•œƒ\ƒ‹ƒo‚à‚ ‚邯�‘‚¢‚Ä‚ ‚è‚Ü‚·‚ª�AƒTƒCƒY‚ª10–œ‚Æ‚©’´‚¦‚邿‚¤‚É‚È‚é‚Æ�APARDISO‚̂悤‚È ‘a�s—ñ’¼�Ú–@‚æ‚è�A”½•œ–@‚Ì•û‚ª—Ç‚¢‚̂łµ‚傤‚©�B ‚Ù‚©‚̃\ƒ‹ƒoƒ‰ƒCƒuƒ‰ƒŠ‚Å‚Í�A•À—ñ—pPETSc‚ðŽŽ‚µ‚Ä‚¢‚Ü‚·�B‚½‚¾�A‰ð‚¢‚Ä‚¢‚é–â‘è‚ÌŒW�”�s—ñ‚ª—Ç‚‚È‚¢‚Ì‚© PETS‚ƒ‚¾‚ÆŽû‘©‚µ‚È‚¢‚±‚Æ‚ª‚ ‚Á‚Ä�APARDISO‚âMKL‚ðŽg‚¨‚¤‚©‚ÆŽv‚Á‚Ä‚¢‚Ü‚·�B •À—ñŒvŽZ‚ɈÚ�s‚·‚é‚¿‚å‚Á‚Æ‘O‚‚ç‚¢‚̑傫‚³‚Ì‘a�s—ñ˜A—§•û’öŽ®‚ð‰ð‚‚̂ɂ¨‚·‚·‚߂̃‰ƒCƒuƒ‰ƒŠ‚ ‚Á‚½‚ç ‹³‚¦‚Ä‚‚¾‚³‚¢�B
>>403 LAPACK ‚© ATLAS ‚ł̓_ƒ��H‚»‚ñ‚È‘å‹K–͂ȌvŽZ‚ð‚â‚Á‚½Ž–‚ª
–³‚¢‚Ì‚Å�AŽg‚¢•¨‚ɂȂ邩‚Ç‚¤‚©‚Í•ª‚©‚è‚Ü‚¹‚ñ�B
Linux ‚È‚çƒpƒbƒP�[ƒW‚ŃCƒ“ƒXƒg�[ƒ‹‚Å‚«‚é‚Í‚¸�B
ƒEƒ`‚Ì Debian ‚É‚Í aptitude ‚Å“ü‚ꂽ�B
405 �F
403 �F2008/03/16(“ú) 18:44:46
>>404 ‚³‚ñ
ƒŒƒXƒTƒ“ƒNƒX‚Å‚·�B
LAPACK‚ÆATLAS‚àŽg‚Á‚Ă܂·!MKL‚àLAPACK‚Æ‚©LAPACK95‚ðŽg‚¢‚Ü‚·�B‘f�°‚炵‚¢
ƒ‰ƒCƒuƒ‰ƒŠ‚¾‚ÆŽv‚¢‚Ü‚·�B
˜R‚ꂪ‚â‚肽‚¢‚Ì‚Í�A‘a�s—ñ˜A—§•û’öŽ®‚Ȃ̂Å�ALAPACK‚Æ‚©ATLAS‚ðƒx�[ƒX‚É‚µ‚Ä
‚»‚̃‰ƒbƒp�[‚ª—~‚µ‚¢‚Æ‚¢‚¤Š´‚¶‚Å‚·�BLAPACK‚ª‚·‚Å‚ÉBLAS/ATLAS‚̃‰ƒbƒp�[‚Ȃ킯
‚Å‚·‚ª�B�B�B
>>405 ˆê”ʘ_‚©‚ç‚·‚ê‚Î�A”½•œ–@‚©’¼�à–@‚©‚Ì‘I‘ð‚Í�s—ñ‚Ì“à—e‚É‚æ‚é‚ñ‚Å‚Ë�H
‚½‚¿‚̈«‚¢�s—ñ‚łȂ¯‚ê‚Î�A”½•œ–@‚Ì•û‚ª—L—˜‚¾‚ÆŽv‚¤‚¯‚Ç�B
’¼�à–@‚È‚çŠmŽÀ‚É—LŒÀ‰ñ‚Å�I—¹‚·‚邱‚Æ‚ª•ª‚©‚Á‚Ä‚¢‚邪�A”½•œ–@‚Í’¼Œð�«‚ª�”’lŒë�·‚Å•…‚é‚©‚ç
�”Šw“I‚ɂ͂¨‚©‚µ‚¢‚ª�AŒ»ŽÀ‚ɂ͗LŒÀ‰ñ‚Å�I‚í‚ç‚È‚©‚Á‚½‚è‚·‚邵�B
�s—ñ‚ª�A‚Ù‚ñ‚ƂɃXƒJƒXƒJ‚Ì‘a‚©�Asingular‚ɋ߂¢‚©�AŒÅ—L’l‚ª�k‘Þ‚µ‚Ü‚‚Á‚Ä‚¢‚é‚©‚Æ‚©�A
‚»‚̕ӂ͎g—pŽÒ‚µ‚©•ª‚©‚ç‚ñ‚©‚ç�A‚È‚ñ‚Æ‚à‚¢‚¦‚È‚¢‚悤‚È�B
’†�g‚Ì•ª‚©‚ç‚ñ“z‚É‹@ŠB“I‚ÉŽg‚킹‚é‚©‚çˆÀ‘S‘æˆê‚Å�s‚«‚½‚¢‚Æ‚©�A‰^—p–ʂɂàˆË‘¶‚·‚邵�B
407 �F
405 �F2008/03/16(“ú) 21:00:50
>>406 ‚³‚ñ
‹Â‚邯‚¨‚è‚Á‚·�B
‚Æ‚è‚ ‚¦‚¸�AŽ©•ªˆê�l‚ÅŽg‚¤(Œ¤‹†)‚Ì‚Å�Aƒuƒ‰ƒbƒNƒ{ƒbƒNƒX“I‚ňÀ‘S‚È‚à‚̂łȂ‚Æ‚à
�‚‘¬‚Å�A“±“ü‚âƒR�[ƒfƒBƒ“ƒO‚ªŠy‚Ȃ̂ªŠó–]‚Å‚·�B
�s—ñ‚Ì�ó‘Ԃ͈«‚¢‚Å‚·�B4x4‚̃uƒ�ƒbƒN‚É•ª‚©‚ê‚Ă銴‚¶‚Å�A—£ŽU‰»‚ð�ׂ©‚‚â‚邯
Žå‘Ίp‚ª‘ì‰z‚µ‚Ä�A‘Ίpƒuƒ�ƒbƒN‚݂̂ɕsŠ®‘S•ª‰ðŒn‚Ì‘O�ˆ—�Š|‚¯‚邯�A
‚»‚ê‚È‚è‚ÉŽû‘©‚µ‚Ü‚·‚ª�AŒW�”�s—ñ‚̃TƒCƒY‚ª‘�‘å‚·‚邯‚¢‚¤ƒWƒŒƒ“ƒ}‚Å‚·�B
‘a�s—ñ�«‚Í�A5–œx5–œ‚Å�A”ñ—ë—v‘f‚ª0.1�“�Ø‚Á‚Ă邂炢‚Å‚·�B
‚²Žw“E‚̂悤‚É�A–â‘èˆË‘¶�«‚ª�‚‚¢‚Ì‚Å�A‚È‚©‚È‚©‚²ˆÓŒ©‚¢‚½‚¾‚‚͓̂‚¢‚©‚ȂƂÍ
‚¨‚à‚Á‚Ä‚¨‚è‚Ü‚·�B
‚Æ‚è‚ ‚¦‚¸�A‚݂Ȃ³‚ñ�A10–œx10–œ‚‚ç‚¢‚Ì‘a�s—ñ˜A—§•û’öŽ®(�·•ª–@‚â—LŒÀ—v‘f–@
‚È‚ç•p�o‚¾‚ÆŽv‚¢‚Ü‚·)‚ð‰ð‚‚Æ‚«‚Á‚Ä�A‚Ç‚ñ‚ÈŒ¾Œê‚Å�A‚Ç‚ñ‚ÈŽÀ‘•‚µ‚Ä‚é‚ñ‚Å‚·‚©‚Ë�B�B�B
”½•œ–@ƒ\ƒ‹ƒo‚àSaad‚Ìtemplate‚Ì‹[Ž—ƒR�[ƒh‚©‚玩•ª‚Å�‘‚¢‚Ä‚é‚Ì‚©�A‚Æ‚è‚ ‚¦‚¸
‚¢‚ë‚¢‚ëƒ\ƒ‹ƒoƒ‰ƒCƒuƒ‰ƒŠŽŽ‚µ‚Ä‚é‚Ì‚©�B�B�B‚½‚Ô‚ñ�A‘a�s—ñ‚ÌŠi”[Œ`Ž®‚©‚ç�l‚¦‚é•K—v‚ª
‚ ‚邯Žv‚¤‚Ì‚Å�A‚»‚Ì‚ ‚½‚è�AFortranŽg‚¢‚ÌŠF‚³‚ñ‚ª‚Ç‚¤‚â‚Á‚Ä‚é‚Ì‚©’m‚肽‚¢‚Å‚·�B
409 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/05/17(“y) 02:00:17
EXCEL�@VBA‚Å‚ ‚éŒvŽZ‚ð‚µ‚Ä‚½‚̂ł·‚ª�AŽžŠÔ‚ª‚©‚©‚Á‚ÄŽd•û‚ª‚È‚¢‚̂ŠPC‚ÉFORTRAN‚ðƒCƒ“ƒXƒg�[ƒ‹‚µ‚Äfortran‚Ńvƒ�ƒOƒ‰ƒ~ƒ“ƒO‚â‚낤‚©‚Æ Žv‚Á‚Ä‚¢‚Ü‚·�BŠw�¶Žž‘ã‚ÉFORTRAN�@77‚ðŽg‚Á‚½ŒoŒ±‚ª‚ ‚é’ö“x�B ‚½‚µ‚©MS�@FORTRAN�@‚Ï‚í�[‚·‚Ä�[‚µ‚å‚ñ‚‚¤‚Ì‚àŽg‚Á‚½‚±‚Æ‚ª‚ ‚è‚Ü‚·�B �ê–副‚Ì‘½‚»‚¤‚È‚±‚̃XƒŒ‚Å‹°�k‚Ȃ̂ł·‚ª�AŒ»�s‚ÌwinXP‚ª“ü‚Á‚Ä‚éPC‚Å “®‚©‚·‚Ƃ悳‚°‚ÈFORTRANƒRƒ“ƒpƒCƒ‰‚͉½‚ª‚¢‚¢‚Å‚µ‚傤‚©�E�E�B ŒvŽZ“à—e‚ÍŠÈ’P‚ȃ‚ƒ“ƒeƒJƒ‹ƒ�–@‚Å‚·�B
410 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/05/17(“y) 10:28:08
411 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/05/17(“y) 22:05:46
>>‚Ç‚Á‚¿‚É‚¹‚æ�¡EXCEL VBA‚Å‘g‚߂Ă¢‚é‚̂Ȃç�A�¡‚©‚ç‚í‚´‚í‚´Fortran‚È‚ñ‚¼‚â‚炸‚É�A >>ƒRƒ“ƒpƒCƒ‰”ƒ‚¤‹à‚Å‘¬‚¢CPU”ƒ‚Á‚½‚Ù‚¤‚ªƒ}ƒV‚¾‚ÆŽv‚¤‚¯‚Ç‚Ë�B ƒŒƒX‚ ‚肪‚Æ‚¤‚Å‚·�B VBA‚Á‚ĈÙ�í‚É’x‚¢‚ȂƎv‚Á‚Ä‚¢‚½‚̂ł·‚ª�ACPU‘¬‚‚·‚ê‚Î FORTRAN‚É’Ç‚¢‚‚¯‚é’ö“x‚Ȃ̂©�E�E�E�B ‚»‚±‚ç‚Ö‚ñ‚ª‚æ‚‚í‚©‚Á‚ĂȂ¢‚Ì‚Å�B
VB2008Express‚Å‚àŽg‚¦‚Î? VBA‚æ‚è‚Í‚¾‚¢‚Ô‘¬‚¢‚µƒ^ƒ_‚¾‚æ
‚ǂ̂‚ç‚¢ƒXƒs�[ƒh‚ð—v‚·‚é‚Ì‚©’m‚ç‚ñ‚ªVB‚̓Cƒ“ƒ^�[ƒvƒŠƒ^‚¾‚낤�H SilverFrost‚ÌFTN95‚Æ‚©ƒtƒŠ�[ƒRƒ“ƒpƒCƒ‰‚à“]‚ª‚Á‚Ä‚¢‚邱‚Æ‚¾‚µ�A ‚V‚V‚ł悯‚ê‚ÎWatcom‚Æ‚©�̂Ȃ‚©‚µ‚¢‚Ì‚à‚ ‚邵�Ag77‚ÌWin—p‚à‚ ‚邵�A Fortran‚Å‘f’¼‚É‚â‚点‚Ä‚â‚ê‚—
414 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/05/19(ŒŽ) 22:54:50
ƒ‚ƒ“ƒeƒJƒ‹ƒ�–@‚Æ‚©‚¾‚ÆCPUŽü”g�”‚ɂقڔä—Ⴕ‚Ä ‘¬‚‚È‚é‚ÆŽv‚Á‚Ä‚¨‚¢‚Ä‚¢‚¢‚̂ł·‚©�E�E�E
415 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/05/19(ŒŽ) 23:35:44
>>411 ‚»‚Ì‘¬‚¢CPU‚Å“®‚©‚¹‚ÎFortran‚Í‚à‚Á‚Æ‘¬‚wwww
ƒ}ƒWƒŒƒX‚·‚邯ƒpƒ‰ƒ��[ƒ^ƒT�[ƒxƒC‚Æ‚©‚È‚ç�¡‚Ì4ƒRƒA‚Æ‚©Žg‚¦‚΂©‚È‚èŒø—¦‚Í‚ ‚ª‚é�B
‚³‚·‚ª‚ÉBASIC‚ªFORTRAN‚ð’´‚¦‚邱‚Ƃ͖³—��B
Ž©•ª‚̃vƒ�ƒOƒ‰ƒ~ƒ“ƒOƒXƒLƒ‹‚Æ�ì‚éƒR�[ƒh‚Ì•¡ŽG‚³‚©‚ç�AƒR�[ƒfƒBƒ“ƒO‚âƒfƒoƒbƒO‚Ì
˜J—Í‚ðŒ©�Ï‚à‚Á‚ÄŽ©•ª‚Å”»’f‚·‚ׂµ�B•Ê‚Éfortran‚Æ‚©VBA‚ÉŒÀ‚ç‚ñ‚¯‚Ç‚È�B
VBA‚̓Nƒ\’x‚¢‚Æ•·‚‚ªŽg‚Á‚½‚±‚Æ‚ª‚È‚¢‚̂łȂñ‚Æ‚à‚¾‚ª�A
Free BASIC VS intel Fortran ‚Å‚ÍFORTRAN‚ª‘¬‚¢‚Æ‚¢‚Á‚Ä‚à�‚�X�””{’ö“x�`ƒR�[ƒh‚É‚æ‚Á‚Ä‚ÍBASIC‚ª�Ÿ‚Á‚Ä‚¢‚é�B
http://shootout.alioth.debian.org/gp4sandbox/benchmark.php?test=all&lang=ifc&lang2=fbasic ‚³‚·‚ª‚ÉIntel Fortran‚Ígnu fortran‚âJava, Mono Ruby ‚È‚ñ‚©‚ɂ͊y�X�Ÿ—˜�B
>>414 ‚¾‚¢‚¾‚¢YES�B‚ÆŒ¾‚¢‚½‚¢‚ªƒ‚ƒ“ƒeƒJƒ‹ƒ�–@‚¾‚¯‚Å‚Í�u—��”‚ðŽg‚Á‚½Šm—¦“I‰ð–@�v‚®‚ç‚¢‚µ‚©
‚í‚©‚ç‚ñ‚©‚ç‚È‚ñ‚Æ‚à�Bƒ‰ƒ“ƒ_ƒ€ƒEƒH�[ƒN‚̃Vƒ~ƒ…ƒŒ�[ƒVƒ‡ƒ“‚È‚ñ‚©‚¾‚ÆCPUŽü”g�”‚É
”ä—Ⴕ‚Ä‚‚ê‚邿‚¤‚ȃR�[ƒfƒBƒ“ƒO‚ª‚Å‚«‚é�ê�‡‚ª‘½‚¢�B
416 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/05/22(–Ø) 09:28:10
Ž¿–â‚Å‚·�B salford‚Ìf77‚ðŽg‚Á‚Ä‚¢‚é‚̂ł·‚ªgoto•¶‚̃‹�[ƒv“à‚Å”z—ñ‚𖈉ñ�‰Šú‰»‚µ‚Ä‚½‚ç ƒ‹�[ƒv‚ª“r’†‚Å�I‚í‚Á‚Ä‚µ‚Ü‚¤‚̂ł·‚ª‚Ç‚¤‚µ‚½‚ç—Ç‚¢‚Å‚µ‚傤‚©�H ‰½‚Å‚©•ª‚©‚ç‚È‚¢‚̂ł·‚ª�A�‰Šú‰»‚µ‚È‚¢‚ÆŒJ‚è•Ô‚µ‚Ä‚‚ê‚Ü‚·�B‚ ‚Æ�AˆÈ‰º‚̃vƒ�ƒOƒ‰ƒ€‚Ì•¶ ‚Å�‰Šú‰»‚ªi,j‹¤‚É31‚ÌŒJ‚è•Ô‚µ‚¾‚Æ�‚µ’·‚ŒJ‚è•Ô‚µ‚Ü‚·�B goto•¶‚Ì’†‚ɂ̓KƒEƒX‚Ì�Á‹Ž–@‚̃Tƒuƒ‹�[ƒ`ƒ“‚ª‚ ‚è‚Ü‚·�B 100 continue do i=1,32 do j=1,32 kakunou(i,j)=0 enddo enddo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ’†—ª�iˆÈ‰º‚±‚Ìkakunou(32,32)‚ÉŒvŽZ’l‚ð‘ã“ü‚µ‚Ă܂·�j �@�@�@“r’†‚ŃKƒEƒX‚Ì�Á‹Ž–@‚̃Tƒuƒ‹�[ƒ`ƒ“‚ðŒÄ‚Ñ�o‚µ‚Ă܂· ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ goto 100 ‚·‚¢‚Ü‚¹‚ñ‚ª�A‚ǂȂ½‚©‹³‚¦‚Ä‚‚¾‚³‚¢�B
>>416 �³’¼Ž¿–â‚̈Ӗ¡‚ª‚æ‚•ª‚©‚ç‚ñ�B
ƒRƒ“ƒpƒCƒ‰‚̃oƒO‚łȂ¯‚ê‚Î�A‚ ‚肦‚È‚¢�Ç�ó‚Ȃ̂Å
‚±‚±‚É�‘‚¢‚ĂȂ¢•”•ª‚ª‚¨‚©‚µ‚¢‚Æ‚µ‚©Œ¾‚¢‚悤‚ª–³‚¢�B
‚†77‚͈̔͂Ȃçg77‚Æ‚©‘¼‚̃Rƒ“ƒpƒCƒ‰‚à‚ ‚é‚̂ł»‚ê‚ÅŽŽ‚µ‚Ä‚Ý‚é‚Æ‚©�A
salford‚Ì‚†95‚ÅŽŽ‚µ‚Ä‚Ý‚é‚Æ‚©‚µ‚ÄŒ©‚é‚Ì‚àˆê‚‚̈Ä�B
418 �F
�‰�SŽÒ �F2008/05/23(‹à) 15:40:54
ޏ—炵‚Ü‚·�D Compaq Visual fortran 6.1‚ðŽg—p‚µ‚Ä‚¢‚é‚à‚̂ł·‚ª�C —û�K‚ňȉº‚̃vƒ�ƒOƒ‰ƒ€‚ð�‘‚¢‚½‚̂ł·‚ª�Ccpmpile‚ð‰Ÿ‚µ�C �u�DF�v‚ɕϊ·‚µ‚Ä‚à�u1errors�v‚ª�o‚Ä‚µ‚Ü‚¢‚Ü‚·�D ‚È‚º�o‚é‚Ì‚©‹³‚¦‚Ä‚¢‚½‚¾‚¯‚È‚¢‚Å‚µ‚傤‚©�H �‰•à’†‚Ì�‰•à‚Å�\‚µ–ó‚È‚¢‚Å‚·�D INTEGER WIDTH,HEIGHT,AREA READ(5,*) WIDTH,HEIGHT AREA=WIDTH*HEIGHT WRITE(6,*) WIDTH,HEIGHT,AREA STOP END
>>418 ƒGƒ‰�[‚łȂ¢‚¼‚—
ƒGƒ‰�[ƒ�ƒbƒZ�[ƒW‚ðƒRƒs�[‚µ‚Ă݂¹‚Ä‚‚ê�B
420 �F
�‰�SŽÒ �F2008/05/26(ŒŽ) 12:58:26
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ ‘�‘¬‚Ì•Ô�M‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�D ƒGƒ‰�[‚͈ȉº‚̂悤‚É�o‚Ü‚· --------------------Configuration: Text1 - Win32 Debug-------------------- Compiling Fortran... C:\Documents and Settings\Admin\ƒfƒXƒNƒgƒbƒv\Text1.F f90: Severe: Invalid argument ... file is 'C:\Documents and Settings\Admin\ÃÞ½¸Ä¯Ìß\Text1.F' Error executing df.exe. Text1.obj - 1 error(s), 0 warning(s) Ž©•ª‚àˆÈ‘OOS‚ª2000‚ðŽg—p‚µ‚Ä‚¢‚½‚Æ‚«‚͉½‚̃Gƒ‰�[‚à�o‚È‚©‚Á‚½‚̂ł·‚ª�C XP‚ɕς¦‚Ä‚©‚çƒGƒ‰�[‚ª�o‚邿‚¤‚ɂȂÁ‚½‚悤‚ÉŠ´‚¶‚Ü‚·�D ‚¨Žè�”‚ð‚©‚¯‚Ä�\‚µ–ó‚È‚¢‚Å‚·�D ‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·�D
421 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/05/26(ŒŽ) 17:55:54
‚»‚è‚Ⴈ‚ß‚¥�C�hƒfƒXƒNƒgƒbƒv�h‚ÅŽÀ�s‚µ‚悤‚½‚Á‚Ä–³—�‚Șb‚æ ƒ}ƒCƒhƒLƒ…ƒ�ƒ“ƒg‚Ɉړ®‚³‚¹‚È
>>421 ‚¨‘O‚Ђǂ¢“z‚¾‚È‚—‚—‚—
>>420 �Å�‰ƒb‚©‚ç‚»‚¤Œ¾‚Á‚Ä‚‚ê‚ê‚Î�A‚·‚®‚É“š‚¦‚ç‚ê‚é�B
‚»‚ê‚ÍCVFŽž‘ã‚ÌFAQ‚Å�A“ú–{Œê‚̃pƒX‚âƒtƒ@ƒCƒ‹–¼‚ª“ü‚邯ƒRƒ“ƒpƒCƒ‰‚ª‘Ήž‚µ‚Ä‚¢‚È‚¢
‚̂ŃGƒ‰�[‚ð“f‚�B‚QƒoƒCƒg•¶Žš‚ðŽg‚í‚È‚¢ƒfƒBƒŒƒNƒgƒŠ‚Å‚â‚ê‚΂¨‚‹�B
423 �F
�‰�SŽÒ �F2008/05/27(‰Î) 13:41:47
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ ‰ðŒˆ‚µ‚Ü‚µ‚½�I�I�I ŠÈ’P‚ÈŽ¿–â‚É�e�Ø‚É“š‚¦‚Ä‚¢‚½‚¾‚¢‚Ä‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½�I�I�I
424 �F
�‰�SŽÒ �F2008/05/30(‹à) 15:38:10
�d‚Ë�d‚ËŽ¿–â‚·‚݂܂¹‚ñ�D fortran‚ð‚܂킵‚½Œ‹‰Ê‚ðexcel‚©ƒeƒLƒXƒgƒtƒ@ƒCƒ‹‚É�o—Í‚µ‚½‚¢‚̂ł·‚ª�C ‚ǂ̂悤‚ȃRƒ}ƒ“ƒh‚ð‘łĂ΂悢‚̂łµ‚傤‚©�H ‚Ü‚½�C’·‚¢Œ‹‰Ê(10–œŒ…ˆÈ�ã)‚ðƒtƒ@ƒCƒ‹‚É�o—Í‚µ‚½‚¢‚̂ł·‚ª�C Œä‹³Žö‚¨Šè‚¢‚µ‚Ü‚·�D
–{�l‚͂ł«‚邾‚¯•@‚ɂ‚©‚È‚¢•¶�͂Œš”J‚ÉŽ¿–₵‚Ă邂à‚è‚È‚ñ‚¾‚낤‚È�B
>>424 ‚»‚ê�A�æ�¶‚É•·‚¢‚½•û‚ª‚¢‚¢‚æ�B‚¨‹à•¥‚Á‚Ä‚é‚ñ‚Å‚µ‚å�B
program main integer :: i = 1 open(unit=10,file='hoge.txt',status='unknown') do write(10,'(i4)') i i = i + 1 end do close(10) end program main �u‚²‹³Ž¦�v‚ð�u‚²‹³Žö�v‚Á‚Ä�‘‚¢‚¿‚Ⴄ’j‚Ì�l‚Á‚Ä�B�B�B
>>427 hoge‚ÍUNIXŒn‚̘A’†‚ÌŽg‚¤Œ¾—t‚¾�B
ƒ�ƒCƒ“ƒtƒŒ�[ƒ€‚̌ւè‚ðŽ�‚ÂFortranner‚ÍŽg‚Á‚¿‚á‚¢‚©‚ñ‚—
foo bar baz ‚Í�H
�|“S‚ÌŒ‚’ĉ¤
>>415 ‚±‚ê‚Ý‚é‚ÆIntel C/C++Žg‚Á‚½‚Ù‚¤‚ª‚¢‚¢‚Ý‚½‚¢‚¾‚È
>>431 ’P‚ÉFortran‚Ì�‘‚«•û’m‚ç‚È‚¢‚¾‚¯‚¾‚×�B
‚‚܂èFortran‚ð’m‚Á‚Ä‚é�l‚ª�‚È‚¢‚Æ�B ‹Z�pŽÒ‚ð�W‚߂ɂ‚¢‚Æ�B
>>431 INTEL Fortran ‚Æ C++ ‚̓oƒbƒNƒGƒ“ƒh•”‚Í‹¤’Ê‚¾‚낤‚©‚ç�A‚»‚à‚»‚à‚»‚ê‚قǑ傫‚ȈႢ‚ª
�o‚é‚Í‚¸‚ª–³‚¢�B
Œc‘å‚Ì�¶‹¦‰^‰c‚Ì�‘“X‚É FORTRAN“ü–å�iFORTRAN‚V‚V“ü–å)‚ª•�’ʂɂ¨‚¢‚Ä—L‚Á‚Ä‹Á‚¢‚½
>>435 ‰Y�º“ñŒN�A–¼—_‹³Žö‚¾‚©‚ç“–‘R‚Å‚µ‚å
‚à‚¤f77‚Í‹³‚¦‚È‚¢‚Ù‚¤‚ª‚¢‚¢‚¾‚ë�B�펯“I‚É�l‚¦‚Ä�B
>>437 �u‹`‚Ì‹³‰È�‘‚ł͂Ȃ‚Ä�AŒ¤‹†Žº—p‚¾‚ÆŽv‚¤‚æ�B
Œ¤‹†Žº‚É‚Íf77‚̈âŽY‚ª‚ ‚é‚©‚ç�AŽQ�l�}�‘‚Æ‚µ‚Ä•K�{�B
>>435 ‘åŠw‚Ì�¶‹¦‚Ȃ甄‚Á‚Ä‚é‚Ì‚ª•�’Ê‚¾‚ÆŽv‚Á‚Ä‚½�B
‰´‚ÍŒc‰ž‚¶‚á‚È‚¢‚¯‚Ç‚Ë
�ã‘å‚É‚à’u‚¢‚Ä‚ ‚邿�B ‚Ç‚±‚Å‚à’u‚¢‚Ä‚ ‚邯Žv‚¤�B
‰Y�º“ñ‚ÌFortran66‚Ì•û‚Í‚³‚·‚ª‚É�┳ɂȂÁ‚Ä‚µ‚Ü‚Á‚½‚È�B
>>441 ˆâŽYƒvƒ�ƒOƒ‰ƒ€‚ªFortran66�iƒuƒ�ƒbƒNIF‚È‚µ�j‚Å�‘‚©‚ê‚Ä‚¢‚Ä‹Áœ±‚µ‚½ orz
>>442 ‰´‚Ì‚à‚ç‚Á‚½ˆâŽYƒvƒ�ƒOƒ‰ƒ€‚Í�AŠg’£DO LOOP‚ðŽg‚Á‚Ä‚¢‚½‚¹‚¢‚ŃRƒ“ƒpƒCƒ‰‚ð’ʂ炸
‚·‚²‚�¢‚Á‚½�B
Šg’£DO LOOP‚Æ‚Í�ADO LOOP ‚Ì’†‚©‚çGOTO‚Å”ò‚Ñ�o‚µ‚Ä�A‚È‚ñ‚©‚â‚Á‚½ŒãDO LOOP‚Ì
’†‚É‹A‚邯�A‚Ü‚½‚³‚Á‚«‚ÌLOOP‚Ì‘±‚«‚ª�o—ˆ‚邯‚¢‚¤‚à‚Ì‚Å�A“–Žž‚̉´‚Ì‘z’èŠO‚Ì–ã�â‹@”\‚Å
‰½‚ª‚¨‚«‚Ä‚¢‚é‚Ì‚©‘S‚—�‰ð‚Å‚«‚È‚©‚Á‚½‚—
FORTRAN77‚Å”pŽ~‚ɂȂÁ‚½‚Í‚¸‚È‚ñ‚¾‚ª�A‚½‚¢‚ª‚¢‚̃Rƒ“ƒpƒCƒ‰‚Í–§‚©‚ɑΉž‚µ‚Ä‚¢‚½�B
‚Ü‚Ÿ�A•|‚¢‚Ì‚Å�‘‚«’¼‚µ‚½‚ª‚—
‚»‚¤‚¢‚¤Ž–‚à‚ ‚é‚Ì‚ÅFORTRAN66‚Ì‹³‰È�‘‚à–³‚‚µ‚Ă͂¢‚¯‚È‚¢‚ÆŽv‚¤‚Å‚·‚æ�B
‚»‚¤‚©�A�m�¶‚ÍŒN•t‚¯‚È‚ñ‚¾‚Èw
�¡�A–{‰®‚Å”ƒ‚¦‚é”͈͂Å�A‚¨‚·‚·‚ß‚ÌFortran‚Ì‹³‰È�‘‚͉½‚Å‚·‚©�H �â”Å‚Í�¢‚è‚Ü‚·�BƒAƒ}ƒ]ƒ“‚̌Ö{‚Å”ƒ‚¦‚é‚Ȃ炢‚¢‚Å‚·‚ª�B
Michael Metcalf, John Ker Reid, "Fortran 90/95 Explained"
ƒeƒ“ƒvƒŒ‚ɒljÁ‚«‚Ú‚ñ
450 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/06/29(“ú) 02:12:38
>>434 ƒoƒbƒNƒGƒ“ƒh‹¤’Ê‚Á‚Ä‚¾‚¯‚Å‘¬“x‚ª“¯‚¶‚ɂȂé‚È‚ñ‚Ä‚ ‚肦‚È‚¢�B
Žš‹å‰ð�Í‚â�Å“K‰»‚ÍŒ¾ŒêŽd—l‚ƃRƒ“ƒpƒCƒ‰ŽÀ‘•‚É‹‚ˆË‘¶‚·‚é�B
Fortran‚̃Vƒ“ƒvƒ‹‚³‚Í‚»‚Ì“_‹‚Ý‚¾‚Á‚½‚¯‚Ç�A
�ŋ߂ÌFortran‚Í‚»‚Ì‘¼Œ¾Œê‚ɂǂñ‚Ç‚ñ‹ß‚¢‚Ä‚¢‚é‚©‚ç‚Ë‚¦�B
452 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/07/03(–Ø) 00:26:47
>>450 ƒxƒ“ƒ`ƒ}�[ƒNƒTƒCƒg‚̂悤‚È�A”Ä—pƒAƒ‹ƒSƒŠƒYƒ€‚È‚çfortran‚Í‘¬‚‚È‚‚Ä•sŽv‹c‚Í–³‚¢‚Å‚·‚æ�B
C/C++‚Æfortran‚̃†�[ƒU�[�”�l‚¦‚½‚ç�Aintel‚¾‚Á‚Ăǂ¿‚ç‚ÉƒŠƒ\�[ƒXŠ„‚‚©‚ÍŽ©–¾‚Å‚µ‚傤�B
ƒiƒ“ƒo�[ƒNƒ‰ƒ“ƒ`ƒ“ƒO—p“r‚È‚çfortran‚Í‘½•ª‚Ü‚¾‘¬‚¢‚ÆŽv‚¢‚Ü‚·‚¯‚Ç�B
453 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/09/06(“y) 00:53:21
Intel Fortran ‚ÌŽŸŠúƒo�[ƒWƒ‡ƒ“ƒx�[ƒ^ƒeƒXƒg‚ªŽn‚Ü‚Á‚Ä‚¢‚é�B V.11‚ª—ˆ”NˆêŒŽ‚܂ł̊úŒÀ•t‚«‚¾‚ª�A–³�ðŒ�‚É”z•z‚³‚ê‚Ä‚¢‚é�B Windows”Å‚ÍVisualStudio�iFortran �ê—p�j‚‚«‚Å�B ‹C‚ɂȂé�l‚̓`ƒFƒLƒ‰�I‚—
‚à‚Æ‚à‚ÆIntel Fortran‚ÆC++‚Í”ñ�¤—p–Ú“I‚Ȃ疳—¿‚ÅŽg‚¦‚é‚ñ‚¶‚á‚È‚¢�H
>>454 –³ŠúŒÀ‚ÍLinux‚¾‚¯‚¶‚á‚È‚¢‚©�H
Linux”Å‚¾‚¯‚¾‚È Linux”łȂçIntel Fortran‚ÆIntel C++‚ª–³ŠúŒÀ‚Å–³�ž‚ÅŽg‚¦‚é
”ñ�¤—p–Ú“IŒÀ’è‚̘b‚¾‚¯‚Ç‚Ë
1•bŠÔƒvƒ�ƒZƒX‚ð�Q‚©‚¹‚é‚Ì‚Ísleep‚Æ‚¢‚¤ŠÖ�”‚ª‚ ‚邯‚Ç�C 10ms‚Æ‚©100ms‚Æ‚©�Cƒ~ƒŠƒZƒJƒ“ƒhƒI�[ƒ_�[‚Å�Q‚©‚¹‚邿‚¤‚É‚·‚é‚É‚Í ‚Ç‚¤‚·‚ê‚΂¢‚¢‚Å‚·‚©�H IntelƒRƒ“ƒpƒCƒ‰‚ðŽg‚Á‚Ä‚¢‚é‚Ì‚Å�CIntelƒRƒ“ƒpƒCƒ‰ˆË‘¶‚ÌŠÖ�”‚Å‚à ‚¢‚¢‚Å‚·�D �¡‚Í�C–³‘ʂȌvŽZƒ‹�[ƒv‚ð�ì‚Á‚đ҂½‚¹‚Ä‚¢‚é‚̂ł·‚ª�C ‚»‚ꂾ‚ÆCPU•‰‰×‚ɂȂé‚Ì‚Å�C‚Å‚«‚ê‚ÎCPU•‰‰×‚ɂȂç‚È‚¢‚Å 10ms‚Æ‚©100ms‚Æ‚©‘Ò‚½‚¹‚ç‚ê‚邯Šð‚µ‚¢‚Å‚·�D
>>458 Windows‚È‚ç�AUSE IFWIN ‚µ‚Ä Win32 ‚Ì API ‚Ì Sleep ŠÖ�”‚Å‚â‚ꂽ‹C‚ª‚·‚é�B
Linux ‚Í’m‚ç‚È‚¢‚ª�A“¯‚¶‚悤‚É‚â‚ê‚邯Žv‚¤�B
nanosleep(2)
>>458 ifortˆË‘¶‚È‚çWin/Linux‹¤‚É SLEEPQQ ‚Å
USE IFPORT
CALL SLEEPQQ(3000)
‚ƃ~ƒŠ•b‚ÅŽw’è‚Å‚«‚é�B
’A‚µ‚ ‚‚܂łàŽw’è‚Å‚«‚邾‚¯‚Å‚ ‚Á‚ÄŽÀ�Û‚Ì‹xŽ~ŽžŠÔ‚ðƒ~ƒŠ•b’PˆÊ‚Ì�¸“x‚Å
�§Œä‚Å‚«‚é‚©‚Ç‚¤‚©‚͕ʂ¾‚ª�B
462 �F
458 �F2008/10/07(‰Î) 10:32:59
>>459-461 ŠF‚³‚ñ�C‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�D
461‚³‚ñ‚Ì‚â‚è•û‚łł«‚Ü‚µ‚½�D
‚»‚ê‚Ù‚Ç�³Šm�«‚ð‹�‚߂Ă¢‚È‚¢‚Ì‚Å�C‚±‚Ì‚â‚è•û‚Å�\•ª‚Å‚·�D
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½�D
463 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/10/24(‹à) 15:08:54
‚¨‚Ü‚¢‚ç�ACUDA‚ÅFORTRAN‚ªƒTƒ|‚³‚ꂽ‚ç‚Ç‚¤‚·‚é�H�À‚�H
464 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/10/24(‹à) 17:01:26
ƒLƒ…ƒ_‚Á‚ĂȂÉ�H
465 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/10/24(‹à) 20:17:32
”{�¸“x‚ɑΉž‚µ‚½‚Ì‚©
CUDA‚æ‚èƒCƒ“ƒeƒ‹‚ÌLarrabee‚ª—ˆ‚»‚¤‚¾‚È�B ƒxƒNƒgƒ‹’·‚ð’·‚‚·‚é•ûŒü‚¾‚©‚ç‚W‚O”N‘ã‚̃vƒ�ƒOƒ‰ƒ~ƒ“ƒOƒ‚ƒfƒ‹‚ª•œŠˆ‚·‚邵�A Intel‚̃Rƒ“ƒpƒCƒ‰‚Í•K‚¸ƒTƒ|�[ƒg‚·‚邾‚낤‚µ�B
468 �F
467 �F2008/11/11(‰Î) 14:06:01
ƒ‹ƒ“ƒQ�EƒNƒbƒ^�EƒMƒ‹–@‚ð—p‚¢‚ĘA—§‚Ì•û’öŽ®‚ð‰ð‚«‚½‚¢‚̂ł·‚ª�C ŽžŠÔ��‚Ý‚ð�¬‚³‚‚µ‚Ä‚à”ŽU‚µ‚Ä‚µ‚Ü‚¤‚̂ł·‚ª�C‰½‚©ƒTƒuƒ‹�[ƒ`ƒ““à‚ÉŒ‡Š×‚ª‚ ‚é‚̂łµ‚傤‚©�H QA0=QA CKA0=H*FNCT1(X0,YA0,YB0,W0,W1,A,A0,A1,B,B1,H0,L,PI) RA1=(CKA0-2.0*QA0)/2.0 YA1=YA0+RA1 QA1=QA0+RA1*3.0-CKA0/2.0 XX=X0+H/2.0 CKA1=H*FNCT1(XX,YA1,YB1,W0,W1,A,A0,A1,B,B1,H0,L,PI) RA2=(1.0-1.0/sqrt(2.0))*(CKA1-QA1) YA2=YA1+RA2 QA2=QA1+RA2*3.0-(1.0-1.0/sqrt(2.0))*CKA1 CKA2=H*FNCT1(XX,YA2,YB2,W0,W1,A,A0,A1,B,B1,H0,L,PI) RA3=(1.0+1.0/sqrt(2.0))*(CKA2-QA2) YA3=YA2+RA3 QA3=QA2+3.0*RA3-(1.0+1.0/sqrt(2.0))*CKA2 XX=X0+H CKA3=H*FNCT1(XX,YA3,YB3,W0,W1,A,A0,A1,B,B1,H0,L,PI) RA4=(CKA3-2.0*QA3)/6.0 YA=YA3+RA4 X=X0+H QA=QA3+3.0*RA4-CKA3/2.0 return end function FNCT1(X0,YA0,YB0,W0,W1,A,A0,A1,B,B1,H0,L,PI) FNCT1=-2.0*W1*H0*YA0-(W1**2.0+(W0**2.0)*(A/A0+(B**2.0)/(2.0*L*A0)-(L*A1*B)/(2.0*A0)))*YB0+((W0**2.0)*(3.0*L*A1)*(YB0**2.0))/(PI*A0) * -((W0**2.0)*(PI**2.0)*(YB0**3.0))/(4.0*L*A0)+(W0**2.0)*((-2.0*B1)/(PI*(W0**2.0))+(4.0*(L**2.0)*A1*A)/((PI**3.0)*A0)+(2.0*L*A1*(A**2.0))/((PI**3.0)*A0) * -(2.0*(L**3.0)*(A1**2.0)*B)/((PI**3.0)*A0)) return end ’·�X‚Æ�\‚µ–ó‚È‚¢‚Å‚·�D‚¨Šè‚¢‚µ‚Ü‚·
>>468 ’·‚·‚¬‚Ä�l‚¦‚é‹C‚ɂȂç‚ñ�B
ŠÖ�”‚̃pƒ‰ƒ��[ƒ^‚à‘½‚·‚¬‚Ä�A�ðŒ�‚à•ª‚©‚ç‚ñ�B
‚ ‚é“Á’è‚̃pƒ‰ƒ��[ƒ^‚Å”ŽU‚·‚é‚Ì‚©�Hƒ‹ƒ“ƒQ‹ò‚Á‚½ƒMƒ‹–@‚¾‚¯‚ňÙ�킪�o‚é‚Ì‚©�H
‚Ç‚¤‚¢‚¤�󋵂Ȃ̂©‚à•ª‚©‚ç‚ñ�B
“š‚¦‚æ‚¤‚à�l‚¦‚悤‚à–³‚¢�B
‚à‚¤�‚µ�e�Ø�S‚ðŽ�‚Á‚Ä•·‚¯‚—
470 �F
468 �F2008/11/12(�…) 03:21:51
�„�„469 ‚³‚ñ
‚·‚݂܂¹‚ñ�D‚Ç‚¤�‘‚¢‚½‚ç‚æ‚“`‚í‚é‚Ì‚©•ª‚©‚炸�C�‘‚¢‚Ä‚µ‚Ü‚¢‚Ü‚µ‚½�D
”½�È‚µ‚Ä‚¨‚è‚Ü‚·�D
•û’öŽ®‚Í�CT"(t)+T'(t)+ƒÖT(t)+B1(t)T(t)+B2(t)T^2(t)+B3(t)T^3(t)=B4(t)
‚̂悤‚È•û’öŽ®‚Å�C
B1�`B4‚Ì’†‚É‚à•Ï�”‚ª‘¶�Ý‚µ‚Ät‚ª•ω»‚µ‚½�ۂɂ͕Ï�”‚à•ω»‚³‚¹‚½‚¢‚̂ł·�D
ƒpƒ‰ƒ��[ƒ^‚ð•Ï‚¦‚½�ۂɂ͈Ù�킪Œ»‚ê‚È‚©‚Á‚½‚肵‚Ü‚·�D
‚í‚©‚è‚É‚‚‚Ä�\‚µ–ó‚ ‚è‚Ü‚¹‚ñ�D‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·
ƒuƒbƒNƒIƒt‚Å”|•—ŠÙ‚ÌFORTRAN77“ü–傪100‰~‚¾‚Á‚½ ‚³‚·‚ªƒuƒbƒNƒIƒt–{‚̉¿’l‚ª•ª‚©‚Á‚ĂȂ¢
>>471 ŒÃ–{‰®‚ł̑Š�ê‚Í”ü–{‚Å‚R‚T‚O‰~‚‚ç‚¢‚¾‚Á‚½‚ÆŽv‚¤�B
˜R‚ê‚Í‚U‚U”Å‚ð‚P‚T‚O‰~‚Å”ƒ‚Á‚½‚悤‚È‹C‚ª‚·‚é‚—
>>470 >T"(t)+T'(t)+ƒÖT(t)+B1(t)T(t)+B2(t)T^2(t)+B3(t)T^3(t)=B4(t)
‚æ‚•ª‚©‚ç‚ñ‚ª�A‘æŽO�€‚̓Ö^2‚¶‚á–³‚¢‚©�H
‚»‚ê‚ÅB‚˜(‚”�j‚ª”÷�¬—Ê‚¾‚Æ‚·‚ê‚Î�A‚È‚ñ‚ƂȂˆÓ�}‚ª•ª‚©‚ç‚È‚‚à–³‚¢�B
Œ¸�Š�U“®‚Ì’P�U‚èŽq‚É”ñ�üŒ`�€‚Æ‹�§�U“®�€‚ª‰Á‚í‚Á‚½‚à‚̂Ȃé‚Ì‚Å�A
‚È‚ñ‚ƂȂ“®‚«‚̃Cƒ��[ƒW‚ª‚‚©‚ß‚é‚̂łÍ�B
ƒpƒ‰ƒ��[ƒ^‚É‚æ‚Á‚Ä‚Í�A“–‘R”ŽU‚à‘å‚¢‚É‚ ‚肤‚邾‚낤�B
‚»‚à‚»‚à�³‚µ‚ŒvŽZ‚Å‚«‚Ä‚¢‚é‚Ì‚©Ž©�M‚ª–³‚¢‚̂Ȃç�ABx(‚”�j‚ð‘S•”‚O‚É’u‚¯‚Î�A
‚Ö‚½‚ê‚Ä�s‚Œ¸�Š�U“®‚ɂȂé‚Ì‚Å�A‚»‚¤‚¢‚¤‰ð�͉ð‚Ì‚ ‚邯‚±‚ë‚©‚çƒ`ƒFƒbƒN‚µ‚Ă䂯‚Î
Ž©•ª‚̃vƒ�ƒOƒ‰ƒ€‚Ì‹““®‚ÉŽ©�M‚ª‚à‚Ä‚é‚̂łÍ�H
�Ú‚µ‚’m‚肽‚¯‚ê‚΃‰ƒ“ƒ_ƒE=ƒŠƒtƒVƒbƒc‚Ì—ÍŠw‚Ì”ñ�üŒ`�U“®‚É‚¨‚¯‚鋤–‚Ì�ß‚ð“ǂ߂—‚—‚—‚—‚—
>>471 ‹³‰È�‘‚ÅŽg‚Á‚Ä‚½‚è‚·‚é‚©‚ç�AŒÃ–{‚Ì—¬’ʗʂ͌‹�\‘½‚¢‹C‚ª‚·‚é�B
ƒJƒo�[‚Ì�Ä‚¯‚Í‚ ‚邯‚Ç‚¨‚»‚ç‚�V•i ‰ü’ù”Å‚¶‚á‚È‚‚Ä�‰”ł̕û‚¾‚Á‚½‚̂ŕԕi�݌ɂ̕ú�o‚©‚µ‚ç ”z—ñ‚̂Ƃ±‚â‚Á‚Ă邯‚Ç�A”z—ñ‚Ö‚Ì“ü—͂Ƃ©‚ ‚Á‚Ä‚·‚²‚¢‚Ë �錾‚È‚µ‚Å“‚“Ë‚É�o‚Ä‚‚郋�[ƒvƒJƒEƒ“ƒ^‚É‚à‚Ñ‚Á‚‚è‚·‚邪
>>474 ‚¦‚¥�`�H
ˆÃ–Ù‚ÉŒ^�錾‚³‚ê‚Ă邺�I
�ŋ߂̃XƒNƒŠƒvƒgŒ¾Œê‚Å�A‚±‚ê‚ɋ߂¢Œ`‚É�æ‘c‚ª‚¦‚肵‚Ä‚¢‚é‚Ì‚ªÜÛ½
476 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/11/13(–Ø) 14:07:56
implicit none ‚µ‚Ä‚àŒ‹‹Ç‚͈Öق̂â‚‚ɑ¥‚邱‚Ƃ͑½‚¢‚æ‚Ë�B character,logical‚Í–³‚¢‚̂Šc ‚Æ l ‚ÅŽn‚߂邿‚¤‚É‚µ‚½‚è�B ˆÃ–Ù‚ÌŒ^�錾‚Í‚ ‚ê‚Í‚ ‚ê‚Å—Ç‚¢‚à‚Ì‚¾�B
‚¢‚â�AC‚ª•¡‘f�”‚ÅZ‚ª”{�¸“x•¡‘f�”‚¾‚ë
>>476 l‚Í‚P‚ÆŒ©ŠÔˆá‚¢‚â‚·‚¢‚©‚ç‚ ‚Ü‚èŽg‚í‚È‚¢‚ª�A‹M�d‚È�®�”Œ^‚Ȃ̂łà‚Á‚½‚¢‚È‚¢�B
>>479 ƒ{�[ƒ‰ƒ“ƒh‹L–@�H
�ÌPASCAL‚ÉŽU�X‚¢‚¶‚ß‚ç‚ꂽ‚©‚猙‚—
>>477 c ‚ð•¡‘f�”‚É�U‚邯‚«‚É‚Í character Œ^‚Í s ‚ÅŽn‚߂邿‚¤‚É‚µ‚Ä‚é‚È�B
>>478 l ‚Í�擪‚Å‚¾‚¯Žg‚¤‚悤‚É‚µ‚Ä‚é�B �擪‚ª�”Žš‚Ì•Ï�”‚͂͂¶‚©‚ê‚é‚©‚ç
�¬“¯‚µ‚È‚‚Ä‚·‚Þ�B
“Œ‹ž‚Å�æ�TŠJ‚©‚ꂽ‚h‚r‚n‚Ì‚e‚�‚’‚”‚’‚�‚Ž•”‰ï‚Å‚b‚�‚`‚’‚’‚�‚™‚e‚�‚’‚”‚’‚�‚Ž‚ÉŠÖ‚·‚鈵‚¢‚Å ‰½‚©�i“W‚Í‚ ‚Á‚½‚̂łµ‚傤‚©�H ‚‚܂è‚b‚`‚e‚ð”r�œ‚Å‚«‚½‚̂łµ‚傤‚©�H
484 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/12/06(“y) 18:55:27
The shapes of the array expressions do not conform. ‚Á‚Ä�o‚Ä‚‚é‚̂ł·‚ª�A‚Ç‚¤‚¢‚¤‚±‚Ƃł·‚©�H
485 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2008/12/11(–Ø) 16:23:19
”z—ñŠÔˆá‚Á‚ĂȂ¢‚©�H
C Pad for Salford FTN77 ‚ÅCPU TIME ‚ð�o—͂ł«‚邿‚¤‚É‚·‚é•û–@‚Í‚ ‚è‚Ü‚·‚©�H
>>486 HIGH_RES_CLOCK@
Žg‚¢•û‚Í Library Reference ‚É�Ú‚Á‚Ä‚é�B
>>487 ‹T‚Å‚·‚ª
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
�o—ˆ‚Ü‚µ‚½�I
489 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/01/24(“y) 19:01:34
‚¤‚¿‚ÌŒ¤‹†Žº‚Ì�l‚½‚¿‚ªFortran‚Ńvƒ�ƒOƒ‰ƒ~ƒ“ƒO‚µ‚Ä‚¢‚邯‚ê‚Ç ‚¨‘O‚çgotoŽg‚¢‚·‚¬�E�E�E ‚Æ‚¢‚¤‚©Ž©•ª‚Ì’ñ�o‚µ‚½ƒvƒ�ƒOƒ‰ƒ€‚ªgoto•¶‚É�‘‚«Š·‚¦‚ç‚ê‚Ä‚¢‚é�E�E�E subroutine�Afunction‚ðŽg‚¢‚·‚¬‚é‚̂̓XƒpƒRƒ“ŒvŽZ‚ÉŒü‚©‚È‚¢‚ÆŒ¾‚Á‚Ä‚¢‚½‚¯‚ê‚Ç •׋‚µ‚Ä‚«‚½�\‘¢‰»ƒvƒ�ƒOƒ‰ƒ~ƒ“ƒO‚ÌŽè–@Ž©‘Ì‚ªfortranŒü‚«‚łȂ¢‚Æ‚¢‚¤‚±‚ƂȂÌ�H
>>490 ƒCƒ“ƒ‰ƒCƒ“‚³‚ê‚邿‚¤‚É‚µ‚ë‚—
ƒRƒ“ƒpƒCƒ‰‚ªˆÀ�S‚µ‚ăOƒ��[ƒoƒ‹�Å“K‰»‚Å‚«‚邿‚¤‚É�A•t‰Á“I‚È�î•ñ‚ð—^‚¦‚Ä‚â‚ê�B
ƒOƒ��[ƒoƒ‹‚È�\‘¢‚ª�lŠÔ‚ªŒ©‚Ä•ª‚©‚è‚â‚·‚¢‚È‚çƒRƒ“ƒpƒCƒ‰‚àŒ©‚Ä•ª‚©‚è‚â‚·‚¢�B
‚h‚m‚s‚d‚m‚sŽw’è‚͂‚¯‚é�B
‚e‚t‚m‚b‚s‚h‚n‚m‚Í�A‚o‚t‚q‚d�@�i‰Â”\‚È‚ç‚d‚k‚d‚l‚d‚m‚s‚`‚k�j‚É‚·‚é
‚Æ‚©‚·‚ê‚ÎDO..LOOP“à‚ÅŠÖ�”ŒÄ‚Ñ�o‚µ‚Æ‚©‚µ‚Ä‚à•À—ñ‰»‚âƒxƒNƒgƒ‹‰»‚µ‚Ä‚‚ê‚é‚Í‚¸�B
ƒRƒ“ƒpƒCƒ‰‚É‚æ‚邪�B
ŽÀ�ۂɃxƒ“ƒ`ƒ}�[ƒN‚ðŽæ‚Á‚Ä�AŽ©•ª‚ª�Ÿ—˜‚·‚ê‚Î�AŒã‚Í•¶‹å‚¢‚í‚ê‚È‚¢‚ׂ—
492 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/02/12(–Ø) 12:52:18
>>491 intent‘®�«‚‚¯‚邯”÷–‚É‘¬‚‚È‚é‚æ‚Ë�B
“Á‚Éloop“à‚Å•p”ɂɌĂ΂ê‚é‚â‚‚¾‚Æ‘S‘Ì‚Å5‚©‚ç20%‚‚ç‚¢ˆá‚Á‚Ä‚‚é�B
�ŋ߂̃Rƒ“ƒpƒCƒ‰‚ÍF77‚Å�‘‚¢‚ĂĂàintent‚ð‚í‚©‚Á‚Ä‚‚ê‚é‚©‚çŠy‚¾�B
‚Å�E�E�E�Epure,elemental‚ÌŽ–‚͂悂킩‚ç‚È‚¢‚Ì‚Å�Ú‚µ‚�I
>>492 PURE‚àELEMENTAL‚àFortran95‚Å“±“ü‚³‚ꂽƒL�[ƒ��[ƒh‚Å�AŠÖ�”‚âƒTƒuƒ‹�[ƒ`ƒ“‚Ì
•›ƒvƒ�ƒOƒ‰ƒ€‚Ì�«Ž¿‚ðƒRƒ“ƒpƒCƒ‰‚É‹³‚¦‚é�C�üŒê�B
PURE FUNCTION unko(x) ‚Ȃǂ̂悤‚É�錾‚Ì“ª‚ɂ‚¯‚ÄŽg‚¤�B
PURE‚Æ‚¢‚¤‚Ì‚Í�A‘åŽG”c‚ɂ͕›�ì—p‚ª‚È‚¢‚±‚Æ�B‚»‚ê‚䂦�A•À—ñ‚É“®�삳‚¹‚Ä‚à
’l‚ª•Ï‚í‚ç‚È‚¢‚Ì‚Å�AƒRƒ“ƒpƒCƒ‰‚Í•À—ñ‰»‚È‚Ç�Å“K‰»‚ð‚â‚ê‚é�B
�iPURE‚ð–ž‚½‚³‚˂΂Ȃç‚È‚¢�ðŒ�‚Í‚¢‚‚‚©‚ ‚é‚Ì‚Å�A‚‹‚—‚“‚‹‚̓}ƒjƒ…ƒAƒ‹Œ©‚Ä‚‚ê�j
ELEMENTAL‚ÍPURE‚Ì’†‚Å‚³‚ç‚É‚¢‚¢�«Ž¿‚ðŽ�‚Á‚½‚à‚Ì�B
–{—ˆ‚Í‚P•Ï�”‚Å’è‹`‚µ‚Ä‚ ‚Á‚Ä‚à�A”z—ñ‚ðˆø�”‚ɂƂÁ‚Ä�A”z—ñ‚ð•Ô‚·‚悤‚ÉŽg‚Á‚Ä‚à‚¢‚¢‚à‚Ì�B
‚½‚Æ‚¦‚Î�A
REAL :: a(10), b(10)
b = SIN(a)
‚±‚¤‚¢‚¤Žg‚¢•û‚ª‘g‚Ý�ž‚ÝŠÖ�”‚Å‚Í�o—ˆ‚é‚킯‚¾‚ª�AŽ©�ì‚ÌŠÖ�”‚Å‚à‚±‚¤‚â‚Á‚ÄŽg‚Á‚Ä‚à
‚¢‚¢�ê�‡‚ÉELEMENTAL�@�i—v‘f–ˆ‚̈Ӗ¡�j�@‚ð‚‚¯‚é�B�@
‚±‚ê‚àƒRƒ“ƒpƒCƒ‰‚ª—˜Œû‚È‚ç�A�Å“K‰»‚ð‚©‚¯‚Ä‚‚ê‚é‚Í‚¸�B
•�’Ê�ADO..LOOP“à‚ÉŠÖ�”‚âƒTƒuƒ‹�[ƒ`ƒ“‚̌ĂÑ�o‚µ‚ª‚ ‚邯�AŒÄ‚Ñ�o‚µ�æ‚ʼn½‚ª
‚ ‚é‚©‚í‚©‚ç‚È‚¢‚Ì‚Å�A�Å“K‰»‚ª—}Ž~‚³‚ê‚邪�APURE‚âELEMENTAL‚ª‚ ‚ê‚Î�A
ˆÀ�S‚µ‚ăRƒ“ƒpƒCƒ‰‚ª�Å“K‰»‚Å‚«‚é�B�iŒ´—�“I‚ɂ͂—�j
>>493 ‚ ‚肪‚Æ‚¤�Bpure ‘®�«‚ÍŽg‚¢ˆÕ‚»‚¤‚¾�B
495 �F
494 �F2009/02/13(‹à) 11:01:13
loop“à‚Å•p”ɂɌĂ΂ê‚é‚SŒÂ‚‚‚ç‚¢‚Ì function ‚â subroutine ‚É pure ‘®�«‚‚¯‚½‚¾‚¯‚Å •À—ñ(OpenMP)‚ÌŽž‚É‚¿‚å‚Ñ‚Á‚Æ‘¬‚‚È‚Á‚½�B‚í�[‚¢�B ‚à‚Æ‚à‚Ædo-loop‚ňê‚‚¸‚Â�ˆ—�‚µ‚Ä‚¢‚é‚̂Šelemental ‚ðŽg‚¦‚é�󋵂Í�‚È‚¢‚¯‚Ç�A ‚à‚¤�‚µ—�‰ð‚µ‚Ä‚©‚çŽg‚Á‚Ă݂悤�B inline‚ð�‚µ�[‚‚·‚邿‚¤‚ɂȂÁ‚½‚©‚ç‚©ƒRƒ“ƒpƒCƒ‹ŽžŠÔ‚ª‚·‚±‚µ’·‚‚È‚Á‚½‚¯‚ǂ܂ ‹C‚É‚µ‚È‚¢�B
>>491 ‚È‚é‚Ù‚Ç�A‚½‚߂ɂȂÁ‚½‚í�BƒTƒ“ƒLƒ…�[�BPURE‚ð•t‚¯‚邾‚¯‚ÅŠÈ’P‚É‘¬‚‚È‚Á‚½‚í�B
’S“–‚̂͊î–{“I‚Ɍ¢�lŠÔ‚¾‚©‚ç�A‚ ‚Ü‚èƒRƒ“ƒpƒCƒ‰”C‚¹‚É‚·‚é‚ȂƂ©Œ¾‚¤‚ñ‚æ‚È�c�B
Fortran90‚Á‚Û‚¢77Œ`Ž®‚Ì•¶‚à�A�uŠ®�¬‚µ‚½Œã‚Å’¼‚µ‚Ü‚·�v‚Æ‚©Œ¾‚Á‚Ä‚»‚̂܂܂¾‚Á‚½‚è�B
implicit real‚àcommon•¶‚à‚Ç‚¤‚É‚©‚µ‚½‚¢‚¯‚ê‚Ç�A‚«‚Á‚Æ•¶‹åŒ¾‚¤‚ñ‚¾‚낤‚È�B
>>496 PURE ‘®�«‚Í‚à‚Æ‚à‚Æ HPF ‚Å“±“ü‚³‚ꂽ‚à‚̂Ȃ̂Å�A‚»‚ê‚È‚è‚̃��[ƒJ‚È‚çƒRƒ“ƒpƒCƒ‰
‚É‚à�Å“K‰»‚̃mƒEƒnƒE‚Ì’~�Ï‚ª‚ ‚é‚Í‚¸�H
ELEMENTAL�@‚àˆê•Ï�”—p‚ɃTƒuƒ‹�[ƒ`ƒ“�‘‚¢‚Ä�A”z—ñ‚ð“n‚¹‚΂¢‚¢‚Ì‚Å�ADO..LOOP‚ð
‚ ‚©‚炳‚Ü‚É�‘‚©‚¸‚É‚·‚Þ�BŽž�Xƒ\�[ƒX‚ª‚·‚²‚‚·‚Á‚«‚肵‚ÄŠy‚ɂȂ邱‚Æ‚ª‚ ‚é�B
‚Å‚à�A‚‚¢‚Å‚¾‚©‚çŒÃ‚¢�lŠÔ‚ð—iŒì‚µ‚Ă݂邩‚—
FORTRAN77 ‚É‚à�A‚Þ‚«‚¾‚µ‚Ì—Ç‚³‚ª‚ ‚é‚—
Fortran90 ˆÈ�~‚¾‚ƃ\�[ƒX�ã‚ÍŠÈŒ‰‚ɂȂÁ‚Ä‚à�A‰e‚Å“®“I‚Ƀeƒ“ƒ|ƒ‰ƒŠ”z—ñ‚Æ‚©Žæ‚é‚Ì‚Å
‹CŽ�‚¿ˆ«‚¢‚Æ‚±‚ë‚à‚ ‚é�B’·ŽžŠÔ•À‚ñ‚¾JOB ‚ªStackOverflow ‚Æ‚©‚ÅŽ~‚Ü‚Á‚Ä‚¢‚½‚è
‚·‚邯ŽE‚µ‚Ä‚â‚肽‚‚È‚é�BŒÃ‚¢Žž‘ã‚Ì�l‚Í‚»‚̕ӂªŒ™‚Ȃ̂©‚à‚µ‚ê‚È‚¢‚—
COMMON ‚àƒOƒ��[ƒoƒ‹•Ï�”‚¾‚ÆŽv‚¤‚Ƃނ©‚‚‚¾‚낤‚ª�A Ž©•ª‚ŃKƒx�[ƒWƒRƒŒƒNƒVƒ‡ƒ“
‚µ‚È‚ª‚ç�A•Ï�”—̈æ‚ðŽ©—RŽ©�Ý‚É�Ä—˜—p‚µ‚Ä‘€‚Á‚Ä‚¢‚邯Žv‚¤‚Æ�AŒ‹�\‹CŽ�‚¿—Ç‚¢�B
ƒ�ƒ‚ƒŠ�[‚ª‹M�d‚¾‚Á‚½Žž‘ã‚É‚Í�A—˜—p‰¿’l‚ª�‚‚©‚Á‚½�B
IMPLICIT ‚ÉŠÖ‚µ‚Ä‚¢‚¦‚Î IMPLICIT NONE ‚ð‚‚¯‚½�ã‚Å�A“ª•¶Žš‚ðŽç‚ê‚΂¢‚¢�B
C ‚ƈá‚Á‚ă��[ƒJƒ‹ƒXƒR�[ƒv‚̎̂ĕÏ�”‚ªŽg‚¦‚È‚¢‚©‚ç�A“ª•¶Žš‚ðŽç‚ç‚È‚¢‚Æ
‚¢‚¿‚¢‚¿�錾•”‚É–ß‚Á‚ÄŒ^‚ðŠm‚©‚߂Ȃ¢‚Æ‚¢‚¯‚È‚¢‚̂ł߂ñ‚Ç‚¢�B
Fortran ‚Å‚Í�”’l‚Ì�¸“x‚ª’v–½“I‚É�d—v‚Å�A”{�¸“xŒvŽZ’†‚É‚PŒÂ’P�¸“x‚ª�¬‚¶‚邾‚¯‚Å‚à
‚·‚ׂĂ̌‹‰Ê‚ª’P�¸“x‚̃Sƒ~‚ɂȂé‚Ì‚¾‚©‚ç�A�”’l�¸“x‚É–³“Ú’…‚Ì‘¼‚Ì‚¨‚µ‚á‚ꌾŒê‚Ì
˜A’†‚ÌŒ¾�à‚ð�M‚¶‚邯’É‚¢–ڂɉï‚킳‚ê‚é‚—
498 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/02/18(�…) 13:19:26
pure‘®�«•t‚¯‚½ƒTƒuƒ‹�[ƒ`ƒ““à‚Å pure‘®�«•t‚¯‚½‘¼‚̃Tƒuƒ‹�[ƒ`ƒ“ŒÄ‚ÔŽž‚É‚Í interface‚ňø�”•”•ª‚Ì�«Ž¿‚ð‹³‚¦‚Ä’u‚©‚È‚¢‚Æ‚¢‚¯‚È‚¢‚ñ‚¾‚Ë�B f77�‘Ž®‚Å�‘‚¢‚Ä‚é‚Ì‚É interface intent ‚ª Œ»‚ê‚é‚̂Ń€ƒYƒ€ƒY‚·‚邯‚ǃ€ƒYƒ€ƒY‚·‚邾‚¯‚Ȃ̂ł»‚̂܂Ü�B
OpenMP‚ðŽŽ‚µ‚Ă݂Ăé‚ñ‚¾‚¯‚Ç�A‚¢‚Ü‚¢‚¿‚¤‚Ü‚‚¢‚©‚È‚¢‚ñ‚¾‚ª�E�E�E ifort -QParallel ‚ŃRƒ“ƒpƒCƒ‹�{ŽÀ�s‚·‚邯‚¤‚Ü‚‚¢‚‚ñ‚¾‚¯‚Ç�A “¯‚¶ƒ\�[ƒX‚ðifort -Qopenmp ‚ŃRƒ“ƒpƒCƒ‹�{ŽÀ�s‚·‚邯 Program Exception - stack overflow ‚Á‚Ä‚¢‚¤ƒGƒ‰�[‚ª�o‚é ƒ\�[ƒX’†‚ÉOpenMP�\•¶‚Í use omp_lib�@‚¾‚¯ ‚±‚ê‚Á‚Ăǂ¤‚µ‚½‚ç‚¢‚¢‚Ì‚©‚È�H
500 �F
499 �F2009/02/26(–Ø) 16:22:10
‚¨‚‹Ž–ŒÌ‰ðŒˆ -auto_scalar�@ƒIƒvƒVƒ‡ƒ“‚Å‚¢‚¯‚½
501 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/02/26(–Ø) 16:49:38
>>500 ‚¾‚½‚Ì
-auto
‚â
-static
‚Å‚¤‚Ü‚�s‚‚±‚Æ‚à‚ ‚邿�B‚ ‚Ƃ͎À�sŽž‚̊‹«•Ï�”‚Ì
setenv KMP_STACKSIZE 16M
‚Æ‚©ƒfƒtƒH‚æ‚è‘å‚«‚߂Ɏæ‚邯�K‚¹‚È‚±‚Æ‚ª‘½‚¢‹C‚ª‚·‚é�B
502 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/02/26(–Ø) 16:50:50
>>500 ‚Ä‚¢‚¤‚©�A
-auto_scalar
‚Á‚ăfƒtƒHƒ‹ƒg‚ɂȂÁ‚ĂȂ¢�H
-openmp‚¾‚ƃfƒtƒH‚Å“®“I�i-auto�j‚ɂȂé‚ñ‚¾‚Á‚¯‚©
>>499 ‚Í’P‚ɃXƒ^ƒbƒN•s‘«‚È‚¾‚¯‚Å‚Í�H
‚Æ‚±‚ë‚Å�AKMP_STACKSIZE‚Á‚Äunlimited‚É�Ý’è‚Å‚«‚È‚¢‚Ì�H
“®“I‚Á‚Ä‚¢‚Á‚Ä‚àƒq�[ƒv‚ƃXƒ^ƒbƒN‚ª‚ ‚邿‚Ë�B Fotran‚Ì�ê�‡‚Á‚Ăǂ¤‚¢‚¤•—‚ÉŠ„‚è“–‚Ä‚ç‚ê‚é‚ñ‚¾‚낤�E�E�E‚»‚¤‚¢‚â‚ ‚Ü‚èˆÓޝ‚µ‚½‚±‚ƂȂ©‚Á‚½�B
>>504 Œ³�X‚ÍAUTOMATIC•Ï�”‚̗ނ̓Xƒ^ƒbƒN‚É�AALLOCATE–½—߂̂Ƃ«‚̓q�[ƒv‚¾‚Á‚½‹C‚ª‚·‚é�B
‚½‚¾—ðŽj“IŒoˆÜ‚Ì‚¹‚¢‚ŃTƒuƒ‹�[ƒ`ƒ“‘¤‚Å‹�‘å‚È”z—ñ‚ð‚Æ‚Á‚Ä‚¢‚éƒvƒ�ƒOƒ‰ƒ€‚ª‘½‚‚Ä
‚»‚ꂪSTACKOVERFLOW‚ðˆø‚«‹N‚±‚·‚©‚ç�AIntelFortran‚È‚ñ‚©‚̓fƒtƒH�[ƒ‹ƒg‚Å‚Í
ƒXƒJƒ‰�[•Ï�”‚̓Xƒ^ƒbƒN‚Å�A”z—ñ‚̗ނ̓q�[ƒv‚ÅŠm•Û‚·‚邿‚¤‚ɂȂÁ‚½‹C‚ª‚·‚é�B
ƒCƒ“ƒeƒ‹‚ÌŒfަ”‚É�AƒfƒtƒH�[ƒ‹ƒg�EƒIƒvƒVƒ‡ƒ“�Ø‚è‘Ö‚¦‚̘b‚ª�o‚Ä‚¢‚½Šø‚à‚·‚é‚Ì‚¾‚ª
�̂̂±‚ƂȂ̂ŋL‰¯‚ª‚Í‚Á‚«‚肵‚È‚¢�B
OpenMP‚ðŽw’è‚·‚邯�AƒIƒvƒVƒ‡ƒ“‚ª�Ø‚è‘Ö‚í‚Á‚Ä‚µ‚Ü‚¤˜b‚Í‚±‚̃XƒŒ‚É�o‚Ä‚¢‚é�B
http://software.intel.com/en-us/forums/intel-visual-fortran-compiler-for-windows/topic/59627/ Fortran‚ÍFORTRAN66Žž‘オSTATIC‚É•Ï�”‚ð‚Æ‚Á‚Ä‚¢‚½ŠÖŒW‚Å�A
FORTRAN77‚Å‹KŠi‚Ì�ã‚ł̓Tƒuƒ‹�[ƒ`ƒ“—Þ‚Ì•Ï�”‚ÍAUTOMATIC‚Å‚ ‚肤‚邿‚¤‚É
‚È‚Á‚½‚É‚à‚©‚©‚í‚炸�AŒÝŠ·�«‚ÌŠÏ“_‚©‚çƒfƒtƒH�[ƒ‹ƒg‚ÅSTATIC‚É•Ï�”‚ð
‚Æ‚Á‚Ä‚¢‚邱‚Æ‚ª‘½‚‚Ä�A‚»‚ê‚ÍFortran90‚Å‚à‚µ‚΂炑±‚¢‚Ä‚¢‚½‚Æ‚¢‚¤—ðŽj“IŒoˆÜ‚ª‚ ‚é�B
>>505 ‚»‚̃XƒŒ‚ÌSteve‚³‚ñ‚ªŒ¾‚Á‚Ä‚élocal scalar variables‚Á‚Ä�A”z—ñ‚¶‚á‚È‚¢�iŽŸŒ³‚P‚Ì�jƒtƒc�[‚Ì•Ï�”‚Ì‚±‚Æ‚¾‚æ‚Ë�H
‚¾‚Æ‚µ‚½‚ç�A
If you say /Qopenmp (or /Qopenmp-stubs), this changes to /automatic - ALL local scalar variables are allocated on the stack.
‚ÌALL local scalar variables‚ÍALL local variables�i‚‚܂èƒ��[ƒJƒ‹ƒXƒJƒ‰•Ï�”‚¾‚¯‚¶‚á‚È‚�Aƒ��[ƒJƒ‹”z—ñ•Ï�”‚àŠÜ‚Þ�j‚̊ԈႢ‚¶‚á‚È‚¢‚©‚È�H
Ѝˆá‚¢‚µ‚Ä‚½‚ç‚·‚¢‚Ü‚¹‚ñ
>>506 ‚»‚¤‚È‚ñ‚¶‚á‚È‚¢‚©‚È�H
”z—ñ‚܂ŃXƒ^ƒbƒN‚ɂƂ邩‚çoverflow‚µ‚Ä‚¢‚邯�l‚¦‚邯‚‚¶‚‚܂ª�‡‚¤�H
508 �F
506 �F2009/02/27(‹à) 13:52:41
>>507 ‚»‚¤‚¾‚æ‚Ë�BSteve‚³‚ñIntel‚̃Xƒ^ƒbƒt‚È‚ñ‚¾‚µ�‘‚«ŠÔˆá‚í‚È‚¢‚Å‚‚ê‚æ‚§�E�E�E
OpenMP‚Ì�ê�‡‚ɃfƒtƒHƒ‹ƒg‚Å‘S‚Ẵ��[ƒJƒ‹•Ï�”�iƒXƒJƒ‰‚à”z—ñ‚à�j‚ªƒXƒ^ƒbƒN‚ɂȂé‚Ì‚Í
ƒXƒŒƒbƒhƒZ�[ƒt‚Ì‚½‚ß‚Á‚Ä‚ ‚邯‚Ç�A‹t‚ÉŒ¾‚¦‚΂»‚ê‚ç‚ðstatic‚Ɉµ‚Á‚½‚çƒXƒŒƒbƒhƒZ�[ƒt‚É
‚È‚ç‚È‚¢‚Á‚Ä‚±‚Æ‚¾‚æ‚Ë�B‚»‚ê‚Á‚Ä‚â‚Á‚¿‚á‚Ü‚¸‚¢‚±‚ƂȂñ‚¾‚낤‚©�H
OpenMP‚܂Ƃà‚ÉŽg‚Á‚½ŒoŒ±‚ª‚È‚¢‚à‚ñ‚Å�E�E�EޝŽÒ‚Ì•ûƒRƒ�ƒ“ƒg‚¨‚È‚ª‚¢‚µ‚Ü‚·
509 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/02/27(‹à) 14:48:49
-openmp ‚‚¯‚ăRƒ“ƒpƒCƒ‹‚·‚邯�A‰¼‚Éautomatic‚ÍŒ™‚¢‚¾‚Á‚Æ -noauto ‚‚¯‚Ä‚à�Á‚³‚ê‚é‚Í‚¸�B‚Ȃ̂ÅopenMP‚ð“Ç‚ñ‚¾�ó‘Ô‚¾‚Æ —L–³‚ð‚¢‚í‚³‚¸‚É‚º‚ñ‚Ôautomatic‚ɂȂé�E�E�E‚Æ—�‰ð‚µ‚Ä‚¢‚邯‚Ç�B shared‘®�«‚ð‚‚¯‚Ä‚©‚Âcommonƒuƒ�ƒbƒN‚É“\‚è•t‚¯‚邯‚©‚µ‚Ä ‚â‚â–³—�‚È‚±‚Æ‚ð‚µ‚È‚¢‚Æstatic—̈æ‚ɂ͔z’u‚³‚ê‚È‚¢‚ÆŽv‚Ó�B -static‚Í‚»‚Ì–¼‚̃Cƒ��[ƒW‚Ƃ͈á‚Á‚Ä‹¤—Lƒ‰ƒCƒuƒ‰ƒŠ‚ðŽg‚í‚È‚¢ (‚Æ‚¢‚¤‚©ŽÀ�sƒtƒ@ƒCƒ‹‚É–„‚ß�ž‚ñ‚¶‚Ⴄ)ƒIƒvƒVƒ‡ƒ“‚¾‚µ�B spec.org‚É‚ ‚éOMP2001‚Ì�î•ñ‚̂Ƃ±‚ë‚ÉŽŽ‚µ‚½�l‚½‚¿‚ª ŽÀ�Û‚ÉŽg‚Á‚½ƒIƒvƒVƒ‡ƒ“‚ª�Ú‚Á‚Ä‚é‚Ì‚Å�AŽ©•ª‚̂Ƃ±‚ë‚̃VƒXƒeƒ€‚É ‹ß‚¢(or “¯‚¶)ƒ}ƒVƒ“‚ª‚ ‚Á‚½‚ç‚»‚ê‚Æ“¯‚¶ƒ‚ƒm‚ð‚¾‚¢‚½‚¢Žg‚Á‚Ä‚¢‚邯‚Ç�A ‚Ü‚ ‘åŠÔˆá‚¢‚ł͂Ȃ¢‚ÆŽv‚¤�B‚¨‘E‚߂ł«‚é‚Ì‚©‚Í•ª‚ç‚È‚¢‚¯‚Ç�E�E�E�B
‚¦�AOpenMP‚¾‚ƃTƒuƒ‹�[ƒ`ƒ““à‚Å‚Ístatic”z’u‚Á‚Ăł«‚È‚¢‚킯�H �”’lŒvŽZ‚ł͔nނł©‚¢”z—ñ‚͉”\‚ÈŒÀ‚èstatic‚É‚·‚é‚Ì‚ªŠî–{‚¶‚á‚È‚¢�H ƒTƒuƒ‹�[ƒ`ƒ““n‚é“x‚É”z—ñ‚ðƒRƒs�[‚Æ‚©‚â‚Á‚Ä‚ç‚ê‚ñ‚Å‚µ‚å�H ‚»‚Ì‘ã‚í‚èƒ�ƒ‚ƒŠ‚̃Aƒ�ƒP�[ƒVƒ‡ƒ“‚̓R�[ƒfƒBƒ“ƒO‚·‚鑤‚ª‚«‚¿‚ñ‚Æ�l‚¦‚Ä‚ ‚°‚È‚¢‚Æ‚¢‚¯‚È‚¢‚¯‚Ç�B ‚±‚̕ӂªƒŠƒ\�[ƒX‚ð‚ ‚éˆÓ–¡•x�‹“I‚ÉŽg‚¤‚±‚Æ‚ª‘O’ñ‚Æ‚³‚ê‚éJava‚âC#‚Ȃǂ̃IƒuƒWƒFƒNƒgŒnŒ¾Œê‚Ƃ̈Ⴂ‚¾‚Ë�B
511 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/02/27(‹à) 16:56:15
510‚Í‚¿‚å‚Á‚Æ�q‚Ë•û‚ª•Ï‚¾‚È�B •›ƒvƒ�ƒOƒ‰ƒ€‚ª•À—ñ‚Ìloop“à‚É‚ ‚é‚Ì‚©�A •›ƒvƒ�ƒOƒ‰ƒ€“à‚Å•À—ñ‚Ìloop‚ª‚ ‚é‚Ì‚©‚Å“š‚͕ςí‚é�B
512 �F
510 �F2009/02/27(‹à) 19:38:52
“IŠO‚ê‚ÈŽ¿–₵‚Ä‚½‚Ì‚©‚È�A‚²‚ß‚ñ�E�E�E�B
>>511 ‚Ì—¼•û‚̃P�[ƒX‚Æ‚à’m‚肽‚¢‚Ì‚Å�A‚æ‚©‚Á‚½‚狳‚¦‚Ăقµ‚¢�B
—¬‘̂Ƃ©‚Ì�”’lŒvŽZ‚Å‚Í�s—ñ‚Ì”½•œ–@‚Æ‚©‚̓Tƒuƒ‹�[ƒ`ƒ““à‚Å‚â‚邯‚Ç�A
‚»‚¤‚¢‚¤ƒP�[ƒX‚Ń�ƒ‚ƒŠ‚̃Aƒ�ƒP�[ƒVƒ‡ƒ“‚͂ǂ¤‚·‚ׂ«‚Ȃ̂©�A‚Æ‚¢‚¤Ž‹“_‚Å‹»–¡‚ª‚ ‚è‚Ü‚·�B
>>512 ˆø�”‚É�Ú‚Á‚Ä‚ê‚Î�AFortran‚ÍŽQ�ÆŒÄ�o‚µ‚È‚ñ‚¾‚©‚ç”z—ñ‚̃Rƒs�[‚ª�¶‚¶‚é‚Í‚¸‚à‚È‚¢�B
C‚âPASCAL‚Ƃ͈Ⴄ�B�i‚Ü‚Ÿ�ŋ߂ÍVALUE‘®�«‚à�o—ˆ‚邿‚¤‚ɂȂÁ‚½‚ª�j
‚±‚±‚ł͕›ƒvƒ�ƒOƒ‰ƒ€“à‚Å�V‚½‚ÉŠ„‚è•t‚¯‚ç‚ê‚é”z—ñ‚̘b‚¾‚낤�B
‚»‚ꂪ“®“I‚ÉŽæ‚ç‚ê‚邯‚µ‚Ä�AƒXƒ^ƒbƒN‚ÉŽæ‚ç‚ê‚é‚©�Aƒq�[ƒv‚ÉŽæ‚ç‚ê‚é‚©‚̈Ⴂ�B
514 �F
510 �F2009/02/28(“y) 01:28:49
>>513 �„•›ƒvƒ�ƒOƒ‰ƒ€“à‚Å�V‚½‚ÉŠ„‚è•t‚¯‚ç‚ê‚é”z—ñ
‚ �A‚»‚¤‚¢‚¤˜b‚©�E�E�E‚ ‚肪‚Æ‚¤�B
Ž©•ª‚͈ꎞ�ì‹Æ—p‚Ì”z—ñ‚à‘S•”ƒ�ƒCƒ“‘¤‚Å—pˆÓ‚µ‚Ä‚â‚Á‚Ĉø�”“n‚µ‚µ‚Ä‚é‚ñ‚¾‚¯‚Ç�A
‚»‚¤‚¢‚¤‚̂̓Tƒuƒ‹�[ƒ`ƒ““à‚ŃXƒ^ƒbƒN‚âƒq�[ƒv‚ÅŽæ‚Á‚Ä‚â‚é•û‚ª‚¢‚¢‚Ì‚©‚È�H
ŠF‚³‚ñ‚Ç‚¤‚µ‚Ă܂·‚©�H
515 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/03/03(‰Î) 06:16:03
allocatable‚𕛃vƒ�ƒOƒ‰ƒ€“à‚Å�ì‚Á‚Ä‚»‚ê(�擪ƒAƒhƒŒƒX‚â‚çƒTƒCƒY‚»‚Ì‘¼)‚ð ƒ�ƒCƒ“ŠK‘w‚⑼‚Ì•›ƒvƒ�ƒOƒ‰ƒ€‚É�s‚«“n‚点‚é‚Ì‚ªŠ„‚è‚Æ –Ê“|�L‚¢‚̂Ń�ƒCƒ“ŠK‘w‚Å‚â‚Á‚Ä‚é�B ƒ�ƒCƒ“ŠK‘w‚ª’·‚‚È‚é‚Ì‚Í�³’¼‚ ‚Ü‚è�D‚݂ł͂Ȃ¢�A‚¯‚Ç ‚Ü‚ �D‚݂̖â‘è‚È‚¾‚¯‚Ȃ̂ŋC‚É‚µ‚È‚¢‚悤‚É‚µ‚Ä‚¢‚é�B allocatableŽg‚¤‚Æ�ê�‡‚É‚æ‚Á‚Ă̓vƒ�ƒOƒ‰ƒ€“à‚Å–¾Ž¦‚·‚éƒTƒCƒY‚æ‚è‘å‚«‚¢ƒ�ƒ‚ƒŠ‚ðˆµ‚¦‚½‚è (ƒRƒ“ƒpƒCƒ‰‚̓nƒ“ƒhƒ‹‚Å‚«‚éƒ�ƒ‚ƒŠƒTƒCƒY �ƒ OS‚ªƒnƒ“ƒhƒ‹�o—ˆ‚éƒ�ƒ‚ƒŠƒTƒCƒY�A‚Ȃ̂Å)�A ŠiŽq�”(ƒf�[ƒ^�”)‚̈Ⴄ�ˆ—�‚𓯂¶ŽÀ�sƒCƒ��[ƒW‚Å�o—ˆ‚é(ƒRƒ“ƒpƒCƒ‹‚µ‚È‚¨‚³‚È‚‚Ä—Ç‚¢)‚Ì‚ª ‚¢‚¢‚¯‚Ç�A�ŋ߂ł̓TƒCƒY‚ðƒvƒ�ƒOƒ‰ƒ€“à‚ŌŒè•Ï�”‚Å–¾Ž¦‚µ‚Ä‚¢‚¿‚¢‚¿ƒRƒ“ƒpƒCƒ‹‚µ‚Ä‚¢‚é�B ‚»‚Ì•û‚ªƒ~ƒX‚Í�‚È‚¢‹C‚ª‚·‚é�B‹C‚Ì‚¹‚¢‚©‚à‚µ‚ê‚È‚¢‚¯‚Ç�B
‰½‚ªƒXƒ^ƒbƒN‚âƒq�[ƒv‚ÉŠ„‚è“–‚Ä‚ç‚ê‚é‚Ì‚©•ª‚©‚ç‚ñ‚©‚Á‚½‚̂ŃOƒO‚Á‚½�B
ƒuƒ�ƒO‚¾‚¯‚Ç‚—
ttp://monologuemidnight.blogspot.com/2009/01/blog-post_03.html module’†‚Ì‘åˆæ“I‚È•Ï�”�Asave‘®�«•t‚«‚Ì•Ï�”�¨.bss
allocatable‘®�«‚È”z—ñ�¨ƒq�[ƒv
•�’ʂɃTƒCƒY‚ª�錾‚³‚ê‚Ä‚¢‚鎩“®”z—ñ�¨ƒXƒ^ƒbƒN
Žè‘±‚«’†‚Ì•Ï�”�imain‚Å‚à“¯—l�j�¨ƒXƒ^ƒbƒN
‚Á‚Ä‚±‚Ƃ炵‚¢‚ª�c�B
‚±‚̕ӂ͋KŠi‚ł͂Ȃ¢‚Á‚Û‚¢‚Ì‚Å�AƒRƒ“ƒpƒCƒ‰‚ÌŽd—l‚ð‚¿‚á‚ñ‚ÆŠm”F‚µ‚½‚Ù‚¤‚ª‚¢‚¢‚È�B
517 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/03/11(�…) 18:46:48
ifort‚Å•¡�”‚Ì�”Žš‚ð�o—Í‚·‚邯�ŸŽè‚ɉü�s‚³‚ê‚é‚ñ‚¾‚¯‚Ç�A‰ü�s‚ð—}�§‚·‚éƒIƒvƒVƒ‡ƒ“‚Á‚Ä‚ ‚é�H gforntran‚ł͉ü�s‚³‚ê‚È‚¢‚ñ‚¾‚¯‚Ç�B real(8) a(5) write(*,*) a(:) ‚Æ‚·‚邯a(3)‚Æa(4)‚̊Ԃʼnü�s‚³‚ê‚¿‚Ⴄ�B
>>517 ‹CŽ�‚¿ˆ«‚¢‚¯‚Ç�A‰º‹L‚̂悤‚É‚µ‚Ä‚à‚¾‚ß‚©‚È�H
ƒNƒ‰ƒVƒbƒN‚È�‘‚«•û‚¾‚¯‚Ç�B
�@�@write(*, '(100f10.5)') a(:)
519 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/03/12(–Ø) 09:37:42
>518 ‚ ‚肪‚Æ‚ñ�B write(*,'(100f)') a(:) ‚Å‚¢‚¯‚½�B
‰ü�s—}�§‚È‚ç�Awrite•¶‚È‚çadvance='no'‚ð•t‚¯‚ê‚΂ł«‚é‚Í‚¸ �o—Í‚·‚é‚à‚Ì‚ªŒˆ‚Ü‚Á‚Ä‚é‚È‚ç�A‰ü�s‚µ‚Ä‚µ‚Ü‚¤�‘Ž®‚̉Ó�Š‚É\�iƒoƒbƒNƒXƒ‰ƒbƒVƒ…�j‚ð“ü‚ê‚Ä‚à‚¢‚¢
>520 advance‚̓tƒH�[ƒ}ƒbƒg•¶‚ª‚¢‚é‚©‚ç�AŒ‹‹Ç519‚Æ“¯‚¶‚Å‚Í�H
>>521 '(100f)' ‚È‚ñ‚Ä�‘‚‚æ‚è‚̓Xƒ}�[ƒg‚È‹C‚ª‚·‚邯‚Ç�H
‚Ü�A‚Ç‚¤‚Å‚à‚¢‚¢‚±‚Æ‚¾‚È
523 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/03/18(�…) 04:24:12
do i = 1, 5 write(*, '(f10.5,$)') a(i) enddo write(*,*) '' ‚̓_ƒ�‚©‚È�H ‰ü�s‚·‚é‚È‚æ�A‚Ì��‚Í”ñ•W�€‚¾‚¯‚ÇDECˆÈ—ˆ‚Ù‚Ú•W�€‚ÆŽv‚Á‚Ä‚¢‚¢‚̂ł͂Ȃ¢‚¾‚낤‚©
‚¿‚å‚Á‚ƃeƒXƒg‚µ‚Ă݂½�—Intel Fortran 10.1 integer::i integer,parameter::imax=5 real(8)::f(imax) do i=1,imax ; f(i)=i ; enddo print *, "print *,f" print *, f print *, '---' print *, "write(*,'(f)') f" write(*, '(f)') f print *, '---' print *, "write(*,'(f)') (f(i),i=1,imax)" write(*, '(f)') (f(i),i=1,imax) print *, '---' print *, "write(*,'(f\)') f" write(*, '(f\)') f print *, '---' print *, "write(*,'(f)',advance='no') f" write(*, '(f)',advance='no') f print *, '---' print *, "write(*,'(f)',advance='no') (f(i),i=1,imax)" write(*, '(f)',advance='no') (f(i),i=1,imax) print *, '---' end
print *,f 1.00000000000000 2.00000000000000 3.00000000000000 4.00000000000000 5.00000000000000 --- write(*,'(f)') f 1.0000000000000000 2.0000000000000000 3.0000000000000000 4.0000000000000000 5.0000000000000000 --- write(*,'(f)') (f(i),i=1,imax) 1.0000000000000000 2.0000000000000000 3.0000000000000000 4.0000000000000000 5.0000000000000000 --- write(*,'(f\)') f 1.0000000000000000 2.0000000000000000 3.0000000000000000 4.0000000000000000 5.0000000000000000 --- write(*,'(f)',advance='no') f 1.0000000000000000 2.0000000000000000 3.0000000000000000 4.0000000000000000 5.0000000000000000 --- write(*,'(f)',advance='no') (f(i),i=1,imax) 1.0000000000000000 2.0000000000000000 3.0000000000000000 4.0000000000000000 5.0000000000000000 ---
‚²‚ß‚ñ�B
print•¶‚©write•¶‚©�A‚Ü‚½�o—Í•À‚Ñ‚ðf‚Æ‚·‚é‚©(f(i),i=1,imax)‚Æ‚·‚é‚©‚Å�A
�o—ÍŒ‹‰Ê‚ªˆá‚¤‚Ì‚©‚ÆŽv‚Á‚Ä‚â‚Á‚Ă݂½‚ª�Aˆá‚¢‚͂Ȃ¢‚Á‚Û‚¢�B
‚Æ‚¢‚¤‚킯‚Å�A
>>524 ‚ð‚à‚Á‚Æ‚·‚Á‚«‚肳‚¹‚½�B
integer::i
real(8)::f(3)
do i=1,3 ; f(i)=i ; enddo
print *, "write(*,*) f"
write(*,*) f
print *, '---'
print *, "write(*,'(f)') f"
write(*,'(f)') f
print *, '---'
print *, "write(*,'(f\)') f"
write(*,'(f\)') f
print *, '---'
print *, "write(*,'(f)',advance='no') f"
write(*,'(f)',advance='no') f
print *, '---'
end
�ª‚ÌŒ‹‰Ê write(*,*) f 1.00000000000000 2.00000000000000 3.00000000000000 4.00000000000000 5.00000000000000 --- write(*,'(f)') f 1.0000000000000000 2.0000000000000000 3.0000000000000000 4.0000000000000000 5.0000000000000000 --- write(*,'(f\)') f 1.0000000000000000 2.0000000000000000 3.0000000000000000 4.0000000000000000 5.0000000000000000 --- write(*,'(f)',advance='no') f 1.0000000000000000 2.0000000000000000 3.0000000000000000 4.0000000000000000 5.0000000000000000 --- Œ‹˜_ ‡@�‘Ž®�È—ª‚·‚邯�A“K“–‚Ȉʒu‚ʼnü�s‚µ‚Ä‚‚ê‚é�i‹KŠi‚ÅŒˆ‚Ü‚Á‚Ä‚é‚ñ‚©‚È�H�j ‡A�‘Ž®Žw’è‚·‚邯�A�‘Ž®‚Ì’†�g‚ª�I‚í‚é“x‚ɉü�s ‡B�‘Ž®‚É\‚ð•t‚¯‚邯‰ü�s—}�§ ‡C�‘Ž®‚Éadvance='no'�iƒfƒtƒHƒ‹ƒg‚Íyes�j‚ð•t‚¯‚邯write•¶‚ª�I—¹‚µ‚½‚Æ‚«‚É�s‚¤‰ü�s‚ð—}�§�i‡A‚Ƃ̈Ⴂ‚É’�ˆÓ�j ‚Á‚ÄŠ´‚¶‚©‚È�B ‰ü�s—}�§‚Ì\‚Ɖü�sŽw’è‚Ì/‚ª�¬‚´‚邯‚Ç‚ñ‚È�o—͂ɂȂé‚ñ‚¾‚낤�B
‚²‚ß‚ñ�A
>>526 ‚Í
real(8)::f(3)
do i=1,3 ; f(i)=i ; enddo
‚Í�«‚É�C�³�B
real(8)::f(5)
do i=1,5 ; f(i)=i ; enddo
529 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/03/22(“ú) 01:30:43
�„‡@�‘Ž®�È—ª‚·‚邯�A“K“–‚Ȉʒu‚ʼnü�s‚µ‚Ä‚‚ê‚é�i‹KŠi‚ÅŒˆ‚Ü‚Á‚Ä‚é‚ñ‚©‚È�H�j ƒRƒ}ƒ“ƒhƒvƒ�ƒ“ƒvƒg‚̉E’[‚ʼnü�s‚¾‚ÆŽv‚¤ ˆá‚¤‚©‚È�[
>>529 ‘¼‚̃Rƒ“ƒpƒCƒ‰‚ł͉ü�s‚µ‚È‚¢‚Ì‚Å�AƒRƒ“ƒpƒCƒ‰‚Ì‚¹‚¢‚¾‚ÆŽv‚¢‚Ü‚·�B
>>524-528 ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
ŽQ�l‚ɂȂè‚Ü‚µ‚½�B
write(*,'(f\)') f
‚ª—Ç‚³‚»‚¤‚Å‚·‚Ë�B
>>529 Fortran‚ÉŒÀ‚炸�Aƒvƒ�ƒ“ƒvƒg‚̃TƒCƒY‚ÍŠÖŒW‚È‚¢‚æ
‹T‚¾‚¯‚Ç�AIfort‚È‚ç<>‚ª‚¨Š©‚ß�B ‘½ŽŸŒ³”z—ñ‚Ì�Å�‰‚Ì�”‚ð“ü‚ê‚邱‚Æ‚ª‘½‚¢‚Å‚· —á program main implicit none integer,parameter :: num = 9 integer :: ii,jj real :: arry(num,num) do ii=1,num do jj = 1,num arry(ii,jj) = ii*jj enddo enddo write(6,'(<num>F)') arry end program
>532 •׋‚ɂȂÁ‚½�B ‚ ‚肪‚Æ‚ñ
>>531 Windows‚ÍDOS‘‹‚̃TƒCƒY‚ʼnü�sˆÊ’u‚ª•Ï‚í‚邼�B
>>532 <>‚Å�®�”‚‚‚邯‚»‚Ì�”‚ªŽg‚¦‚é‚ñ‚¾‚Ë�E�E�E’m‚ç‚È‚©‚Á‚½�B�Ì‚©‚ç‚ ‚Á‚½‹@”\�H
>>534 ‚»‚¤‚È‚ñ‚¾�B
>>531 ‚ÍLinux‚Ì�ê�‡ƒ‹‚¾‚¯‚©‚È
>>535 ’ljÁ
<ŽÀ�”•Ï�”>‚Å‚à�ŸŽè‚É�®�”‚ɃLƒƒƒXƒg‚µ‚Ä‚‚ê‚é‚Ë�B
‚ ‚Æ‘¼‚̂Ƃ±‚ë‚É‚à�A—Ⴆ‚Î
num1=5
num2=1
write(6,'(<num>F<num1>.<num2>)') arry
‚Ý‚½‚¢‚É‚µ‚ÄŽg‚¦‚é‚Ë�B
>>536 Fortran2008�@‚Å‚Í�A�@*( i3, '-' ) Œ©‚½‚¢‚ÈŠ´‚¶‚Å�@�–�@‚ª–³ŒÀ”½•œ‚ÌŽw’èŽq‚ɂȂé‚炵‚¢�B
*( i3, '-' ) ‚ð�AƒXƒL�[–X‚ª‚Ô‚Á‚½ƒoƒJƒ{ƒ“‚̃pƒp‚Á‚Û‚¢‘å�l‚Æ ‚·‚Ü‚µ‚½Žq‹Ÿ‚ÉŒ©‚¦‚邿‚¤‚É‚È‚é‚Æ�A‚â‚΂¢‚Ë�B
‚â‚΂¢‚È
Fotran‚Í‚¶‚߂悤‚ÆŽv‚Á‚ăCƒ“ƒXƒg�[ƒ‹‚µ‚Ä�A ŠÈ’P‚ȃvƒ�ƒOƒ‰ƒ€‚ðŽÀ�s‚µ‚悤‚Æ‚µ‚½‚ñ‚¾‚¯‚Ç�A ld: crt2.o: No such file: No such file or directory ‚Á‚ăGƒ‰�[‚ª�E�E�E�BƒOƒO‚Á‚Ä‚à‚æ‚‚í‚©‚炸�E�E�E�B �•‚¯‚Ä‚‚¾‚³‚¢�B
541 �F
540 �F2009/04/18(“y) 00:12:28
ƒAƒ“ƒCƒ“ƒXƒg�[ƒ‹‚µ‚Ä�A‚Í‚¶‚ß‚©‚ç‚â‚è’¼‚µ‚½‚ç‚Å‚¯‚½�B
>>542 ‚¨‚Ü‚¦�Aƒvƒ�ƒOƒ‰ƒ€‚̃Zƒ“ƒX‚ ‚é‚©‚ç�A�¡Œã‚àŠÊ‚΂ê�I
windowsXP‚ŃtƒH�[ƒgƒ‰ƒ“90‚ðƒtƒŠ�[‚ÅŽg‚¢‚½‚¢‚̂ł·‚¯‚Ç�A cygwinˆÈŠO‚łǂ¤‚É‚©�o—ˆ‚Ü‚·‚©�H
free Fortran ‚Å‚®‚®‚ê
windows‚ÅVMWare‚ð—§‚¿�ã‚°‚ÄUbuntu‚¢‚ê‚Ägfortran
nŽŸŒ³”z—ñ‚ð‚Ȃ߂郋�[ƒ`ƒ“‚ð�ì�¬‚Å‚«‚é? reshepeŽg‚Á‚ĈꎟŒ³‚É—Ž‚Æ‚µ�ž‚ñ‚Å�ˆ—�‚µ‚悤‚Æ‚µ‚½‚ç�Asegmentation fault‚ɂȂÁ‚Ä‚µ‚Ü‚Á‚½�B ƒR�[ƒh‚Í‚±‚ñ‚ÈŠ´‚¶�B ----------------------------- program main integer :: arr(3,4,5) integer :: i,j,k do i=1,3 do j=1,4 do k=1,5 arr(i,j,k) = i+j+k enddo enddo enddo call check(arr) end program main subroutine check(arr) integer,intent(in) :: arr(:,:,:) integer,allocatable :: tmp(:) integer :: i,elem=1 do i=1,size(ubound(arr)) elem = elem * (ubound(arr,i)-lbound(arr,i)+1) enddo allocate(tmp(elem)) tmp = reshape(arr,shape(tmp)) do i=lbound(tmp,1),ubound(tmp,1) print *,tmp(i) enddo end subroutine check -----------------------------
>>548 PRINT *, arr
‚Å‚¾‚߂Ȃ̂©�H
>>548 ‚Ù‚ç‚æ�B‚Â�[‚©‚±‚êƒeƒ“ƒvƒŒ‚É‚µ‚Ä‚¿‚å
�EŒ`�óˆøŒp‚¬”z—ñ‚ðˆø�”‚ÉŽg‚¤
�EŠ„‚è•t‚¯”z—ñ‚ðˆø�”‚ÉŽg‚¤
�Eƒ|ƒCƒ“ƒ^‚ðˆø�”‚ÉŽg‚¤
�Eˆø�”ƒL�[ƒ��[ƒh‚âoptional‘®�«‚ðŽg‚¤
�EŠÖ�”‚̕Ԓl‚ð”z—ñ‚É‚·‚é
�ª‚ð‚µ‚½‚¢‚È‚ç�A•›ƒvƒ�ƒOƒ‰ƒ€‚Í–¾Ž¦“Iˆø—pŽd—l‚É‚µ‚È‚«‚á‚È‚ç‚È‚¢�B
�¡–¾Ž¦“Iˆø—pŽd—l
�E•›ƒvƒ�ƒOƒ‰ƒ€‚ð“à•”•›ƒvƒ�ƒOƒ‰ƒ€‚É‚·‚é�iŒÄ‚Ñ�o‚µ‘¤‚Åcontains�j
�E•›ƒvƒ�ƒOƒ‰ƒ€‚ðƒ‚ƒWƒ…�[ƒ‹•›ƒvƒ�ƒOƒ‰ƒ€‚É‚·‚é�iƒ‚ƒWƒ…�[ƒ‹‚Åcontains�j
�E•›ƒvƒ�ƒOƒ‰ƒ€‚ªŠO•”•›ƒvƒ�ƒOƒ‰ƒ€‚È‚ç‚Î�A‚»‚ê‚ðŒÄ‚Ñ�o‚·‘¤‚Åinterface‚ð—pˆÓ‚·‚é
�¡ˆÃ–Ù“Iˆø—pŽd—l�iFORTRAN77“I‚È‚â‚è•û�j
�E•›ƒvƒ�ƒOƒ‰ƒ€‚ªŠO•”•›ƒvƒ�ƒOƒ‰ƒ€‚Å�A‚»‚ê‚ðŒÄ‚Ñ�o‚·‘¤‚Åinterface‚ð—pˆÓ‚µ‚È‚¢
‚È‚¨�A•›ƒvƒ�ƒOƒ‰ƒ€‚Ƃ͊Ö�”‚âƒTƒuƒ‹�[ƒ`ƒ“‚ðŽw‚·�B
>>548 ‘½ŽŸŒ³”z—ñ‚ðˆêŽŸŒ³‚É‚·‚é‚É‚Í PACK UNPACK ‚ðŽg‚¤‚Ì‚ªˆê”Ê“I‚¾‚ÆŽv‚¤�B
Fortran90 ‚Å“±“ü‚³‚ê‚Ä‚¢‚é�B
—á‘è‚̓}ƒjƒ…ƒAƒ‹‚ð‚݂Ă¿‚å‚—
FORTRAN90‚ňø�”‚Ì�®�‡�«‚ðƒ`ƒFƒbƒN‚·‚é•û–@‚Á‚ĂȂ¢‚©‚È�H ‚æ‚‚»‚±‚ŃoƒO‚ª‚¨‚«‚é‚ñ‚¾�B
553 �F
548 �F2009/05/14(–Ø) 23:50:44
>>549 print ‚Ì•”•ª‚Í�A–{”ÔŽd—l‚ł̓Kƒ`ƒƒƒKƒ`ƒƒ•Ï�X‚µ‚½‚¢‚Æ‚±‚ë‚Ȃ̂ł²‚´‚¢‚Ü‚·�B
555 �F
548 �F2009/05/14(–Ø) 23:51:43
>>550 >>551 ‚Á‚Ä�`‚±‚Æ‚Í�AŒÄ‚Ñ�o‚µ‘¤‚Åinterface‚ð—pˆÓ‚µ‚Ä�Apack‚ňꎟŒ³‰»‚·‚邯‚¢‚¤‚±‚Æ‚©�B
------------------------------------------
program main
integer :: arr(3,4,5)
integer :: i,j,k
interface
subroutine check(arr)
integer,intent(in) :: arr(:,:,:)
end subroutine check
end interface
�È—ª
call check(arr)
end program main
subroutine check(arr)
integer,intent(in) :: arr(:,:,:)
integer,allocatable :: tmp(:)
integer :: i
tmp=pack(arr,mask=(arr .ne. 0))
do i=lbound(tmp,1),ubound(tmp,1)
print *,tmp(i)
enddo
end subroutine check
------------------------------------------
‚±‚ê‚łł«‚Ü‚µ‚½�B‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
—]’k‚¾‚¯‚Ç�Agfortran‚ł͊ú‘Ò’Ê‚è‚É�ˆ—�‚³‚ê‚é‚Ì‚É�Aintel fortran‚¾‚ƃ_ƒ�‚Ý‚½‚¢�B
pack()‚̕Ԃè’l‚ª‰ó‚ê‚Ä‚µ‚Ü‚¤‚Á‚Û‚¢�BƒoƒO‚©?
>>555 tmp‚ðALLOCATE‚µ‚ĂȂ¢‚©‚ç‚©‚È�H
ALLOCATE(tmp(SIZE([arr .ne. 0])))
‚±‚ê‚ð“ü‚ê‚Ä‚¨‚‚Æ“®‚�B
”z—ñ‚ð•Ô‚·‚à‚Ì‚ð�A–¢Š„‚è“–‚Ă̊„‚è‚‚¯”z—ñ‚É“ü‚ꂽ‚Æ‚«‚Ì‹““®‚ª�A
F90‚͈̔͂ł̓vƒ�ƒOƒ‰ƒ€‘¤‚É–â‘肪‚ ‚Á‚Ĉ«‚¢‚Æ‚¨‚à‚¤‚ª�A
�V‚µ‚¢‹KŠi‚ł͂©‚Ȃ莩“®‚Å’²�®‚µ‚Ä‚‚ê‚邿‚¤‚ɂȂÁ‚½‚Ì‚Å�A
‚±‚ꂪBug‚Ȃ̂©‚Ç‚¤‚©•¶–@�‘‚ð“ǂݒ¼‚³‚È‚¢‚Æ•ª‚©‚ç‚ñ‚—
[ ] ‚ÍF2003‚Å�Af90‚È‚ç(/ /) ‚ɑΉž�B
557 �F
556 �F2009/05/15(‹à) 00:49:27
‚ ‚ �AFortran95/2003�@Explained 17.5.2 ‚É ‚»‚Ì‚à‚Ì‚¸‚΂è�APACK‚ÌŒ‹‰Ê‚ð
–¢Š„‚è“–‚ÄALLOCATABLE‚ɓ˂Á�ž‚Þ—á‘肪�Ú‚Á‚Ä‚¢‚½�B
Fortran95‚܂łÍ�o—ˆ‚È‚‚Ä�AF2003‚Å�o—ˆ‚邿‚¤‚ɂȂé‚à‚Ì‚¾‚»‚¤‚¾�B
‚ ‚Æ�A
>>556 ‚Å [ ] ‚Í–³‚‚Ä‚à—Ç‚©‚Á‚½‚—�@
>>556 .
�„�V‚µ‚¢‹KŠi‚ł͂©‚Ȃ莩“®‚Å’²�®‚µ‚Ä‚‚ê‚é
‚Ö�[‚»‚¤‚È‚ñ‚¾
‚¢‚¿‚¢‚¿allocate‚µ‚È‚‚Ä‚·‚Þ‚Ì‚ÍŠð‚µ‚¢
559 �F
548 �F2009/05/17(“ú) 22:24:17
>>556 >>557 ƒtƒHƒ��[�A‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
allocate‚Åintel fortran‚Å‚à–³Ž–“®‚‚悤‚ɂȂè‚Ü‚µ‚½�B
‚Ä‚©�A2003‚¢‚¢‚Ë�BŠú‘Ò‘å�B
ƒXƒŒˆá‚¢‚¾‚Á‚½‚玸—炵‚Ü‚· FORTRAN‚Å‘¼‚©‚çƒf�[ƒ^‚ð“Ç‚Ý�ž‚Þ‚Ì‚É�A‚»‚̃f�[ƒ^‚Ì�Å�‰‚Ƀf�[ƒ^ŠT—v‚ª�‘‚¢‚Ä‚ ‚é‚̂Š“ǂݔò‚΂·•û–@‚ª‚ ‚Á‚½‚狳‚¦‚Ä‚‚¾‚³‚¢ �‰�SŽÒ‚Ȃ̂ŕª‚©‚è‚É‚‚‚Ä‚·‚݂܂¹‚ñ
>>560 “K“–‚È•Ï�”‚ð’è‹`‚µ‚Ä�A“Ç‚Ý�ž‚Ý‚¾‚¯‚³‚¹‚Ä�A‚»‚Ì’†�g‚ð
Žg‚í‚È‚¯‚ê‚΂¢‚¢‚À‚á‚È‚¢�B‰Rƒf�[ƒ^‚Å—Ç‚¢‚©‚çŽÀ—Ⴞ‚µ
‚Ä‚‚ê�B
# ƒŠƒAƒ‹‚Ȃ̂ðŽN‚·‚ƃ}ƒY‚¢‚©‚à‚µ‚ê‚ñ‚µ�B
>>561 �”Žš‚ð“Ç‚Ý�ž‚ñ‚Å•À‚ׂ邾‚¯‚Ȃ̂ł·‚ª
“Ç‚Ý�ž‚Þƒf�[ƒ^‚ª
�›ŒŽ�~“ú
‹C�Ûƒf�[ƒ^
“Œ‹ž“s“ú�•‹æ
0.0001
0.0025
0.0025
0.0105
0.1568
1.5385
1.4657
12.368
‚±‚ñ‚ÈŠ´‚¶‚Å�”Žš‚Ì•”•ª‚̂ݓǂÝ�ž‚Ý‚ð‚µ‚½‚¢‚Å‚·
ƒf�[ƒ^�\‘¢‚ªŠù’m‚È‚ç‚Γǂ݂½‚¢‚Æ‚±‚ë‚܂ʼnñ‚µ‚Ä‚¢‚¯‚΂¢‚¢‚µ�A ƒŒƒR�[ƒh’·‚ª•ª‚©‚Á‚Ä‚ê‚ÎŽw’è‚̃ŒƒR�[ƒh•”‚ð’¼�ړǂ݂É�s‚¯‚é�A‚Í‚¸ ‚à‚Á‚Æ—Ç‚¢•û–@‚ ‚Á‚½‚ç̫۰‚æ‚ë
564 �F
563 �F2009/05/21(–Ø) 02:08:22
‚ �Asequential‚Å�‘‚¢‚½ƒtƒ@ƒCƒ‹‚ðdirect‚œǂÞ�i‚ ‚é‚¢‚Í‚»‚Ì‹t�j‚Á‚Ä�A‚Å‚«‚È‚¢‚ñ‚¾‚Á‚¯�H Ž©�M‚È‚‚È‚Á‚Ä‚«‚½�„�ƒ�G
>>563 ‚·‚݂܂¹‚ñ�A‚à‚¤�‚µ�Ú‚µ‚‚¨Šè‚¢‚Å‚«‚Ü‚·‚©�H
>>562 ‚¢‚‚‚©•û–@‚Í‚ ‚é�B
�Å�‰‚̃f�[ƒ^ŠT—v‚Ì�s�”‚ªŒˆ‚Ü‚Á‚Ä‚¢‚Ĉê’è‚È‚ç‚ΊȒP‚Å�A
CHARACTER TEXT*256
DO i = 1, 4
READ(7, *) TEXT
END DO
“I‚ɓǂݔò‚΂¹‚΂¢‚¢�B
Žè”²‚«‚È•û–@‚Æ‚µ‚Ä‚Í�A�”’l•Ï�”‚É•¶Žš—ñ‚ð“Ç‚Ý�ž‚ނƃGƒ‰�[‚ª�o‚邱‚Ƃ𗘗p‚µ‚Ä�A
10 CONTINUE
READ(7, *, ERR= 10) dat
‚Å–³—�‚ɓǂݔò‚΂·‚±‚Æ‚à�o—ˆ‚é�B
–{•¨‚̃Gƒ‰�[‚̂Ƃ«‚â�Aƒf�[ƒ^ŠT—v‚ª�”’l‚Æ‚µ‚ēǂ߂õ‚Ü‚¤‚Æ�¢‚é‚—
‚â‚â�‚“x‚È•û–@‚Æ‚µ‚Ä‚Í�A‚¢‚Á‚½‚ñ•¶Žš—ñ‚ɓǂÝ�ž‚ñ‚Å�A‚»‚Ì•¶Žš—ñ‚Ì’†�g‚ð‚µ‚ç‚ׂÄ
•¶Žš—ñ‚ð“à•”ƒtƒ@ƒCƒ‹‚Æ‚µ‚Ä“ü—͂Ɏg‚Á‚Ä�”’l‚ð“ǂނƂ¢‚¤•û–@‚à‚ ‚é�B
ƒf�[ƒ^ŠJŽn’n“_‚܂œK“–‚É‚·‚·‚ñ‚Å�A‚a‚`‚b‚j‚r‚o‚`‚b‚d‚Å“K�؂ȂƂ±‚ë‚܂Ŗ߂éŽè‚à‚ ‚é�B
>>566 ‚Q‚–ڂ̎蔲‚«–@‚̓IƒCƒ‰‚à‚æ‚Žg‚¤�B
”O‚Ì‚½‚ß�A
icount = 1
20 continue
read(7,fmt=*) string
read(string,fmt=*,err=10,end=999) dat(icount)
icount = icount + 1
goto 20
10 write(*,*) string
goto 20
continue 999
‚Ý‚½‚¢‚É•¶Žš—ñ‚ðˆê“x‚©‚Ü‚µ‚Ä
“Ç‚Ý�ž‚Ý‚Í“à•”ƒtƒ@ƒCƒ‹‚Å�ˆ—�‚µ‚Ä�A
”ò‚΂³‚ꂽƒP�[ƒX‚Í•\ަ‚³‚¹‚ĖڂŃ`ƒFƒbƒN‚·‚邯‚©�B
‚ ‚Ü‚è‚Ù‚ß‚ç‚ê‚È‚¢ƒXƒpƒQƒbƒ`�`‚¾‚¯‚Ç�B
>>562 –{‹C‚ŃXƒs�[ƒh‹�‚ß‚é‚È‚çdirectƒAƒNƒZƒX‚ªƒxƒXƒg‚¾‚ª
‘½•ª‚ ‚È‚½‚ÌŽg‚¢•û‚¶‚á‚»‚¤‚¶‚á‚È‚³‚»‚¤‚¾‚©‚ç�A•�’ʂɎŸ�X“Ç‚ñ‚Å‚¢‚Á‚Ä
Žg‚í‚È‚¢ƒf�[ƒ^‚Í”jŠü‚µ‚¿‚Ⴆ‚΂¢‚¢‚¶‚á‚ñ
>>562 ‚ªASCIIƒf�[ƒ^‚¾‚Æ‚·‚邯�A5�s–Ú‚©‚ç‚Ì�”Žš‚ª—~‚µ‚¢‚È‚ç�A
do i=1,5
read(unit) tmp
enddo
‚Æ‚â‚Á‚Ď̂Ă¿‚Ⴆ‚΂¢‚¢
“ǂݎ̂Ăé‚È‚ç DO I = 1, 5 READ(NUNIT, *) END DO ‚Å‚¨‚‹
‚»‚Á‚©�AŽÌ‚Ä‚é‚ñ‚¾‚©‚牽‚à‚¢‚ç‚È‚¢‚©
FORTRAN‚ªCOLUMN-MAJOR‚È‚±‚Ƃ𒲂ׂĂ݂½‚¢‚̂ł·‚ª�A •Ï�”‚̃|ƒCƒ“ƒ^’l‚ð’m‚é•û–@‚Í‚ ‚è‚Ü‚·‚©�H
>>571 –³‚¢‚ª�AƒTƒuƒ‹�[ƒ`ƒ“‚É‘—‚ê‚΂킩‚é�B
‚‚܂è�A‚QŽŸŒ³”z—ñ‚ð�AƒTƒuƒ‹�[ƒ`ƒ“‚Ì‚PŽŸŒ³Œ`Ž®ˆø�”‚Ì”z—ñ‚É“n‚¹‚΂悢�B
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�BŠm‚©‚ÉWRITE‚È‚ñ‚©‚ɂ킽‚·‚±‚ƂŠ�‡”Ô‚ð’m‚邱‚Ƃ͂ł«‚é‚̂ł·‚ª�Aƒ�ƒ‚ƒŠ�ã‚̈ʒu‚ð’m‚邱‚Æ‚Í ‚Å‚«‚È‚¢‚̂ł·‚Ë
>>573 •W�€•¶–@‚ł͂Ȃ¢‚ª�ALOC ŠÖ�”‚Ȃǂªƒxƒ“ƒ_�[Šg’£‚Æ‚µ‚Ä—pˆÓ‚³‚ê‚Ä‚¢‚邱‚Æ‚ª‘½‚¢�B
‚Ü‚½ƒŠƒ“ƒJ�[‚Ń}ƒbƒv‚ð�o—Í‚³‚¹‚邯�ÓI‚È•Ï�”‚È‚ç‚΃AƒhƒŒƒX‚ª•ª‚©‚ç‚È‚‚à–³‚¢�B
”z—ñ‚̂Ȃç‚тɊւµ‚Ä‚Í�A‚»‚̂܂܂ł͕ª‚©‚ç‚È‚¢‚ª�A‚³‚ç‚É EQUIVALENCE ‚Å‚à
‚©‚¯‚ê‚Εª‚©‚é‚Ì‚©‚à‚µ‚ê‚È‚¢�B
IFort10.1+ƒ}ƒ‹ƒ`ƒRƒAŠÂ‹«‚ÅŽg‚Á‚Ä‚é�l‚¢‚é‚©‚È OPENMP‚Å•À—ñ‰»‚µ‚Ä‚é‚ñ‚¾‚¯‚Ç�A ƒfƒ…ƒAƒ‹ƒRƒAŠÂ‹«‚Ńg�[ƒ^ƒ‹CPUŽg—p—¦‚ª50%‚©‚ç�オ‚ç‚È‚¢—�—R‚í‚©‚é�H ‚PƒRƒA‚µ‚©Žg‚Á‚ĂȂ‚Ä2ƒRƒA–Ú‚ªƒAƒCƒhƒ‹‚ɂȂÁ‚¿‚Ⴄ
OS‚É‚æ‚邾‚낤‚¯‚Ç�A setenv ‚È‚ñ‚½‚ç�A ‚ð‚¿‚á‚ñ‚Æ‚µ‚Ä‚é�H
577 �F
575 �F2009/06/21(“ú) 16:49:20
setenv‚͂悂킩‚ç‚È‚¢‚ñ‚¾‚¯‚Ç�AOPENMP+Ž©“®•À—ñ‰»‚Å5ƒXƒŒƒbƒh‘–‚Á‚Ä‚é ŠÂ‹«‚ÍOS‚ªXPProSP3‚Å�ACore2DuoE8500
OpenMP‚Ì�ê�‡‚Í�AŠÂ‹«•Ï�”‚ÅCPU‚̈ʒu‚ðbind‚µ‚Ä‚â‚ç‚È‚¢‚Æ‚¢‚¯‚È‚¢‚ñ‚¾‚Á‚¯�H Ž©“®•À—ñ‚à“¯‚¶‚¾‚Á‚¯‚©‚È�H ’N‚©�Ú‚µ‚¢�l‚Ì�~—Õ‚ð‘҂‚µ‚©‚È‚¢‚È‚—
>>577 ‚È‚º�Å�‰‚©‚çWinXP‚¾‚Æ‚©‚¯‚È‚¢‚Ì‚¾‚낤‚©�H
Ž©•ª‚ªŽg‚Á‚Ä‚élinux�{ifort9.1‚Å‚Í�A
setenv OMP_NUM_THREADS 8 (�ÅŒã‚Ì‚W‚Í“K“–‚ÈCPU�”‚É’u‚«Š·‚¦)
‚Ŋ‹«•Ï�”‚Å•À—ñ�”‚ðŽw’è‚·‚邱‚ƂɂȂÁ‚Ă邯‚Ç‚È�BLinux‚Å‚àƒVƒFƒ‹‚²‚ƂɈႤ‚Í‚¸‚¾‚ª�B
ŽÀ‹@‚ª‚È‚¢‚Ì‚ÅWinXP‚¾‚Ƃǂ̒ö“xˆá‚¤‚Ì‚©‚í‚©‚ç‚ñ‚ª�AIntel’ñ‹Ÿ‚Ì—á‚Å‚Í
setenv ‚ð set ‚ÉŠ·‚¦‚邾‚¯‚̂悤‚¾�B
‘S‘̂̊Ď‹�•“¯Šú‚Æ‚è—p‚Ì‚ ‚Ü‚è–Z‚µ‚‚È‚¢ƒXƒŒƒbƒh‚ª‚PŒÂ‘–‚é‚Í‚¸‚¾‚¯‚Ç�A
‘S•”‚Å‚T‚‚͂Ȃñ‚©‘½‚¢‹C‚à‚·‚邪‚»‚ñ‚È‚à‚Ì‚©‚à‚µ‚ê‚È‚¢‹C‚à‚·‚é�B
>>578 CPU‚̈ʒu‚̃oƒCƒ“ƒh‚ÍŽ©“®•À—ñ‚â‚çOpenMP‚Ì�ê�‡�ALinux‚Å‚Í dplace ‚â taskset ‚ðŽg‚¤‚È�B
Žw’肵‚È‚¢‚Ƃӂç‚Ó‚çˆÚ“®‚·‚邱‚Æ‚ª‚ ‚é‚©‚ç‚â‚₱‚µ‚¢�B
‚Ü‚ �Ú‚µ‚¢Win‹@‚Å‚¢‚¶‚‚è‚Ü‚‚Á‚Ä‚é�_‚Ì�~—Õ‚ð‘Ò‚Æ‚¤�BWin‚ł̕À—ñ‚É‹»–¡‚ ‚邵�B
580 �F
575 �F2009/06/22(ŒŽ) 17:58:29
Ž©ŒÈ‰ðŒˆ‚µ‚½‚̂ŕñ�� ProcessExplorer‚ŃXƒŒƒbƒh‚Ì�󋵂𒲂ׂĂ½‚ç�Aƒ�ƒCƒ“ƒXƒŒƒbƒhˆÈŠO–³•‰‰×‚¾‚½ •À—ñ‰»‚ðŒ©’¼‚µ‚Ä•‰‰×‚ð‚©‚¯‚邿‚¤‚É‚µ‚½‚ç100%‚܂Ŋ|‚¯‚ç‚ê‚邿‚¤‚ɂȂÁ‚½ –À˜fŠ|‚¯‚ăXƒ}ƒ\
>>579 Win‚Å‚ÌCPUƒoƒCƒ“ƒh‚͊‹«•Ï�”‚łł«‚½�B
ƒ}ƒjƒ…ƒAƒ‹‚É�Ú‚Á‚Ä‚¢‚é‚Í‚¸�B
²7‚ŃnƒCƒp�[ƒXƒŒƒbƒfƒBƒ“ƒO‚Ì‚WƒRƒA‰^—p‚µ‚Ä‚¢‚邯�A‚¿‚á‚ñ‚ƃoƒCƒ“ƒh‚µ‚È‚¢‚Æ
�«”\‚ª‘S‚�o‚È‚¢�BƒfƒtƒH‚Å‚WƒXƒŒƒbƒh‰^�s‚µ‚ăoƒbƒeƒBƒ“ƒO‚·‚邵�A‚SƒXƒŒƒbƒh‚É‚µ‚Ä‚à
•¨—�ƒRƒA‚ÉŠ„‚è“–‚½‚邯‚ÍŒÀ‚ç‚È‚¢‚悤‚Å•ú’uƒvƒŒƒC‚Å‚Í�«”\‚łȂ¢�B
>>581 ŠÂ‹«•Ï�”‚ÅCPUƒoƒCƒ“ƒh‚Á‚Ä‚¢‚¤‚Ì‚Í�A•Ê‚ÉWindows‚ÉŒÀ‚炸‘¼‚à“¯‚¶‚¾‚ÆŽv‚¤�B
Intel Fortran‚¾‚ÆKMP_AFFINITY�APGI Fortran‚¾‚ÆMP_BLIST‚©‚È�B
‚Æ‚¢‚¤‚©�A‚¢‚¢‰ÁŒ¸ŠÂ‹«•Ï�”‚Ì�Ý’è‚Æ‚©‚ðƒ†�[ƒU‚É‚â‚点‚é‚ñ‚¶‚á‚È‚¢‚‚Ä�A
ƒRƒ“ƒpƒCƒ‰‚ªƒVƒXƒeƒ€�\�¬‚ðŒ©‚È‚ª‚ç�ŸŽè‚ÉŽg‚¤CPU‚ðŽw’肵‚Ä‚‚ê‚ê‚΂¢‚¢‚Ì‚É�c�B
‚Ç‚¤‚¢‚¤ƒXƒŒƒbƒh‚Ì”z’u‚ªŒø—¦‚ª‚¢‚¢‚©‚È‚ñ‚Ä�A—\‘z‚Å‚«‚»‚¤‚È‚à‚ñ‚Ȃ̂É�B
583 �F
556 �F2009/07/09(–Ø) 23:41:32
>>555 �ŋ߂ɂȂÁ‚Ä�AIntelŒfަ”Â‚ðŒ©‚Ä‚¢‚Ă悤‚â‚•ª‚©‚Á‚½‚ª�AƒIƒvƒVƒ‡ƒ“‚ð‚‚¯‚È‚¢‚Æ
‘ʖڂ炵‚¢�B
/assume:realloc_lhs
‚±‚ê‚ð‚‚¯‚邯Fortran2003‰ðŽß�A‚‚¯‚È‚¢‚ÆFortran90/95‰ðŽß‚ɂȂé‚炵‚¢�B
584 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/09/07(ŒŽ) 13:50:42
age
>>583 ‚¨�AŽQ�l‚É‚µ‚悤�B
‚¨‚Ü‚¯�E�E�E‚ɂȂé‚Ì‚©’m‚ç‚È‚¢‚¯‚Çw
ƒ�ƒCƒ“‚ªC‚ÅFortranƒR�[ƒh‚ðƒTƒuƒ‹�[ƒ`ƒ“‚Æ‚µ‚ČĂÑ�o‚µ‚ÄƒŠƒ“ƒN‚·‚邯‚«‚Í
’÷‚߂̎À�sƒtƒ@ƒCƒ‹�¶�¬Žž‚É‚Í icc ‚ÅƒŠƒ“ƒN‚µ‚ÄŽÀ�sƒtƒ@ƒCƒ‹‚‚‚Á‚Ä‚à‚¢‚¢‚¯‚Ç�Aifort ‚Å
ifort -nofor_main -no-ipo
‚Á‚Ä‚â‚邯�U‚é•‘‚¢‚ª—ç‹V�³‚µ‚¢Ž–‚ª‘½‚¢�A‹C‚ª‚·‚é�B
-no-ipo ‚ÍƒŠƒ“ƒN‚·‚邯‚«‚¾‚¯‚Ë�B‚±‚ꂪ‚È‚¢‚Æifort‚Í–³’ƒ‚ð‚·‚é‚æ‚¤‚¾w
586 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/09/27(“ú) 01:29:32
>>nag ‚Ì fortran “ü–å‚Å‚¨‚‹
CERNLIB‚Ìmathlib‚̃‰ƒbƒp‚ðƒ‚ƒWƒ…�[ƒ‹‚Å�ì‚낤‚ÆŽv‚Á‚Ä‚¢‚é‚Ì‚¾‚¯‚ê‚Ç�A gfortran‚ŗႦ‚ÎŽ©ŒÈŠ®Œ‹‚µ‚Ä‚¢‚鋤—LƒIƒuƒWƒFƒNƒg(.soƒtƒ@ƒCƒ‹)‚Á‚Ä �ì‚ê‚é‚à‚ñ‚È‚Ì�H ˆê�X$(cernlib -G Motif mathlib)‚ð‚‚¯‚ăRƒ“ƒpƒCƒ‹‚·‚é‚Ì –Ê“|‚‚³‚¢�B ƒ‰ƒCƒuƒ‰ƒŠ�ì‚Á‚½‚±‚Æ–³‚¢‚ñ‚ŃAƒŒƒQ‚È•¶�Í‚¾‚ª�A‚à‚µ’N‚©‚í‚©‚é‚̂Ȃç�B ‚¿‚Ȃ݂É�AOS‚ÍUbuntu8.04‚È�B
’ljÁ‚ÅŽ¿–â‚È‚ñ‚Å‚·‚ª�A
http://wwwasdoc.web.cern.ch/wwwasdoc/shortwrupsdir/b100/top.html ‚̃‰ƒbƒp�[‚Æ‚µ‚Ä
http://gist.github.com/194480 ‚Æ‚¢‚¤‚Ì‚ð�‘‚¢‚Ä
program main
use FunctionBinom
implicit none
integer::x,y
x=5
y=2
print *,binom(x,y)
end program
‚ŃRƒ“ƒpƒCƒ‹‚µ‚Ä‚Ý‚é‚Æ�i‚à‚¿�A$(cernlib mathlib)‚͂‚¯‚Ä�j
/tmp/ccdsgC3z.o: In function `__functionbinom__binom_integer':
binom.f95:(.text+0x14): undefined reference to `kbinom_'
/tmp/ccdsgC3z.o: In function `__functionbinom__binom_double':
binom.f95:(.text+0x34): undefined reference to `dbinom_'
/tmp/ccdsgC3z.o: In function `__functionbinom__binom_real':
binom.f95:(.text+0x54): undefined reference to `rbinom_'
collect2: ld returned 1 exit status
‚Æ‚¢‚¤ƒGƒ‰�[�o‚é�B‰½‚ÅŽQ�Æ�悪–³‚¢‚Ì‚©‚³‚Á‚Ï‚è‚í‚©‚ç‚È‚¢�B
>>588 ‚æ‚’m‚ç‚ñ‚ª�AŠÖ�”ŒÄ‚Ñ�o‚µ‚Ì–¼‘O‹K–ñ‚ª�H‚¢ˆá‚Á‚Ä‚¢‚邯‚©�B
ƒGƒ‰�[ƒ�ƒbƒZ�[ƒW‚ðŒ©‚éŒÀ‚è�A�¬•¶Žš‚ŃAƒ“ƒ_�[ƒXƒRƒA––”ö•t—^‚ÌŒ`Ž®‚Å
ƒIƒuƒWƒFƒNƒg‚ð’T‚µ‚É�s‚Á‚Ä‚¢‚邪�AŠm‚©‚É‘¶�Ý‚µ‚Ä‚¢‚é‚Ì‚©‚Ë�H
–¼‘Oˆê——‚Æ‚©�o—Í‚³‚¹‚邯‚©�AƒoƒCƒiƒŠƒGƒfƒBƒ^�[‚Å’¼�Ú‚Ì‚¼‚¢‚Ä‚¢Œ©‚邯‚©�B
external binom ‚‚¯‚Æ‚�A‚Æ‚© interface •¶‚Å‘O‚à‚Á‚Ĉø�”•”‚ð‹³‚¦‚Ä‚ ‚°‚邯‚©�A _binom ‚Ý‚½‚‰º•t�ü‚‚¯‚Æ‚‚Æ‚©�A‚©‚È‚ �E�E�Eˆá‚¤‚È�B‚¤�`‚ñ�B
>>589 >ŠÖ�”ŒÄ‚Ñ�o‚µ‚Ì–¼‘O‹K–ñ‚ª�H‚¢ˆá‚Á‚Ä‚¢‚邯‚©�B
‘¼‚ÌŠÖ�”�i—Ⴆ‚Î�A•[‚É‚à‚ ‚éATG‚Æ‚¢‚¤ŠÖ�”�j‚¾‚ƃGƒ‰�[–³‚‚Å‚«‚邵�A
Ž©•ª‚ªƒ}ƒjƒ…ƒAƒ‹“ǂތÀ‚è–¼‘O‹K–ñ‚̘b‚à‚È‚¢‚Ì‚æ‚Ë�B
>–¼‘Oˆê——‚Æ‚©�o—Í‚³‚¹‚邯‚©�AƒoƒCƒiƒŠƒGƒfƒBƒ^�[‚Å’¼�Ú‚Ì‚¼‚¢‚Ä‚¢Œ©‚邯‚©�B
ƒoƒCƒiƒŠƒGƒfƒBƒ^‚Í”ð‚¯‚½‚¢�B–¼‘Oˆê——‚Ç‚¤‚â‚Á‚Ä�o—Í‚³‚¹‚ê‚΂¢‚¢�H
>>590 ƒ‚ƒWƒ…ƒ‰�[�«�ã‚°‚½‚¢‚Ì‚Åexternal‚ðŽg‚¢‚½‚‚È‚¢‚Ì‚æ�B
ˆø—pŽd—l‹L�q‚Í�‘‚¢‚Ä‚ ‚邿�B
ƒXƒpƒRƒ“‚Ì�l‚¶‚á‚È‚¢‚̂ł킩‚ç‚È‚¢‚¯‚ê‚Ç�AƒXƒpƒRƒ“‚Ì�l‚½‚¿‚Á‚Ä CERNLIB‚Æ‚©‚ÍŽg‚킸�A‰½‚̃‰ƒCƒuƒ‰ƒŠŽg‚Á‚Ä‚¢‚é‚Ì�HNAG? ƒtƒŠ�[‚Å‚ ‚é‚Ȃ炻‚̃‰ƒCƒuƒ‰ƒŠ‚̃‰ƒbƒp‚ɈƑւ¦‚·‚é‚í�B
Ž©�ì‚ÉŒˆ‚Ü‚Á‚Ă邾‚ë ‘¼�l‚̃‰ƒCƒuƒ‰ƒŠ‚È‚ñ‚©’x‚‚ÄŽg‚¦‚È‚¢‚µ
>>593 ‚È‚Ê�B‚»‚êƒXƒpƒRƒ“‹ÆŠE‚̈ê”ʘ_�H
>>593 ‚ªŽ©�ì�D‚«‚Æ‚¢‚¤‚킯‚¶‚á‚È‚�H
�V‚µ‚¢ƒAƒ‹ƒSƒŠƒYƒ€‚Å�ì‚é�A‚Æ‚¢‚¤‚̂Ȃç‚í‚©‚é‚Ì‚¾‚¯‚ê‚Ç�A
‚»‚êˆÈŠO‚Ì‘¬“x“I‚É‚à‚¤�ã‚°‚ç‚ê‚È‚¢‚¾‚낤�A�ã‚°‚é•K—v‚à–³‚¢‚¾‚낤“I
ŠÖ�”‚àŽ©�ì‚©‚¢�B
�s—ñƒ\ƒ‹ƒo‚ÉŠÖ‚µ‚Ä‚Í�A‚â‚Á‚ς܂¾‚Ü‚¾Ž©�ì‚Ì—]’n‚ª‚ ‚é‚ñ‚¶‚á‚È‚¢‚Ì�H ƒXƒpƒRƒ“‚̃A�[ƒLƒeƒNƒ`ƒƒ‚É‚æ‚Á‚Ä�Å“K‚ȃAƒ‹ƒSƒŠƒYƒ€‚͈Ⴄ‚¾‚낤‚µ�B x86‚ȃXƒpƒRƒ“�iƒNƒ‰ƒXƒ^‚Æ‚¢‚¤‚ׂ«‚©�H‚—�j‚È‚ç“K“–‚È—]�Š—l‚̃‰ƒCƒuƒ‰ƒŠ‚Å‚¢‚¢‚©‚à‚µ‚ê‚È‚¢‚¯‚Ç�B
>>591 �„ƒoƒCƒiƒŠƒGƒfƒBƒ^‚Í”ð‚¯‚½‚¢�B–¼‘Oˆê——‚Ç‚¤‚â‚Á‚Ä�o—Í‚³‚¹‚ê‚΂¢‚¢�H
ƒ‰ƒCƒuƒ‰ƒŠƒAƒ“—p‚̃Rƒ}ƒ“ƒh‚ðŽg‚¦‚Î�Aˆê——�o‚¹‚邯Žv‚¤�B
ƒ�ƒCƒ“ƒtƒŒ�[ƒ€‚È‚ç�o—ˆ‚½‚—
>>594 ƒ‰ƒCƒuƒ‰ƒŠ‚Í‚»‚Ì�«Ž¿‚©‚ç‚Ç‚¤‚µ‚Ä‚à”Ä—p‚¾‚©‚ç�AŽ©•ª‚Ì–â‘è‚É�‡‚킹‚½
“ÁŽê�ðŒ�‚ðŽg‚Á‚Ä‘�‚‚·‚邱‚Ƃ͂ ‚é‚È�B
‚È‚é‚Ù‚Ç�BŒÂ�l“I‚Șb‚¾‚¯‚Ç�A‚¢‚ë‚ñ‚È‚±‚Æ‚ªŒq‚ª‚Á‚½‚í�B ƒ‰ƒCƒuƒ‰ƒŠ‚ÍŠm‚©‚ɔėp“I‚¶‚á‚È‚¢‚Æ‚¢‚¯‚È‚¢‚í‚È�B �s—ñƒ\ƒ‹ƒo�A‚Â�[‚©ŒÅ—L’lŒvŽZ‚Í‹»–¡�[‚¢�B ƒAƒ‹ƒSƒŠƒYƒ€�F�X’²‚ׂĂ¢‚邯‚Ç�A�Å�V‚̃Aƒ‹ƒSƒŠƒYƒ€‚Á‚ĂȂɂæ�H ‚Ü‚Ÿ“Á‹–‚Æ‚ç‚ê‚Ä•�’ʂɎg‚¦‚È‚¢‚ñ‚¾‚낤‚¯‚Ç�B ‚æ‚’m‚ç‚È‚¢‚¯‚ê‚Ç�AƒAƒ‹ƒSƒŠƒYƒ€‚É“Á‹–‚Í‚©‚¯‚ç‚ê‚邿‚Ë�H ƒAƒ‹ƒSƒŠƒYƒ€‚ðŽÀ‘•‚µ‚½ƒAƒvƒŠƒP�[ƒVƒ‡ƒ“‚ɑ΂µ‚Ă̂ݓÁ‹–‚©‚¯‚ç‚ê‚é‚ñ‚¾‚¯‚Á‚¯�H
>>596 >ƒ‰ƒCƒuƒ‰ƒŠƒAƒ“—p‚̃Rƒ}ƒ“ƒh‚ðŽg‚¦‚Î�Aˆê——�o‚¹‚邯Žv‚¤�B
‚¨—猾‚¤‚Ì–Y‚ê‚Ä‚½�BÄݸ½�I
ƒAƒ‹ƒSƒŠƒYƒ€‚È‚ñ‚©‚Å“Á‹–‚Æ‚ñ‚Ì‚Í�ó‚Ü‚µ‚¢�E�E�E ‚»‚ñ‚Ȃӂ¤‚É�l‚¦‚Ä‚¢‚½ŽžŠú‚ª�i‚’‚™
do 600 i = 1, 100 write(*,*) '600 get' 600 continue
module mod interface iface integer function func(i, j) integer :: i, j end function func end interface iface end module mod integer function func(i, j) use mod integer :: i, j func = i * j return end function func program main use mod print *, iface(10, 20) end program main ------------------------------------------------------- func = i * j 1 Error: Name 'func' at (1) is an ambiguous reference to 'func' from current program unit �ã‹L‚̂悤‚ȃGƒ‰�[‚ª‚łăRƒ“ƒpƒCƒ‹‚Å‚«‚Ü‚¹‚ñ module‚ðŽg‚í‚È‚¢�A‚ ‚é‚¢‚Ífunction‚ł͂Ȃsubroutine‚È‚çƒRƒ“ƒpƒCƒ‹‚Å‚«‚Ü‚µ‚½ ‚Ђå‚Á‚Æ‚µ‚Ä‘��Ì–¼‚Ífunction‚ɂ͎g‚¦‚È‚¢‚ñ‚Å‚µ‚傤‚©�H
>>601 integer function func(i, j)
‚Ì’†‚Ì
use mod
‚ª•s—v‚Ȃ̂łÍ
>>602 ‚Å‚«‚Ü‚µ‚½�B‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·
ŽQ�l‚É‚µ‚½ƒTƒCƒg‚ªŠÔˆá‚Á‚Ä‚¢‚½‚悤‚Å‚·‚Ë
604 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/10/10(“y) 16:32:59
....‚»‚ÌŒ¾‚¢‘�‚͂˂¥‚¾‚낤ww
>>604 ‚¾‚Á‚½‚ç‚»‚̃TƒCƒg‚ÌURL‚ð‹³‚¦‚Ä—~‚µ‚¢
ˆÀ‰¿ŠÔˆá‚¢‚Ü‚µ‚½
>>604 ‚¶‚á‚È‚
>>603 ‚Å‚·�B‚·‚݂܂¹‚ñ�B
‚Ü‚¸‚Ígeocities‚²‚Æ‚«‚É‚ ‚éƒTƒ“ƒvƒ‹‚ð‰L“ۂ݂ɂµ‚½Ž©•ª‚ð�ӂ߂邯‚±‚ë‚©‚çŽn‚ß‚é‚ñ‚¾
>>609 (ƒCƒ“ƒfƒ“ƒg—p)
module mod
contains
real function call_func(func, arg)
interface
real function func(arg)
real, intent(in) :: arg(2)
end function func
end interface
real, intent(in) :: arg(2)
call_func = func(arg)
return
end function call_func
end module mod
real function func(arg)
real, intent(in) :: arg(2)
func = arg(1) * arg(2)
return
end function func
program main
use mod
external func
real :: arg(2) = (/ 2.0, 3.0 /)
! dummy = func(arg)
print *, call_func(func, arg)
stop
end program main
>>609 ‚̃Rƒ�ƒ“ƒgƒAƒEƒg‚µ‚½•”•ª‚̃Rƒ�ƒ“ƒg‚ð‚Í‚¸‚·‚ƃRƒ“ƒpƒCƒ‹‚à’Ê‚è�A�³�í‚É“®�ì‚·‚é‚ñ‚Å‚·‚ª
ƒRƒ�ƒ“ƒgƒAƒEƒg‚·‚邯‚È‚º‚©ƒRƒ“ƒpƒCƒ‹‚·‚ç‚Å‚«‚Ü‚¹‚ñ
—�—R‚ª‚³‚Á‚Ï‚è‚í‚©‚ç‚È‚¢‚ñ‚Å‚·‚ª�A‚Ȃɂª–â‘è‚È‚ñ‚Å‚µ‚傤‚©�H
ƒRƒ“ƒpƒCƒ‰‚Ígcc 4.2.4
ƒGƒ‰�[ƒ�ƒbƒZ�[ƒW‚Í�«‚Å‚·
print *, call_func(func, arg)
1
Error: Type/rank mismatch in argument 'func' at (1)
>>610 Intel VF 11.046 ‚È‚ç’Ê‚é�B
‰ñ“š—L“Œä�À‚¢‚Ü‚· gccƒRƒ“ƒpƒCƒ‰‚̃oƒO‚Æ‚¢‚¤‚±‚Ƃłµ‚傤‚©‚Ë ”ÄŠÖ�”‚ðˆø�”‚É‚à‚Á‚Ä‚éŠÖ�”‚Ì‘��Ì–¼‚ð‚‚¯‚悤‚Æ‚·‚邯ƒRƒ“ƒpƒCƒ‹‚Å‚«‚È‚©‚Á‚½‚è(‚±‚ê‚ÍŽd—l�H)
>>612 PRINT•¶‚̃oƒO�L‚¢‚È�B
FUNCTION‚̕Ԃè’l‚ª�AVALUE‚Ȃ̂©ADDRESS‚Ȃ̂©�¡ˆê•s–¾‚Ȃ̂Å
‚V‚VŽž‘ã‚©‚çFUNCTION‚̕Ԃè’l‚ð‘ã“ü‚ðŒo‚¸‚ÉŽg‚¤‚Æ�A‹@ŽíˆË‘¶‚Ì�U‚é•‘‚¢‚ð
‚·‚邱‚Æ‚ª—Ç‚‚ ‚Á‚½�B
�ŋ߂͑å�ä•v‚È‚±‚Æ‚ª‘½‚¢‚ª�B
ŠÖ�”ˆø�”‚Ì‘��Ì–¼‚Í�AIVF‚Å‚Í�o—ˆ‚½�B‘½•ª�AŽd—l�ã‚Å‚Í�o—ˆ‚Ä‚¨‚©‚µ‚‚È‚¢‚ÆŽv‚¤�B
MODULE m_unko
INTEGER, PARAMETER :: kd = SELECTED_REAL_KIND(14)
INTERFACE gen
MODULE PROCEDURE sub1, sub2
END INTERFACE
ABSTRACT INTERFACE
REAL FUNCTION x_f(a)
REAL, INTENT(IN) :: a
END FUNCTION x_f
REAL(kd) FUNCTION d_f(a)
IMPORT
REAL(kd), INTENT(IN) :: a
END FUNCTION d_f
END INTERFACE
614 �F
556 �F2009/10/14(�…) 03:36:04
CONTAINS REAL FUNCTION sub1(f, x) REAL, INTENT(IN) :: x PROCEDURE (x_f) :: f sub1 = f(x) RETURN END FUNCTION sub1 REAL(kd) FUNCTION sub2(f, d) REAL(kd), INTENT(IN) :: d PROCEDURE(d_f) :: f sub2 = f(d) RETURN END FUNCTION sub2 END MODULE m_unko ! PROGRAM unko USE m_unko REAL :: x REAL(kd) :: d PROCEDURE (x_f), POINTER :: f PROCEDURE (d_f), POINTER :: g x = 4.0 * ATAN(1.0) d = 4.0_kd * ATAN(1.0_kd) f => SIN g => DSIN PRINT *, gen(f, x) PRINT *, gen(g, d) STOP END PROGRAM unko
>>613 ,612
ƒTƒ“ƒvƒ‹ƒR�[ƒh‚ ‚肪‚½‚¢‚ñ‚Å‚·‚ª�AƒRƒ“ƒpƒCƒ‹‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½
abstract interface‚̂Ƃ±‚ë‚Å�Å�‰‚̃Gƒ‰�[‚ª‚Å‚é‚̂Ō´ˆö‚𒲂ׂ½‚ñ‚Å‚·‚ª
hp‚Æintel‚̃}ƒjƒ…ƒAƒ‹‚ðŒŸ�õ‚µ‚Ä‚àabstract interface‚Ì�€–Ú‚ªŒ©‚‚©‚ç‚è‚Ü‚¹‚ñ‚Å‚µ‚½�E�E�E
>>615 ABSTRACT INTERFACE ‚ÍF2003‚Ì‹@”\‚Å�A‚Ü‚¾Intel‚ÌHelp‚É�Ú‚Á‚ĂȂ¢‚ª�AŽÀ‘•‚³‚ê‚Ä‚¢‚é�B
Cray‚Æ‚©�i‘½•ª�jIBM‚̃}ƒjƒ…ƒAƒ‹‚È‚ç�Ú‚Á‚Ä‚¢‚邯Žv‚¤�B‚Ü‚Ÿ‘f’¼‚ÉFortran95/2003�@Explained‚ð
Œ©‚é‚Ì‚ª‚¢‚¢‚ÆŽv‚¤‚ª�BGoogleBooks‚Å‚àƒy�[ƒW‚ª”ò‚΂³‚ê‚ĂȂ¯‚ê‚ÎŒ©‚ç‚ê‚é�B
‚µ‚©‚µ�A‚±‚ê‚Í–{Ž¿‚ł͂Ȃ¢�B“ñ“xInterface‚ð�‘‚‚Ì‚ª–Ê“|‚¾‚Á‚½‚©‚çŽg‚Á‚½‚Ü‚Å�B
‚±‚ê‚È‚ç‚Ç‚¤‚¾‚×�H
MODULE m_unko
INTERFACE gen
MODULE PROCEDURE sub1, sub2
END INTERFACE
CONTAINS
REAL FUNCTION sub1(f, x)
REAL, INTENT(IN) :: x
INTERFACE
REAL FUNCTION f(x)
REAL, INTENT(IN) :: x
END FUNCTION f
END INTERFACE
sub1 = f(x)
RETURN
END FUNCTION sub1
INTEGER FUNCTION sub2(f, x) REAL, INTENT(IN) :: x INTERFACE INTEGER FUNCTION f(x) REAL, INTENT(IN) :: x END FUNCTION f END INTERFACE sub2 = f(x) RETURN END FUNCTION sub2 ! REAL FUNCTION rmult2(x) REAL, INTENT(IN) :: x rmult2 = 2.0 * x RETURN END FUNCTION rmult2 ! INTEGER FUNCTION imult2(x) REAL, INTENT(IN) :: x imult2 = INT( 2.0 * x ) RETURN END FUNCTION imult2 END MODULE m_unko ! PROGRAM unko USE m_unko REAL :: x x = 4.0 PRINT *, gen(rmult2, x) PRINT *, gen(imult2, x) STOP END PROGRAM unko
>>616 ,617
—L“‚²‚´‚¢‚Ü‚·�BƒRƒ“ƒpƒCƒ‹‚Å‚«‚Ü‚µ‚½�BŠ®àø‚Å‚·
Žåƒvƒ�ƒOƒ‰ƒ€‚Éinterface‚ð�‘‚•û–@‚ÍŒ©‚‚¯‚½‚ñ‚Å‚·‚ª
module‚É‚‚‚Á‚Ä‚µ‚Ü‚¦‚Îinterface‚ð�‘‚©‚È‚‚Ä‚à‚Å‚«‚é‚ñ‚Å‚·‚Ë
FORTRAN‚â‚߂܂·‚©�H�lŠÔ‚â‚߂܂·‚©�H
‚Â DarkBASIC
Windows”ÅNetBeans‚̊‹«‚ÅgFortran‚ðŽg‚¢‚½‚¢‚ñ‚¾‚ª�A ŽÀ�sƒtƒ@ƒCƒ‹‚Ì�Ý’è‚ðg77.exe‚©‚çgfortran.exe‚ɕς¦‚邾‚¯‚Åok�H ‚à‚µ�A‚»‚̂ق©‚É�ݒ莖�€“™‚ ‚ê‚΋³‚¦‚Ä—~‚µ‚¢
module‚ŃIƒuƒWƒFƒNƒgŽwŒü‚Á‚Û‚¢‚±‚Æ‚ª‚Å‚«‚é‚̂͂킩‚Á‚½‚ñ‚Å‚·‚ª c++‚Æ‚©‚Å‚¢‚¤ƒCƒ“ƒXƒ^ƒ“ƒX‚ð�ì‚邱‚Ƃ͂ł«‚È‚¢‚ñ‚Å‚µ‚傤‚©�H
>>622 F2003‚È‚ç�o—ˆ‚é�BF95ˆÈ‘O‚Å‚Í�o—ˆ‚È‚¢�B
‚±‚ñ‚ÈŠ´‚¶‚©‚È�H ‚Æ‚è‚ ‚¦‚¸�AIVF 11.1 ‚ł͒ʂÁ‚½ ’N‚© Fortran 95/2003 Explained ‚Ì“ú–{Œê–ó�ì‚Á‚Ä module mod1 implicit none type Circle real :: d contains procedure :: area => func1 end type Circle contains real function func1(this) class(Circle) :: this func1 = (this%d ** 2) * 3.14 / 4.0 end function func1 end module mod1 program main use mod1 implicit none type(Circle) :: c c%d = 10.0 print *, c%area() end program main
>>624 ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·
Žc”O‚È‚ª‚çgfortran‚Å‚Í2003‚ªŽg‚¦‚È‚¢‚悤‚È‚Ì‚ÅŽŽ‚¹‚Ü‚¹‚ñ‚ª�E�E�E
ŽÀ�Û�AFortran‚ÅOOP‚͂ǂ¤‚È‚Ì�H ƒCƒ‰ƒl‚Á‚Ĉӌ©‚àŽUŒ©‚·‚邪�E�E�E
—��”‚Æ‚©�s—ñ�H
>>626 ‚»‚ê‚Å‘¬“x‚ª—Ž‚¿‚é‚È‚çƒCƒ‰ƒl�B—Ž‚¿‚»‚¤‚È‹C‚µ‚©‚µ‚È‚¢‚¯‚Ç�B
’†“cˆç’j�wŠî‘bFORTRAN�x�iŠâ”g�‘“X�j‚̃Rƒ‰ƒ€‚É
FORTRAN‚Å‚àCOMMON•¶‚ÆENTRY•¶‚ðŽg‚Á‚Ä�AƒIƒuƒWƒFƒNƒgŽwŒü�ÝŒv‚É
�]‚Á‚½ƒvƒ�ƒOƒ‰ƒ€‚ð�‘‚‚±‚Æ‚ª‚Å‚«‚é�B
‚Æ‚ ‚Á‚½‚¯‚Ç�A‹ï‘Ì“I‚È‚±‚Ƃ͉½‚à�‘‚¢‚Ä‚¢‚È‚©‚Á‚½�B
>>629 “Ç‚ñ‚ł݂½‚¢‚¯‚Ç�A‚¿‚å‚Á‚Æ‚¨’l’i‚ª�E�E�E
‚»‚¤‚¢‚â‚܂Ƃà‚ȃIƒuƒWƒFƒNƒgŽwŒü‚Ì–{‚ð“Ç‚ñ‚¾‚±‚Ƃ͈ê“x‚à‚È‚¢‚â
—Ç‚¢‹@‰ï‚¾‚©‚甃‚¿‚Ⴈ‚¤‚©‚µ‚ç
>>628 > COMMON•¶‚ÆENTRY•¶‚ðŽg‚Á‚Ä�AƒIƒuƒWƒFƒNƒgŽwŒü�ÝŒv‚É
‚È‚º‚©‚͂킩‚è‚Ü‚¹‚ñ‚ª�AƒCƒ„‚È—\Š´‚µ‚©‚µ‚Ü‚¹‚ñ�E�E�E
‚Æ‚¢‚¤‚©�AOOP—p‚É�ì‚ç‚ê‚ĂȂ¢Œ¾Œê‚ňÀ‘S‚ÈOOP‚ð‚·‚é‚Ì‚Á‚Ä–³—�‚¾‚µ�E�E�E ˆÀ‘S‚łȂ¢OOP‚È‚ñ‚ÄOOP‚̃�ƒŠƒbƒg‚È‚¢‚É“™‚µ‚¢‚µ�E�E�E ‘f�l‚Í‘å�l‚µ‚Java‚âC#Žg‚¤‚Ù‚¤‚ª�K‚¹‚ɂȂê‚é
>>629 �‰”ł̂ÍFORTRAN77‚ŃgƒŠƒbƒL�[‚ȃJƒvƒZƒ‹‰»‚ð‚·‚é˜b‚¾‚¯‚¾‚Á‚½‚©‚ç
‚½‚Ô‚ñ
>>631 >>632 ‚ÌŒ¾‚¤’Ê‚è
�¡ŽÀ�Û‚Ç‚¤‚Ȃ̂©
‰´‚Í2003‚Æ‚©•s•׋‚È‚ñ‚ł킩‚ç‚ñ
635 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/10/20(‰Î) 01:07:43
�³’¼�AOOP‚Æ‚»‚¤‚łȂ¢‚à‚̂̈Ⴂ‚ª‚æ‚‚í‚©‚ñ‚È‚¢�B –\—Í“I‚È�‘‚«•û‚¾‚¯‚Ç�A�uˆö‰ÊŠÖŒW‚ªˆêˆÓ�v‚Æ‚¢‚¤“_‚ł͓¯‚¶‚¾‚µ�B C++‚µ‚©ˆµ‚Á‚½‚±‚ƂȂ¢‚µ‚ ‚Ü‚è�[‚�G‚ç‚È‚©‚Á‚½‚©‚炾‚¯‚Ç�A OOP‚Ì�[•£‚É’H‚è’…‚©‚È‚¢‚Æ”»‚ç‚È‚¢‹@”÷‚à‚ ‚é‚Ì‚¾‚낤‚¯‚Ç‚È�B
>>629 ‚Ç‚ñ‚ÈŠ´‚¶‚Ì‚±‚Æ‚ðŒ¾‚Á‚Ä‚ñ‚·‚©�H
ŠÈ’P‚É‹³‚¦‚Ä‚‚¾‚µ‚
>>636 ‚½‚¢‚µ‚½˜b‚¶‚á‚È‚‚Ä
ENTRY•¶‚ðƒ�ƒ\ƒbƒh‚Ì‘ã‚í‚è‚É‚µ‚ăJƒvƒZƒ‹‰»‚ð‚܂˂邾‚¯�B
Œp�³‚Æ‚©‚»‚¤‚¢‚¤˜b‚͂Ȃ¢‚µ�A“®“I‚ɃIƒuƒWƒFƒNƒg‚ð�ì‚ê‚é‚킯‚Å‚à‚È‚¢�B
–{—ˆ‚ÌŽg‚¢•û‚Å‚à‚È‚¢‚©‚çŠë‚È‚Á‚©‚µ‚¢�B
‚½‚¾�A‚»‚ê‚Å‚à‘f‚ÌPascal‚æ‚è‚Í‹C‚ª‚«‚¢‚Ä‚é‚Á‚Ä‚±‚ƂȂñ‚¾‚È‚—
�¡‚¶‚á2003‚à‚ ‚邵
‘æ“ñ”ł͂ǂ¤‚È‚Á‚Ă邩’m‚ç‚È‚¢‚æ�B
>>635 Ž©•ª‚Å�‘‚•ª‚É‚ÍOOP‚͎ז‚‚È‚¾‚¯‚¾‚æ
OOP‚ª�^‰¿‚ð”Šö‚·‚é‚̂͑¼�l‚̃‰ƒCƒuƒ‰ƒŠ‚ðŽg‚¤‚Æ‚«�B
ENTRY•¶‚̓oƒO‚ł₷‚¢‚È�B COMMON‚Ì‘ã‚í‚è‚É�A‹¤—L•Ï�”‚ðŽÀŒ»‚·‚é‚Ì‚É�A‚V‚V‚ÅENTRYŽg‚Á‚½‚ª�A‚©‚¦‚Á‚Ă߂ñ‚Ç‚©‚Á‚½‚—
>>637 thx
2003‚ÅOOP‚ðæ�‚Á‚Ä‚é‚Á‚Ä‚±‚Æ‚Í�A‚ ‚é’ö“x‚܂Ƃà‚É‚Í�ì‚ç‚ê‚Ä‚ñ‚¾‚낤‚Ë‘½•ª�B
ƒAƒhƒŒƒXŽw’è‚Å‹ô‘R‚É‚»‚̃Cƒ“ƒXƒ^ƒ“ƒX‚ð”j‰ó‚µ‚¿‚Ⴄ�A‚È‚ñ‚ÄƒŠƒXƒN‚͂Ȃ¢‚悤‚É
�o—ˆ‚Ä‚é‚ñ‚¾‚낤�E�E�E�i‚Ç‚¤‚â‚Á‚ÄŽÀŒ»‚µ‚Ä‚ñ‚Ì‚©‚³‚Á‚Ï‚è‘z‘œ‚Å‚«‚È‚¢‚¯‚Ç�j
‚·‚¢‚Ü‚¹‚ñ�B�ŋߎn‚ß‚½’´�‰�SŽÒ‚Å‚·�B ŠÈ’P‚ȃVƒ~ƒ…ƒŒ�[ƒg‚Å open(10,file='testout.out',status='unknown',form='formatted') do n=0,nmax �@�@�@ŒvŽZ—ª write(10,30) t, a(1),a(2),a(3) 30 format(1H ,4(1pe12.4)) enddo ‚±‚ñ‚ÈŠ´‚¶‚Å”z—ñ‚Ì’l‚ð•\ަ‚µ‚悤‚ÆŽv‚¤‚̂ł·‚ª ‚È‚º‚©�o—̓tƒ@ƒCƒ‹‚ª‰ü�s‚³‚ê‚Ü‚¹‚ñ�„�ƒ g77‚ŃRƒ“ƒpƒCƒ‹‚µ‚Ä‚¢‚Ü‚·�BƒRƒ“ƒpƒCƒ‹‚͂ł«‚é‚̂ł·‚ª�E�E�E ‚ǂȂ½‚©ƒtƒ@ƒCƒ‹‚É�o—Í‚·‚邯‚«‚̉ü�s‚ÌŽd•û‚ð‚²‹³Žö‚µ‚Ä‚¢‚½‚¾‚«‚½‚¢‚̂ł· ‚¨Šè‚¢‚µ‚Ü‚·
>>641 ‚Å‚·‚ª
�o—̓tƒ@ƒCƒ‹‚ðdos‚É’¼‚µ‚Ă܂¹‚ñ‚Å‚µ‚½
Ž©ŒÈ‰ðŒˆ‚µ‚Ü‚·‚½
ƒtƒH�[ƒgƒ‰ƒ“‚̓tƒH�[ƒ}ƒbƒg•¶‚ª‚í‚©‚è‚É‚‚¢‚È‚Ÿ
>>642 FORMAT‚Ì�‘‚«•û‚ªŒÃ‚¢�B
‚Ü‚Ÿ‚‡‚V‚V‚¾‚©‚çŽd•û‚È‚¢‚Ì‚©�B
‚†‚X‚O‚ÅŠw‚тȂ¨‚¹‚ÎFORMAT‚à‚»‚ê‚قǂ‚炂Ȃ¢�B
Fortran77‚ł͓®“Iƒ�ƒ‚ƒŠŠ„•t‚¯(allocate)‚ÍŽg‚¦‚È‚¢‚Ì�H
>>644 ‘å‚«‚COMMON‚ðŽæ‚Á‚Ä�A•K—v‚ɉž‚¶‚ÄŽ©•ª‚Å�Ø‚è�o‚µ‚ÄŽg‚¤‚ñ‚¾�B
>>644 ‘å‚«‚COMMON‚ª‚Æ‚ê‚È‚¢ŠÂ‹«‚Ȃ̂ł·�B
allocate‚µ‚È‚¢‚Æ�Å‘åƒ�ƒ‚ƒŠ‚܂Ŏg‚¦‚È‚¢�B
>>647 ‚Þ‚©‚µ‰ß“nŠú‚Ì‹Z�p‚Æ‚µ‚ă_ƒCƒiƒ~ƒbƒNƒRƒ‚ƒ“‚Æ‚¢‚¤‚Ì‚ª‚ ‚Á‚½�B
‚Ђå‚Á‚Æ‚µ‚½‚çƒRƒ“ƒpƒCƒ‰‚̃IƒvƒVƒ‡ƒ“‚É‚ ‚é‚©‚à‚µ‚ê‚È‚¢�B
‚»‚Ì�ê�‡�A•�’ʂ̃Xƒ^ƒeƒBƒbƒN‚ȃRƒ‚ƒ“‚æ‚è‘å‚«‚—Ìˆæ‚ªŽæ‚ê‚é‚©‚à‚µ‚ê‚È‚¢�B
>>646 ‚»‚ñ‚È‚±‚Æ‹³‚¦‚¿‚á‚ç‚ß�`
allocate‚ðŽg‚¤‚ƃpƒtƒH�[ƒ}ƒ“ƒX‚ª—Ž‚¿‚é‚Á‚Ä–{“–‚Å‚·‚©�H ŽÀ�Û‚ÉŽg‚í‚ê‚éƒTƒCƒY‚ÉŠÖ‚í‚炸�H
>>650 ‘½•ªŒë‰ð�B
�ÓI”z—ñ‚Æ”ä‚ׂé‚È‚ç‚Î�A‚»‚ê‚ÍŽÀ�sŽž‚ɃAƒ�ƒP�[ƒg�ˆ—�‚·‚é‚Ì‚¾‚©‚ç—]Œv‚ÈŽžŠÔ‚Í‚©‚©‚邾‚낤�B
‚µ‚©‚µ�A‚»‚ê‚ÍŒvŽZŽžŠÔ‚É”ä‚ׂê‚Îàò––‚Ȃ͂¸�B
POINTER‚Å”z—ñ‚ð‚Æ‚Á‚½�ê�‡‚Í�Aƒ�ƒ‚ƒŠ�[‚ÌŠ„•t‚ª˜A‘±‚µ‚½ƒ�ƒ‚ƒŠ�[—̈æ‚É‚È‚é‚Æ‚ÍŒÀ‚ç‚È‚¢‚Ì‚Å
�Å“K‰»‚ªƒoƒŠƒoƒŠ‚È‚³‚ꂸ�AALLLOCATE‚łƂÁ‚½�ê�‡�i˜A‘±‚Ƀ�ƒ‚ƒŠ�[‚ðŽæ‚é�j‚Æ‚‚ç‚ׂÄ
ƒpƒtƒH�[ƒ}ƒ“ƒX‚ª—Ž‚¿‚é‰Â”\�«‚ª‚ ‚邯‚ÍŒ¾‚í‚ê‚Ä‚¢‚é�B
�‘‚«•û‚ªˆ«‚©‚Á‚½�B POINTER‚ÉALLOCATE‚µ‚½‚Æ‚«‚͘A‘±‚Ƀ�ƒ‚ƒŠ�[‚ðŽæ‚é‚¾‚낤‚ª�A POINTER‚É‚Í�AƒXƒgƒ‰ƒCƒh•t‚«‚̂ƂтƂу�ƒ‚ƒŠ�[‚ðŽwަ‚³‚¹‚邱‚Æ‚à‚Å‚«‚é‚Ì‚Å�A �Å“K‰»‚É‚Í�§ŒÀ‚ªŒW‚邱‚Æ‚ª‚ ‚邿‚¤‚Å‚ ‚é�B
653 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/10/29(–Ø) 10:15:13
>>651 ,652
‚È‚é�`�BFortran77‚Å
i=10000
call hairetu(i)
subroutine hairetu(i)
integer i
real data(i)
‚Ý‚½‚¢‚ÈŽg‚¢•û‚Å”CˆÓ‚̑傫‚³‚Ì”z—ñdata()‚ðƒTƒuƒ‹�[ƒ`ƒ““à‚ňµ‚¦‚邯‚Ç�A
‚±‚ꂪƒ�ƒ‚ƒŠ�ã‚ŃLƒ`ƒ“‚Æ•À‚ñ‚Å‚¢‚邯‚ÍŒÀ‚ç‚È‚¢(‚Æ‚ñ‚¾•”•ª
‚ÌŽæ‚舵‚¢‚ÍOS‚ª‚·‚é‚Ì‚©�H)‚©‚ç‚Ë�B
77‚æ‚èŒã‚Ìallocatable‘®�«‚Í�A�o—ˆ‚邾‚¯˜A‘±‚µ‚ÄŠm•Û‚µ‚Ä‚Ë�A‚Ì
‚¨‚È‚¶‚È‚¢‚Æ‚¢‚¤‚©ŠèŠ|‚¯‚ÆŽv‚¦‚΂¢‚¢‚Ì‚¾‚낤‚È�B
http://codepad.org/lbdDTMLE module‚ªŽg‚¤•Ï�”‚âŠÖ�”�AƒTƒuƒ‹�[ƒ`ƒ“‚ðŠO•”‚©‚çŽw’肵‚½‚¢‚̂ł·‚ª‰Â”\‚Å‚µ‚傤‚©�H�ã‚̃R�[ƒh‚ÍŠÔˆá‚Á‚Ă܂·‚ª•µˆÍ‹C‚ð’Í‚ñ‚Å‚à‚炦‚½‚ç‚¢‚¢‚©‚ȂƎv‚¢�Ú‚¹‚Ü‚µ‚½
>>651 ‚¶‚á‚ ‚à‚¤allocateŽg‚í‚È‚¢—�—R‚͂Ȃ¢‚È
ƒR�[ƒh‚àãY—í‚ɂȂ邵‚È
FORTRAN2008‚Å‚Í�Aƒ�ƒ‚ƒŠ�[˜A‘±‚ð•Û�á‚·‚é contiguous ‚Ì‘®�«‚ª“±“ü‚³‚ê‚邿‚¤‚¾�B ‚Ü‚¾2003‚àáï‚ɃRƒ“ƒpƒCƒ‰‚ª–³‚¢Žž“_‚ÅŒ¾‚Á‚Ä‚à‹S‚à‘å�΂¢‚¾‚ª�B
>>653 FORTRAN95/2003 Explained 20.2.1 p.331
"A non-pointer array occupies a sequence of contiguous storage sequences ‰]�X"
‚Æ‚ ‚é‚Ì‚Å�AALLOCATABLE ”z—ñ‚â AUTOMATIC ”z—ñ‚Í�A˜A‘±ƒ�ƒ‚ƒŠ�[‚ª•Û�Ⴓ‚ê‚Ä‚¢‚é‚ñ‚¶‚á‚È‚¢‚©‚È�B
‰pŒê‚ð‚Ý‚é‚Æ�A˜A‘±‚µ‚½�h•¡�”‚Ì�h•Û‘¶—̈æ‚ð�”Žì‚‚Ȃ¬‚É�è—L‚·‚é�A‚¾‚¯‚Ç�A ‚Ü‚ �AŽ©“®”z—ñ‚à˜A‘±‚µ‚½ƒ�ƒ‚ƒŠ‚ÉŠm•Û‚µ‚悤‚ÆAllocate‚ÌŽž‚Æ“¯‚¶’ö“x‚Ì“w—͂͂·‚邿‚ñ�A‚Æ‚¢‚¤‚±‚Æ‚©�B ”z—ñ‘S•”‚ª�hˆê‚‚Ì�h˜A‘±‚µ‚½ƒ�ƒ‚ƒŠ‹óŠÔ‚ÉŽû‚܂邩‚Ç‚¤‚©‚Í�A‚»‚Ì�uŠÔ‚̃�ƒ‚ƒŠŽg—p�󋵂ɂæ‚é‚ñ‚¾‚낤‚È�B ‘å‚«‚߂̌vŽZ‹@‚¾‚Æ�Aˆê‚‚̃}ƒVƒ“‚Å‚ÍOS‚âI/OˆÈŠO‚Ì•”•ª‚Í”r‘¼“I‚ÉŽg‚¦‚é‚©‚ç–â‘è‚Í�‚È‚¢‚Ì‚¾‚낤 ‚Æ‚¢‚Á‚Ă݂éƒeƒXƒg�B
>>658 ‚¢‚â�AŠ®‘S‚ɂЂƂ‚̘A‘±‚µ‚½ƒ�ƒ‚ƒŠ�[—̈æ‚È‚ñ‚Å“à‰Èˆã�H
“w—Í‹`–±‚ł͂Ȃ‚Ä�A•K�{‹`–±‚¾‚ÆŽv‚¤�B
‚Æ‚¢‚¤‚©�Acontiguous ‚Æ sequence‚Á‚ĈӖ¡“I‚ÉŽ—‚Ă邿‚È‚— ‚à‚¤�‚µ–¾Šm‚É�‘‚¢‚Ä—~‚µ‚¢‚à‚ñ‚¾�i�‘‚¢‚Ä‚é‚Ì‚©‚à‚µ‚ê‚ñ‚ª�j
661 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/11/04(�…) 03:39:24
�E�E�E‚ׂÁ•ʂɂ ‚ñ‚½‚Ì‚½‚߂ɘA‘±‚µ‚½ƒ�ƒ‚ƒŠ—̈æ‚ðŠm•Û‚µ‚Ä‚é‚킯‚¶‚á‚È‚¢‚ñ‚¾‚©‚ç‚Ë�A ‚Æ‚¢‚Á‚½‚Æ‚±‚ë‚©�B“w—͂͂·‚邵ƒAƒe‚É‚µ‚Ä‚‚ê‚Ä‚à‚¢‚¢‚¯‚Ç�A�â‘΂¶‚á‚È‚¢‚¼‚È‚à‚µ�B
ƒtƒH�[ƒgƒ‰ƒ“‚Á‚ătƒH�[ƒ~ƒ…ƒ‰�Eƒgƒ‰ƒ“ƒXƒtƒH�[ƒ}�[‚Á‚Ä‚¢‚¤‚‚ç‚¢‚¾‚©‚ç�A ‰ÈŠwŒvŽZˆÈŠO‚ɂ͌ü‚¢‚Ä‚¢‚È‚¢‚Ì‚©�H
‘å�Ì‚Í�A‘¼‚ÉŒ¾Œê‚ª‚È‚©‚Á‚½‚©‚ç�A‚È‚ñ‚Å‚àFortran‚Å�‘‚¢‚Ä‚½�B Œ»�݂łÍ�AŒü‚¢‚Ä‚éŒü‚¢‚ĂȂ¢ˆÈ‘O‚É�AŒ¾Œê‚Æ‚µ‚Č¢�B
664 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/11/04(�…) 12:39:17
‚»‚¤‚¢‚¦‚΂Ȃñ‚Ńgƒ‰ƒ“ƒXƒtƒH�[ƒ}�[‚È‚ñ‚¾‚낤 �”Ž®‚ð•ÏŒ`‚¹‚¸‚ɂȂé‚ׂ‚»‚̂܂܂Ì�‘‚«•û‚ŃR�[ƒh‚ɂł«‚é‚Ì‚ª Fortran‚̃�ƒŠƒbƒg‚¾‚Á‚½‚Í‚¸‚Ȃ̂É�B �¡‚ł͎g‚Á‚¿‚á‚¢‚¯‚È‚¢‚Æ‚³‚ê‚é•¶ŠÖ�”‚È‚ñ‚ă‚ƒ�‚»‚Ì–¼Žc‚¾‚æ‚Ë�B
>>663 ŒÃ‚¢‚䂦‚ɃRƒ“ƒpƒCƒ‰‚àƒ‰ƒCƒuƒ‰ƒŠ‚àŒÍ‚ê‚Ä‚¢‚Ä�A‚Ü‚¸ƒoƒO‚͂Ȃ¢
�Å“K‰»‚àˆê”Ô�¡‚Ì�Š�i‚ñ‚Å‚¢‚é
‚Æ‚¢‚¤‚킯‚Å�M—Š�«‚Æ‘¬“x‚ª—v‹�‚³‚ê‚é‹Ç–ʂŌ»�Ý‚àŽg‚í‚ê‚Ä‚¢‚é‚킯‚¾
ƒgƒ‰ƒ“ƒXƒtƒH�[ƒ}�[‚¶‚á‚È‚‚ăgƒ‰ƒ“ƒXƒŒ�[ƒ^‚¾‚º�B FORTRANˆÈ‘O‚͉‰ŽZŽ®‚àƒAƒZƒ“ƒuƒŠ‚Å�‘‚©‚È‚¯‚ê‚΂Ȃç‚È‚©‚Á‚½�A �”Ž®‚»‚Ì‚à‚̂Ńvƒ�ƒOƒ‰ƒ€‚ð‹L�q�o—ˆ‚鎖‚͉æŠú“I‚¾‚Á‚½‚ñ‚¾‚æ�B
= ‚Å‘ã“ü�A‚Æ‚¢‚¤‹K‘¥‚ðƒvƒ�ƒOƒ‰ƒ~ƒ“ƒO‚Ì�¢ŠE‚É•�‹y‚³‚¹‚Ä‚µ‚Ü‚Á‚½ ’£–{�l‚Å‚à‚ ‚é‚È�B
.eq.‚Æ‚©.and.‚Æ‚©Žg‚¦‚é‚Ì‚ÍC‚æ‚è‚à�D‚«
C++‚à and ‚â or Žg‚¦‚é‚í‚¢
>>668 .eq.‚Í==‚̂ق¤‚ªŒ©‚â‚·‚‚È‚¢�H
.and.‚Æ.or.‚à‘�‚&&‚Æ||‚ªŽg‚¦‚邿‚¤‚ɂȂÁ‚Ä—~‚µ‚¢‚í
.EQ. ‚Í‚Æ‚à‚©‚ .AND. ‚Æ‚© .OR. ‚͕ςȋL�†‚æ‚è•¶Žš‚Ì•û‚ª‚í‚©‚è‚â‚·‚¢‚ÆŽv‚¤‚ª‚È‚Ÿ
>>671 Ž^�¬�B
“™�†•s“™�†‚Í�”Šw‹L�†‚̂ق¤‚ª‚¢‚¢‚ª�A.AND. .OR. ‚Í‚±‚Á‚¿‚̂ق¤‚ª‚¢‚¢�B
&&¤||‚ÍŒ©‚Ä‚‚ê‚©‚炵‚ăCƒ}ƒCƒ`�B
—ðŽj“I‚É‚àEBCDIC‚É–³‚¢‹L�†‚¾‚©‚ç�AFORTRAN‚É“ü‚낤‚Í‚¸‚à–³‚©‚Á‚½�B
APL’[––Žg‚¦‚΂¢‚¢‚Ì‚©‚à’m‚ê‚ñ‚ª‚—
673 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/11/05(–Ø) 05:16:55
ƒRƒ“ƒ}‚ª 10�i�”•‚“®�¬�”“_‚Ì�¬�”“_�A—�˜_‰‰ŽZŽq‚Ì�ü‚è�Astructure‚Ì‹æ�Ø‚è ‚ÅŽg‚í‚ê‚é‚©‚çƒ�ƒ“ƒhƒCw�B –Ú‚ÌŠµ‚ꂾ‚낤‚È�BŽ©•ª‚Í .AND. .OR. ‚Ì•û‚ª‚݂₷‚¢‚¯‚Ç�B ƒXƒy�[ƒX–³‚µ‚¾‚Ƃ݂ɂ‚¢‚¯‚Ç�B
>>671 ,672
‚±‚ê‚Í‚à‚¤�D‚݂̖â‘肾‚낤‚È‚Ÿ�B
Ž©•ª‚Í‹L�†‚̂ق¤‚ª�A‰p�”Žš‚ɑ΂µ‚ĈႢ‚ª�Û—§‚‚ñ‚Å�D‚«‚¾‚È�B
‚ ‚Æ�A•¶Žš�”‚ª�‚È‚¢‚Ì‚à‚¢‚¢�B.AND.‚Í5•¶Žš‚à‚ ‚邵�B
>>673 �„10�i�”•‚“®�¬�”“_‚Ì�¬�”“_�A—�˜_‰‰ŽZŽq‚Ì�ü‚è
—g‚°‘«‚¶‚á‚È‚¢‚ª�A‚±‚ê‚̓Rƒ“ƒ}‚¶‚á‚È‚‚ăsƒŠƒIƒh‚¶‚á
>>674 CŒ¾Œê‚Í“ÁŽêŽ–�‚ ‚é‚ñ‚¾‚æ
Žj�ã�Å‚à‹L�†‚ª‘½‚¢Œ¾Œê‚ÍAPL‚Å�A–¢‚¾‚É‚±‚ÌŒ¾Œê‚ð’´‚¦‚é‚à‚Ì‚Í
�o‚Ä‚¢‚È‚¢‚ª�A‘æ“ñˆÊ‚ÉCŒ¾Œê‚ƂȂÁ‚Ä‚¢‚é(�¡‚ÍC++)
CŒ¾Œê‚͂Ƃɂ©‚—\–ñŒê‚ð‚Å‚«‚邾‚¯Œ¸‚炵‚½‚‚Ä�A‘½‚‚̃��[ƒh‚ð‹L�†‚É
‚µ‚½‚ÆŒ¾‚í‚ê‚Ä‚¢‚é
‚»‚Ì‚½‚ßCŒ¾Œê‚Ì—\–ñŒê‚͂킸‚©32ŒÂ‚µ‚©‚È‚¢
C++‚ÍC‚æ‚è‹L�†‚ª‘½‚¢‚É‚àŠÖ‚í‚炸—\–ñŒê‚Í‚©‚¦‚Á‚Ä‘�‚¦‚½
C++0x‚Å‚Í�X‚É‘�‚¦‚é
‚»‚è‚ጾŒê‚É‹@”\‚ð‚Ä‚ñ‚±‚à‚è‚É‚µ‚Ä‚é‚ñ‚¾‚©‚ç ‹L�†‚à—\–ñŒê‚à‘�‚¦‚邿‚È‚Ÿ Fortless‚ÍUnicode‚ʼn‰ŽZŽq‚ð’è‹`‚Å‚«‚é‚炵‚¢‚©‚ç�A‚à‚µ‚©‚µ‚½‚çŽg‚¦‚é‹L�†‚Ì �”‚Å‚ÍAPL‚ð‰z‚¦‚é‚©‚àw
Fortress‚¾‚Á‚½orz
Fortress‚ÍŽ€‚ñ‚¾‚ñ‚¶‚á‚È‚©‚Á‚½�H Sun�E�E�E(�L�GƒÖ�G�M)ÌÞܯ
680 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/11/06(‹à) 02:10:17
>>675 ‚»‚¤‚¢‚í‚ê‚邯Fortran‚Í0-9,a-ZˆÈŠO‚ÉŽg‚¤•¶Žš‚Í�‚È‚¢‚Ë�B
{}[]@^_%~`;<>?|\ ‚ÍŽg‚í‚È‚¢‚Å‚à�ςނË�B[]%\ ‚ÍŽg‚¤�󋵂͂ ‚邯‚Ç‘ã‘Ö‚ª‚ ‚邵�B
ŒÅ’è�‘Ž®‚ÅŒp‘±�s‚ÉŽg‚¤‚Æ‚©‚µ‚È‚¢‚ÆŽg‚í‚È‚¢•¶Žš‚ª‘½‚¢�B
��‚Í”÷–�B‹KŠiŠO‚¾‚¯‚Ç‚½‚܂Ɏg‚¤�B�”‚̓vƒŠƒvƒ�ƒZƒX‚µ‚Ä‚ê‚ÎŽg‚¤‚È‚¯‚Ç•W�€‚ł͂Ȃ¢‚È�B
‚¾‚©‚çEBCDIC‚¾‚Æ
>>680 ASCIIƒR�[ƒh‚ðŽg‚Á‚Ä‚é‚Ì‚Í�Aƒ~ƒjƒRƒ“‚Æ‚©WS‚Æ‚©ƒpƒ\ƒRƒ“‚Æ‚©‚µ‚å‚Ú‚¢ƒ}ƒVƒ“‚¾‚¯‚¾‚Á‚½‚ñ‚¾‚æ�B
F90‚Ì‹KŠi‚É�A‚₽‚ç‚ÆŒÅ—L•¶ŽšƒR�[ƒh‚ÆASCIIƒR�[ƒh•ÏŠ·‚Æ‚©‚ ‚é‚̂͂»‚Ì‚½‚ß�B
�¬•¶Žš‚ª’[––‚©‚çŽg‚¦‚È‚¢‚±‚Æ‚à‘½‚©‚Á‚½‚µ�B
�”’lƒtƒH�[ƒ}ƒbƒg‚àƒoƒ‰ƒoƒ‰‚¾‚Á‚½‚©‚ç�A�”’l‚ÌŠî�”‚â—LŒøƒrƒbƒg�”‚ð�q‚Ë‚éŠÖ�”‚à‚»‚ë‚Á‚Ä‚é�B
>>682 System/360‚É‚àASCII‚Æ‚Ì�Ø‚è‘Ö‚¦ƒXƒCƒbƒ`‚Í•t‚¢‚Ä‚½‚ñ‚¾‚¯‚Ç‚Èw
‚Ï‚Á‚ƃL�[ƒ{�[ƒh‚ð‚Ý‚Ä�E�E�E•K�{‚È‚Ì‚Í 0-9 A-Z .,()=+-*/' ‚¾‚¯‚©�BŒ©—Ž‚Æ‚µ‚È‚¯‚ê‚Î46•¶Žš�BSpace‚ª•K�{‚łȂ¢‚Æ‚±‚낪‚È‚ñ‚Æ‚àƒCƒJ‚·�B Žg‚í‚ê‚é•¶Žš�”‚ª�‚È‚¢‚̂̓pƒ“ƒ`ƒJ�[ƒhŽž‘オ‚ ‚é‚©‚炾‚낤‚È�B Vi‚Å•Ò�W‚µ‚â‚·‚¢‚킯‚¾w
CŒ¾Œê‚¾‚Á‚ăpƒ“ƒ`ƒJ�[ƒhŽž‘ã‚É�ÝŒv‚³‚ꂽ‚ñ‚¾‚æ scanf()‚È‚ñ‚Ä‚ ‚ê‚̓pƒ“ƒ`ƒJ�[ƒhŽž‘ã‚Ì–¼Žc ‚Ƃɂ©‚ƒ^ƒCƒv—Ê‚ðŒ¸‚ç‚µ‚½‚‚Ä‘½‚‚Ì—\–ñŒê‚ð‰‰ŽZŽq‚ɕς¦‚½
‚»‚ê‚͈Ⴄ�Bprintf‚âscanf‚Í�AFortran—p‚̃‰ƒ“ƒ^ƒCƒ€ƒ‹�[ƒ`ƒ“‚ð—¬—p‚µ‚½‚È‚²‚è�B CŒ¾Œê‚Ì”�˂͎å‚Ƀ~ƒjƒRƒ“•¶‰»Œ—‚Å�Aƒpƒ“ƒ`ƒJ�[ƒh‚¶‚á‚È‚�Aކƒe�[ƒv‚ƃeƒŒƒ^ƒCƒv‚ªŽå—¬�B ‹L�†‚¾‚Á‚ÄEBCDIC‚ɂȂ¢‚à‚̂𑽗p‚·‚邵�i‚»‚Ì‚¹‚¢‚Ńgƒ‰ƒCƒOƒ‰ƒt‚È‚ñ‚Ä‚à‚Ì‚à ‚Å‚«‚½‚肵‚½‚ªw�j
creat�i��j
>>685 ‹@”\‚Ì‘ã‘Ö‚ª‚È‚¢�A‚Æ‚¢‚¤“_‚Å‚Í�F‚Ì“YŽš”͈͎w’è‚à‚©‚È�A‚Á‚Ä‚ ‚ê
‚PˆÈŠO‚©‚ç”͈͎w’è‰Â‚Ȃ̂ÍF77‚Å‚à�o—ˆ‚½‚Á‚¯�H
•W�€‚Ì‹@”\‚Æ‚µ‚Ä�A‚Æ‚¢‚¤ˆÓ–¡‚Ë�B
>>689 ‚V‚V‚ł͔z—ñ‚Ì�錾‚̂Ƃ±‚낾‚¯‚¾‚Á‚½‚©�A•¶Žš—ñ‚ł͕”•ª•¶Žš—ñ‚ÌŽw’è‚ÉŽg‚¦‚½�B
‚ ‚ƃtƒH�[ƒ}ƒbƒg‚Å‚àƒRƒ�ƒ“‚ªŽg‚¦‚½‚Í‚¸�B
character*7 mojiretu mojiretu = 'smtwtfs' write(*,*) mojiretu mojiretu(2:6) = 'sssss' write(*,*) mojiretu ‚Ý‚½‚¢‚ÈŽg‚¢•û‚ÌŽ–‚¾‚Ë�B‹KŠi‚ª30”N‚‚ç‚¢‘O‚¾‚¯‚Ç�A‚»‚ÌŒã‚̃xƒNƒgƒ‹•\Œ»‚Ì“õ‚¢‚ª‚·‚é�B ‚»‚¤‚¢‚¤•¶Žš—ñŽæˆµ‚¢‚ÌŽù—v‚ª‚ ‚Á‚½‚©‚炾‚낤‚¯‚Ç�A�æ‚ð‚¢‚Á‚Ä‚½‚ñ‚¾‚È�E�E�E‚½‚Ô‚ñ�B ƒtƒH�[ƒ}ƒbƒg’†‚̗ႪŽv‚¢‚‚©‚È‚©‚Á‚½�B
�¡ŒãGPGPUŒn‚̃XƒpƒRƒ“‚ªŽå—¬‚ɂȂÁ‚Ä‚«‚½‚ç�A‚¢‚Á‚»C‚É�æ‚芷‚¦‚½‚Ù‚¤‚ª‚¢‚¢‚Ì‚©‚È�E�E�E ‚à‚¤‚µ‚΂炂͗lŽqŒ©‚¾‚¯‚Ç ‚»‚¤‚¢‚¦‚Î�ACUDA‚ª�™�X‚ÉFortran‚ɑΉž‚µ‚Ä‚«‚Ă邿‚¤‚¾‚¯‚Ç�AŽg‚Á‚Ä‚é�l‚¢‚é�H
>>693 PGI ‚ª CUDA ‘Ήž Fortran2003 ‚ð�o‰×‚µŽn‚ß‚½‚Ý‚½‚¢‚¾‚¯‚Ç�A’N‚©Žg‚Á‚ĂȂ¢‚Ì‚©‚È�H
GPGPU ‚à�̂̃AƒŒƒCƒvƒ�ƒZƒbƒT‚Ƃ悎—‚Ä‚¢‚é‚©‚ç�A‚·‚®”p‚ê‚Ä�I‚í‚邯‚©Œ¾‚¤˜b‚à•·‚¢‚Ä
‚È‚ñ‚È‚ñ‚¾‚©‚È�[‚—�@
PGIŠæ’£‚Á‚Ă邿‚È ‚Ü‚Ÿ�A‚¤‚Ü‚‚¢‚¯‚ÎIntel‚Ì“ñ”Ô�÷‚¶‚ȃ|ƒWƒVƒ‡ƒ“‚©‚ç’E‹p‚Å‚«‚邵‚È
697 �F
696 �F2009/12/14(ŒŽ) 01:05:55
ŠÔˆá‚¦‚Ü‚µ‚½ ‚·‚݂܂¹‚ñ
698 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/12/17(–Ø) 14:58:51
‚¢‚ë‚¢‚ë�l‚¦‚é‚à‚ñ‚¾‚Ë�[
700 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/12/18(‹à) 22:51:01
Fujitsu�»Fortran&C Package Windows”Å‚ª�»‘¢�E””„’†Ž~‚ƂȂÁ‚½‚½‚ß�A �¡ŒãWindows XP‚Ì’ñ‹Ÿ‚ª�I—¹‚·‚邯�V‚µ‚¢PC‚ÉŽg—p�o—ˆ‚È‚‚È‚é‚̂Š�V‚½‚ȃRƒ“ƒpƒCƒ‰�[‚Æ�”’lŒvŽZƒ‰ƒCƒuƒ‰ƒŠ‚ð’T‚µ‚Ä‚¢‚Ü‚·�B ‚ǂȂ½‚©‚¨Š©‚߂̃��[ƒJ‚ð‹³‚¦‚Ä‚‚¾‚³‚¢�B �ðŒ�‚Í�AWindows Vista & 7�ã‚Å“®�ì‚·‚éƒRƒ“ƒpƒCƒ‰�[‚ƃ‰ƒCƒuƒ‰ƒŠ‚Å ƒŠ�[ƒYƒiƒuƒ‹‚È‚à‚Ì�B ƒpƒ\ƒRƒ“‚ÍŽ„‚P�l‚Å70‘ä‚‚ç‚¢Žg‚Á‚Ä‚¢‚Ü‚·�B (Fujitsu�»‚̃‰ƒCƒZƒ“ƒX‚ÍŽg—p‚·‚é�l�”‚É‚©‚©‚è�A PC‚Ì‘ä�”‚ɂ͊֌W‚È‚©‚Á‚½‚Ì‚Å�d•󂵂Ă¢‚½‚̂ł·‚ª�B) ‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·�B
•xŽm’Ê‚ªPC—pFortran‚â‚ß‚é‚È‚ç�AOEM‚â‚Á‚Ä‚éƒAƒ�ƒŠƒJ‚ÌLahey‚͂ǂ¤‚·‚ñ‚¾‚ë�H
>>698 HPC‚ª�·‚ñ‚ɂȂè‚‚‚ ‚鎞‘ã‚É‚±‚ñ‚È‚±‚Æ‚â‚Á‚Ä‚½‚ç
–^‹@ŠÖ‚É–Ú‚ð•t‚¯‚ç‚ê‚Ä‘¦Ž€‚È‚ñ‚¶‚á‚—
–^‹@ŠÖ‚Ƃ͘b‚ð‚‚¯‚Ä‚©‚ç‚â‚ç‚©‚µ‚½‚̂łÍw
704 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/12/21(ŒŽ) 18:27:54
FORTRANŽg‚¢‚È‚ñ‚©ƒzƒ“ƒg‚É‚¢‚é‚Ì‚©‚¢‚È�E�E�E
705 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/12/22(‰Î) 10:23:48
cygwin�AMPICH2‚ÅCompaq Visual fortran 6.6 ‚ð“®�삳‚¹‚é•û–@‚ª‚ ‚ê‚΋³‚¦‚Ä‚‚¾‚³‚¢�B MPICH‚̃Cƒ“ƒXƒg�[ƒ‹Žž‚É set F90=~/Microsoft Visual Studio/DF98/Bin/f90 ‚Æ‚µ‚Ă݂½‚̂ł·‚ª�A”Fޝ‚µ‚Ü‚¹‚ñ‚Å‚µ‚½�B
706 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2009/12/26(“y) 10:50:24
‚ ‚Á‚»‚¤
707 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/03/28(“ú) 18:31:28
�¡�CIntel Visual Fortran ‚Æ PGI Visual Fortran ‚̂ǂ¿‚ç‚𔃂¨‚¤‚©–À‚Á‚Ä‚¢‚Ü‚·�B ŠF‚³‚ñ‚Ì‚¨Š©‚߂͂ǂ¿‚ç‚Å‚·‚©�H ŽÀ�s‘¬“x‚Æ‚©�CGPGPU‚Æ‚©�C•À—ñ‰»‚Æ‚©�CVisual Studio 2008 ‚É“��‡‚µ‚ăR�[ƒfƒBƒ“ƒO‚µ‚Ä‚¢‚邯‚«‚Ì Žg‚¢�ŸŽè‚Ì—Ç‚³‚Æ‚©�CƒRƒ“ƒpƒCƒ‰‚ÌŒµ–§‚³‚Æ‚©�i�© •Ï�”�錾•”‚Å”z—ñ‚ð a(3) ‚Æ�錾‚µ‚Ä‚¢‚é‚Ì‚É�C ŽÀ�s•”‚Å a(4) = 1 ‚Æ�‘‚¢‚½‚Æ‚«�CIVF ‚̃Rƒ“ƒpƒCƒ‰‚̓Gƒ‰�[‚ð�o‚µ‚Ä‚‚ꂽ‚¯‚Ç�CPVF ‚̂ق¤‚Í ƒGƒ‰�[‚È‚µ‚ŃRƒ“ƒpƒCƒ‹‚ª�¬Œ÷‚µ‚Ä‚µ‚Ü‚Á‚½�j�C‚»‚Ì‘¼�F�X‚Ȗʂłǂ¤‚Å‚µ‚傤�B
ŒÂ�l“I‚É‚Í PGI ‚Í‚ ‚Ü‚è�M—p‚µ‚Ä‚¢‚È‚¢ ‚‚©�AWindows ŠÂ‹«‚Å Fortran ‚ª�M—p‚Å‚«‚Ä‚¢‚È‚¢ # Intel ‚Í, ‚Ü‚Ÿ, ‚Ü‚µ‚È•”—Þ‚¾‚ÆŽv‚¤
>>707 >ŽÀ�s•”‚Å a(4) = 1 ‚Æ�‘‚¢‚½‚Æ‚«�CIVF ‚̃Rƒ“ƒpƒCƒ‰‚̓Gƒ‰�[‚ð�o‚µ‚Ä‚‚ꂽ‚¯‚Ç�CPVF ‚̂ق¤‚Í
>ƒGƒ‰�[‚È‚µ‚ŃRƒ“ƒpƒCƒ‹‚ª�¬Œ÷‚µ‚Ä‚µ‚Ü‚Á‚½�j�C‚»‚Ì‘¼�F�X‚Ȗʂłǂ¤‚Å‚µ‚傤�B
‚U‚UŽž‘ã‚Í�®�‡”z—ñ‚ª–¢�®”õ‚¾‚Á‚½‚Ì‚Å�AƒTƒuƒ‹�[ƒ`ƒ“‚Æ‚©‚Ì�æ‚ł͔z—ñƒTƒCƒY‚ð“K“–‚ɌŒ肵‚Ä
‚Í‚Ý�o‚µ‚ÄŽg‚¤‚±‚Æ‚ª‚æ‚‚ ‚Á‚½�B—ðŽj“IŽ–�î‚©‚çˆêŠT‚ɃGƒ‰�[‚É‚·‚é‚킯‚É‚à‚¢‚©‚ñ‚Ì‚æ�B
ƒRƒ“ƒpƒCƒ‰‚̃IƒvƒVƒ‡ƒ“‚Æ‚©‚ÅŒµŠi‚È”»’f‚ª‚Å‚«‚é‚Í‚¸‚¾‚ÆŽv‚¤‚©‚ç�A’²‚ׂĂ݂Ă¿‚å�B
IntelFortran‚É‚à90,95,2003–ˆ‚Ì‹KŠiˆá”½Œx��ƒIƒvƒVƒ‡ƒ“‚ª—L‚é�B
‚»‚¤‚¢‚¦‚Î�ŋ߂ÌPGI�@Fortran‚Í•Ä�‘‘åŠwŒ¤‹†‹@ŠÖ‚É�Š‘®‚Å‚ ‚ê‚Î�AWin—p‚ª–³�ž‚ÅŽg‚¦‚½‚悤‚È�H
ƒLƒƒƒ“ƒy�[ƒ“‚Í‚à‚¤�I‚í‚Á‚½‚©‚à‚µ‚ê‚È‚¢‚ª�B
IVF ‚Á‚Ä GPGPU ‚ª‚Å‚«‚é‚̂ł·‚©�H
>>710 ‚Å‚«‚È‚¢�B
CUDA‚ÌAPI‚ðCALL‚·‚邯‚¢‚¤ˆÓ–¡‚łȂç‚Å‚«‚È‚‚à–³‚¢�B
Fortran‚̃‰ƒbƒp�[‚ð�‘‚ƒI�[ƒvƒ“ƒ\�[ƒX‚ȃvƒ�ƒWƒFƒNƒg‚ª“®‚¢‚Ä‚¢‚½‚Í‚¸�B
GPU‘¤‚ÅŽÀ�s‚·‚é•”•ª‚Í–³˜_C‚Å—pˆÓ‚·‚é‚Ì‚¾‚Æ‚¨‚à‚¤‚ª�B
>>707 ƒRƒ“ƒpƒCƒ‰‚ÌŒµ–§‚³‚Æ‚©�i�© •Ï�”�錾•”‚Å”z—ñ‚ð a(3) ‚Æ�錾‚µ‚Ä‚¢‚é‚Ì‚É�CŽÀ�s•”‚Å a(4) = 1
ƒCƒ“ƒeƒ‹‚͓̂YŽš”͈̓`ƒFƒbƒN‚ªŠÃ‚¢‚æ‚Ë�B�_“î‚Æ‚à‚¢‚¦‚邯‚Ç�E�E�E�B
ƒRƒ“ƒpƒCƒ‹Žž‚ÌŒx��‚̂悳�H‚Å‚Í gfortran -Wall ‚ ‚½‚肪‚¢‚¿‚΂ñ‚©‚È‚Ÿ
ˆÈ‘O‚ÍDECŒn‚Å‚¢‚¢‚Ì‚ª‚ ‚Á‚½‚ñ‚¾‚¯‚Ç‚Ë�B‚³‚·‚ª‚É�¡‚Å‚Í�B
(ƒ�ƒCƒ“ŠK‘w‚Å) real a(10) call hoge(a) subroutine hoge(a) real a(2) a(10) = 1.0 ‚Æ‚¢‚¤‚Ì‚ª‚ ‚Á‚Ä�AƒXƒ‹�[‚·‚é‘å�l‚ªƒCƒ“ƒeƒ‹�BŽÀ�Ûƒ�ƒCƒ“ŠK‘w‚ł͔z—ña(10)‚Ì“à—e‚É–â‘è‚È‚¢‚킯‚¾�B •¶‹å‚¢‚¤‚Ì‚ªGfortran‚âFujitsu‚âPGI‚âIBM‚âNEC
>>714 ‚»‚Ìsubroutine‚̓‚ƒWƒ…�[ƒ‹‚¶‚á‚È‚¢�A•�’ʂ̊O•”ƒTƒuƒ‹�[ƒ`ƒ“‚Æ‚¢‚¤‘O’ñ‚¾‚æ‚Ë
a(11)=1.0‚ð‚â‚邯ƒGƒ‰�[‚ɂȂé�H
>>715 ‚»�A‚½‚¾‚ÌSubroutine.
Module ‚Í’l‚Ì’Ç�Õ‚ª–Ê“|�L‚¢‚µ�AƒRƒ“ƒpƒCƒ‹Žž‚É�‡”Ô‚ªŠÖŒW‚·‚邵�A
Common‚Æ“¯‚¶‚悤‚ÈŠï–‚È�U•‘‚ð‚·‚éŽ–‚à‚ ‚é‚̂Ŏ©•ª‚ł͎g‚í‚È‚¢�B‚È‚ê‚邯•Ö—˜‚炵‚¢‚¯‚Ç‚Ë�B
a(11)=1.0
‚»‚Ì‚à‚̂ɂ½‚¢‚µ‚Ä‚Í�AƒRƒ“ƒpƒCƒ‹�EŽÀ�sŽž‚Æ‚à‚É•¶‹å‚ð‚¢‚í‚È‚©‚Á‚½�B(ˆÈ‰º‚º‚ñ‚ÔIntel.‘¼‚̂͂µ‚ç‚È‚¢)�B
‚Å‚àŽÀ�sŽž‚É‚Ícall hoge()‚Ì‚ ‚Æ‚É a ˆÈŠO‚Ì•Ï�”‚ª‰ó‚ꂽ‚èw�A hoge() “à‚Å Invalid ‚È‚ñ‚½‚ç‚炪
‚Å‚½‚è�E�EƒRƒ“ƒpƒCƒ‹ƒIƒvƒVƒ‡ƒ“‚Å‚à•Ï‚í‚é�B‰½Ž–‚à‚È‚©‚Á‚½‚©‚̂悤‚ÉŽÀ�s�I—¹‚·‚邱‚Æ‚à‚ ‚éw
Intel Fortran ‚Í‘¬“x“I‚ɂ͗ǂ¢ƒRƒ“ƒpƒCƒ‰‚¾‚Æ‚¨‚à‚¤‚¯‚Ç�A
ŠJ”’†‚ÉŽg‚¤‚ɂ͊댯‚È��‚肪‚·‚é‚̂łӂ¾‚ñ‚Ígfortran�B
Intel ‚̂łà Visual ‚ª‚‚•û‚͂܂¾‚¢‚¢‚Ì‚©‚È‚ �H HP‚Í‚à‚¤DECŒn•ˆ‚ÌFortran‚Í�I—¹‚¾‚æ‚Ë�B
>>716 MODULE‚‚©‚¦‚æ‚—
Œ^ƒ`ƒFƒbƒN‚Æ‚©•Ö—˜‚¾‚ë�B
�ê�‡‚É‚æ‚Á‚Ä‚Í�Å“K‰»“x‚à‚ ‚ª‚é‚Í‚¸�B
‚Ü‚ŸƒJƒXƒP�[ƒhŒ^‚ÌƒŠƒRƒ“ƒpƒCƒ‹‚Ì—’‚ª‹N‚«‚é‚Ì‚ªƒEƒUƒC‚̂͂킩‚邪�A
‚ ‚ê‚àF2008‚ÅSUBMODULE‚ª“±“ü‚³‚ê‚ĂȂñ‚Æ‚©‚È‚é�B
2008‹»–¡‚ ‚邯‚Ç�AŽg‚Á‚Ä‚é�l‚ªŽü‚è‚É’N‚à‚¢‚È‚¢�E�E�E ‚Æ‚¢‚¤‚©ƒOƒO‚Á‚Ä‚à‚ ‚ñ‚Ü�î•ñ‚È‚¢‹C‚ª ‚Ç‚±‚ŕ׋‚·‚ê‚΂¢‚¢‚Ì�H
716 ‚Ì“YŽš”͈͂¤‚Á‚©‚肳‚ñ‚ÍIntel‚¾‚¯‚̘b‚Ë�B
‘¼‚̂̓Rƒ“ƒpƒCƒ‹ƒGƒ‰�[‚Å‚»‚êˆÈ�ã�i‚߂Ȃ©‚Á‚½‚©‚ç�B
>>717 ‚ ‚é’ö“x‚È‚ê‚ă}ƒCModule‚‚‚邯‚à‚¤–ß‚ê‚È‚¢‚‚ç‚¢ƒCƒC‚炵‚¢‚Ë�B
–ƒ–ò‚̂悤‚É‚à‚¤”²‚¯‚ê‚È‚‚È‚é�A‚킯‚ł͂Ȃ¢‚Ì‚¾‚낤‚¯‚Ç‚—
‚Å‚à•sе‚ê‚ȂƂ«‚ɃRƒ“ƒpƒCƒ‹‚·‚邾‚¯‚É‚©‚È‚è‚à‚ª‚¢‚½
‚‚炢ŒoŒ±‚ð‚µ‚Ä‚µ‚Ü‚Á‚½‚̂Ōh‰“’†�B‚Å‚à‚»‚Ì‚¤‚¿Žg‚¤‚ÆŽv‚¤‚æ�I
>>718 F2008‚Á‚Ä‹KŠi‚Ì•”•ª‚¾‚¯‚Å‚à“ǂ߂Ȃ¢‚Ì‚©‚È�H
ƒxƒ“ƒ_‚ª‘Ήž‚·‚邯‚©‚µ‚È‚¢‚Æ�¤‹ÆƒŒƒxƒ‹‚Ì–{‚Í�o‚È‚¢‚ÆŽv‚¤‚Ì‚Å
(�o‚Ä‚à“ú–{Œê‚Ì‚ª‚Å‚é‚Ì‚©‚Í‚ ‚₵‚¢‚ª)‚¹‚߂ė\�K‚—‚‚ç‚¢‚Í‚µ‚Ä‚¨‚«‚½‚¢�B
>>719 �‰�SŽÒ‚¾‚¯‚Ç“®“IŠ„•t”z—ñ‚Ì‚½‚߂Ƀ‚ƒWƒ…�[ƒ‹Žg‚Á‚Ă܂·
‚â‚Á‚Ï‚èƒRƒ“ƒpƒCƒ‹ƒGƒ‰�[‚â‚ç‚Í‘½‚¢‚Å‚·‚Ë
ƒiƒO‚³‚ñ‚¿‚ª–{‰Æ‚Ȃ̂©
NAG‚ª–{‰Æ‚Ȃ̂©‚æ‚—
–{‰Æ‚Á‚‚Á‚Ä‚à�‘‹L‚¾‚¯‚Ç�A‚Ü‚Ÿ‹cŽ–˜^“I�î•ñ‚Í‚±‚±‚É�W–ñ‚³‚ê‚Ä‚é‚È�B
softek‚Ý‚½‚¢‚È‚à‚ñ‚©�H‚—
726 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/04/06(‰Î) 06:01:13
‹³‚¦‚Ä’¸‚«‚½‚¢‚̂ł·‚ª�A 2ŽŸŒ³”z—ñ‚̈ꕔ•ª‚¾‚¯‚ðƒTƒuƒ‹�[ƒ`ƒ“‚É‘—‚Á‚½�ê�‡�A‚»‚Ì•”•ª“I‚È—v‘f‚¾‚¯‚ð Œq‚°‚½•ʂ̔z—ñ‚ªˆêŽž“I‚É�ì‚ç‚ê‚Ä�ˆ—�‚ð‚³‚ê‚é‚̂łµ‚傤‚©�H —Ⴆ‚Î�AŽåƒvƒ�ƒOƒ‰ƒ€–`“ª‚Å integer :: x(10 , 20) ‚Æ‚µ‚½�ê�‡�Aƒ�ƒ‚ƒŠ�ã‚É10 * 20 ‚Ì”z—ñ‚ª�o—ˆ‚Ü‚·‚æ‚Ë�H ‚±‚ê‚ð call hoge( x(3:8 , 12:19) , ... ) ‚Æ‚·‚邯�A 6 * 8 ‚̈ꎞ“I‚È x�f ‚ª•Ê“rƒ�ƒ‚ƒŠ�ã‚É�ì‚ç‚ꂽ‚¤‚¦‚Å ‚»‚ꂪƒTƒuƒ‹�[ƒ`ƒ“‚Ö‘—‚ç‚ê‚é‚̂łµ‚傤‚©�H –c‘å‚È”z—ñ‚ðˆµ‚¤‚Ì‚Å�A‚È‚é‚ׂŒø—¦“I‚ȃvƒ�ƒOƒ‰ƒ€‚ð�‘‚«‚½‚¢‚̂ł·�D •׋‚µŽn‚߂̎҂Ȃ̂Å�Aƒgƒ“ƒ`ƒ“ƒJƒ“‚È‚±‚Æ‚ðŒ¾‚Á‚Ä‚¢‚½‚ç‹°�k‚Å‚·...
>>726 ‚»‚¤‚¢‚¤˜A‘±‚µ‚Ä‚¢‚È‚¢‚Ì‚Ícopy in - copy out‚Å’†ŠÔ‚̃eƒ“ƒ|ƒ‰ƒŠ”z—ñ‚ªˆÃ–Ù‚É�ì‚ç‚ê‚é�B
ˆêŽŸŒ³‚ÉŠÒŒ³‚µ‚½‚Æ‚«‚ɘA‘±‚µ‚Ä‚¢‚é�ê�‡‚Í�AƒRƒs�[‚ð�ì‚é‚©‚Ç‚¤‚©‚Í�ê�‡‚É‚æ‚邯Žv‚¤�B
ƒf�[ƒ^‚ªƒV�[ƒPƒ“ƒVƒƒƒ‹‚¾‚Á‚ÄŽwަ‚·‚éƒIƒvƒVƒ‡ƒ“‚ ‚Á‚½‚悤‚È�H ‚¢‚¸‚ê‚É‚µ‚Ä‚à�Acall hoge( x(3:8 , 12:19) , ... ) ‚¾‚Æ�uˆêŽŸŒ³‚ÉŠÒŒ³‚µ‚½‚Æ‚«‚ɘA‘±�v‚µ‚Ä‚¢‚È‚¢‚©‚ç�AƒRƒs�[‚Í”ð‚¯‚ç‚ê‚È‚¢‚¾‚낤‚È
729 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/04/06(‰Î) 17:55:20
‚¤‚Ђå�[�I‚e‚�‚’‚”‚’‚�‚Ž�I�I‚P‚P
Fortran2011‚Ì�ô’肪Žn‚Ü‚Á‚½‚Ì‚©‚ÆŽv‚Á‚½
•´‚ç‚킵‚¢‚¼‚—
>>729
731 �F
726 �F2010/04/07(�…) 07:28:05
>>727 , 728
‚È‚é‚Ù‚Ç�B‚Ç‚¤‚à‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
�@
—]Œv‚ȃ�ƒ‚ƒŠ‚ð�Á”‚¹‚È‚¢‚½‚߂ɂÍ�A
call hoge( x(3:8 , 12:19) , ... ) ‚Í”ð‚¯�A
call hoge2( x, 3, 8, 12, 19, ...) ‚ȂǂƂµ‚Ä�AƒTƒuƒ‹�[ƒ`ƒ“‚Ö‚Í x ‚̂܂ܓn‚µ‚Ä
ŽÀ�Û‚É‘€�삵‚½‚¢”z—ñ—v‘f”Ô�†‚à•ʂɎw’è‚·‚邯‚¢‚Á‚½•û–@‚ª—Ç‚¢‚Á‚Ä—�‰ð‚ł悢‚Å‚µ‚傤‚©
‚à‚¤ˆê“_Ž¿–₪‚ ‚é‚̂ł·‚ª�A
call hoge2( x, ... ) ‚Æ�@call hoge2( x(:), ... ) ‚Í‘S‚“¯‚¶‚à‚̂łµ‚傤‚©�H
ƒRƒ“ƒpƒCƒ‰�[‚É‚æ‚肯‚è‚Å‚·‚©�H
>>731 ‚ ‚‚܂Ŏ©•ª‚Ì—�‰ð‚¾‚¯‚Ç
�„—�‰ð‚ł悢‚Å‚µ‚傤‚©
yes
�„‘S‚“¯‚¶‚à‚̂łµ‚傤‚©�H
yes
733 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/04/08(–Ø) 00:15:00
‚͂Ƃâ‚Ü‚—‚—‚—‚—‚—‚—‚—‚—‚— “V‘RƒoƒJ‚—‚—‚—‚—
734 �F
733 �F2010/04/08(–Ø) 00:16:10
‚·‚Ü‚ñ�A�΂¢‚·‚¬‚Ä�AŒë”š‚µ‚½‚—‚—‚—‚—‚—‚—
�š�u�Ž¡‰Æ‚ª‚΂©‚Å‚Í�‘‚à‚½‚Ê�v��Œö–±ˆõŒ¤�C‚ÌŒPަ‚Å”µŽRŽñ‘Š
�E”µŽR—R‹I•vŽñ‘Š‚Í‚V“ú‚Ì�‘‰ÆŒö–±ˆõ�‡“¯�‰”CŒ¤�CŠJ�uŽ®‚ÅŒPަ‚µ�A“ü�È‚µ‚½‚΂©‚è‚Ì
�@�V�l‚ðŒÛ•‘‚µ‚½‚ª�A‚»‚Ì’†‚Å�u�Ž¡‰Æ‚ª‚΂©ŽÒ‚Ì�W’c‚Å‚Í�i�‘‚Í�j‚à‚½‚È‚¢�v‚ȂǂÆ
�@’E�ü‹C–¡‚É”Œ¾‚·‚é�ê–Ê‚ª‚ ‚Á‚½�B
�@Žñ‘Š‚Í’í‚Å‚ ‚锵ŽR–M•vŒ³‘�–±‘Š‚ª�Ž¡‰Æ‚ðŽu‚µ‚½�Û�A‘å‘ Ž––±ŽŸŠ¯‚ðŒo‚Ä
�@�ŠE“ü‚肵‚½•ƒˆÐˆê˜YŒ³ŠO‘Š‚ª�u�Ž¡‰Æ‚È‚ñ‚Ä‚à‚͕̂¨‚²‚¢‚ð‚·‚é�‚È‚¢‚΂©ŽÒ‚¾�v‚Æ
�@”½‘΂µ‚½˜b‚ð�Љî�B�u•ƒ�e‚Í–ð�l‚¾‚Á‚½‚±‚ƂɌւè‚ðŠ´‚¶‚Ä‚¢‚½�v‚ÆŒê‚éˆê•û‚Å�A
�@�uƒgƒbƒv‚ÌŽñ‘Š‚ª‘å‚΂©ŽÒ‚Å‚ ‚ê‚Î�A‚»‚ñ‚È�‘‚ª‚à‚‚킯‚ª‚È‚¢�v‚ÆŒJ‚è•Ô‚µ‚½�B
�@Žñ‘Š‚Æ‚µ‚Ä‚Í�A�Ž¡Žå“±‚Ö‚ÌŒˆˆÓ‚ðŽ¦‚µ‚‚”µŽR“àŠt‚Ì—D�G‚³‚ð‹’²‚µ‚½‚©‚Á‚½‚悤‚¾‚ª�A
�@Žw“±—Í•s‘«‚⎩‚ç‚Ì”Œ¾‚ð‚ß‚®‚é–À‘–‚ªŽw“E‚³‚ê‚Ä‚¢‚邾‚¯‚É�A�V�lŒö–±ˆõ‚à•¡ŽG‚È
�@•\�‚Á‚½�B
�@
http://www.jiji.com/jc/c?g=pol_30&k=2010040700743
ƒXƒŒƒ^ƒC‚à“ǂ߂Ȃ¢ƒoƒJ
>>735 ”µŽR‚³‚ñ‚±‚»ƒXƒŒƒ^ƒCŒ©‚Ä‚‚¾‚³‚¢�B
737 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/04/08(–Ø) 17:04:56
‚±‚̃XƒŒ2000‚Å‚à90‚Å‚à77‚Å‚à66‚Å‚à‚È‚�A–¢‚¾‚ÉIV‚©‚æ�B
�@�@�@�@LOOPY�@���@‚V‚R‚V �@�@�@�@PRINT *, LOOPY END
test
741 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/07/05(ŒŽ) 17:00:13
ƒRƒ“ƒpƒCƒ‰‚ÌFortran2008‘ΉžŽžŠú‚Á‚Ä‚¢‚Â� ‚ɂȂé‚Å‚µ‚傤‚©‚Ë�H GNU, Intel, PGI‚Ȃǂ̃�ƒWƒƒ�[�Ђł¢‚¢‚Ì‚Å�A‚´‚Á‚‚è—\‘z‚µ‚Ä‚‚ê‚Ü‚¹‚ñ‚©�H
>>742 Intel Fortran‚𒲂ׂĂ݂܂µ‚½‚ª�AŠm‚©‚É2003‚ÍŠ®‘S‘Ήž‚µ‚ĂȂ¢‚Å‚·‚Ë�B
ƒRƒ“ƒpƒCƒ‰‚̑Ήž‚Á‚ăXƒs�[ƒh“I‚É‚à‚±‚ñ‚È‚à‚ñ‚È‚ñ‚Å‚·‚©‚Ë�H
‚ ‚Æ�AƒWƒFƒbƒ^�[ƒ}ƒ‹ƒX‚Á‚Ä‚¢‚¤‚͓̂S˜rƒAƒgƒ€‚ÌƒŠƒ�ƒCƒN‚È‚ñ‚Å‚·‚Ë�B
40Œã”¼‚Æ‚¨Œ©Žó‚¯‚µ‚Ü‚µ‚½�B
>>743 IntelŒfަ”‚ÌSteve Lionel‚̃JƒLƒR‚Å‚Í�AIVF‚Ì2003Š®‘S‘Ήž‚Ív12.0‚ɂȂÁ‚Ä‚©‚ç‚Æ‚¢‚¤‚±‚Æ‚¾‚Á‚½‹C‚ª‚µ‚Ü‚·�B
�iƒ\�[ƒXƒJƒLƒR‚ªŒ©‚‚©‚ç‚È‚¢‚—�j�@�¡‚̂Ƃ±‚ë�V‹@”\‚Ì‚¤‚¿‚Å‚Í�Aparametric type ‚ª‘S‚Žè•t‚©‚¸‚Ȃ̂Å�A
�¡”N’†‚ÍŠ®‘S‘Ήž‚Í–³—�‚©‚È�H
‚½‚¾‹KŠi‚ւ̑ΉžƒXƒs�[ƒh‚Í‚±‚ñ‚È‚à‚ñ‚¶‚á‚È‚¢‚Å‚·‚©‚Ë�BC99‚È‚ñ‚©‚à‚P‚O”N‚‚ç‚¢‚©‚©‚Á‚Ä‚¢‚Ü‚·‚µ�B
ACM SIGPLAN Fortran Forum‚É�AƒRƒ“ƒpƒCƒ‰‚ÌF2003‘Ήž“x‚Ì‹LŽ–‚ª–ˆ�†�Ú‚Á‚Ä‚¢‚Ü‚·‚Ì‚Å�AŒäŽQ�l‚܂łÉ�B
ttp://portal.acm.org/browse_dl.cfm?coll=&dl=ACM&idx=J286&linked=1&part=newsletter —L—¿‚Å‚·‚ª�E�E�E
ƒWƒFƒbƒ^�[ƒ}ƒ‹ƒX‚Í�A’˜�ìŒ ‚ÌŠÖŒW‚ÅŽè’ËŽ¡’ŽŽ©�g‚ª�ì‚Á‚½ƒAƒgƒ€‚̃pƒ`ƒ‚ƒ“‚Å�AƒŠƒ�ƒCƒN‚Ƃ͂¿‚ƈႤ‚ñ‚Å‚·�B
ƒpƒ`ƒ‚ƒ“‚炵‚�A‚È‚ñ‚Æ‚à�Ⴆ‚È‚¢�E�E�E
VisualStudio2010‚Á‚Ä‚à‚¤�o‚Ä‚é‚Ì‚Ë IntelFortran‚É‚Í�¡“x‚±‚»Intellisense‚ɑΉž‚µ‚Ä‚à‚ç‚¢‚½‚¢‚à‚Ì‚¾
746 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/07/08(–Ø) 13:13:33
Ž¿–₳‚¹‚ĉº‚³‚¢�B 64*64*128Œ³‚̘A—§•û’öŽ®Ax=b‚ð‰ð‚‚½‚ß‚Émkl‚ðŽg‚Á‚Ä‚¢‚Ü‚·�B ŒW�”�s—ñ‚̈öŽq•ª‰ð‚܂ł͕À—ñ‰»‚µ‚ÄŒvŽZ‚³‚ê‚é‚̂ł·‚ª�A ‹�‰ð‚Ì•”•ª‚Å‚ÍCPUŽg—p—¦‚ª100%‚ɂȂÁ‚Ä•À—ñ‰»‚³‚ê‚Ü‚¹‚ñ�B ‰ð‚ð‹�‚߂邯‚±‚ë‚ðƒRƒ�ƒ“ƒgƒAƒEƒg‚·‚邯CPUŽg—p—¦‚ª800%‚ɂȂé‚̂Š‹�‰ð‚Ì•”•ª‚Å•À—ñ‰»‚³‚ê‚Ä‚¢‚È‚¢‚̂͊m‚©‚¾‚ÆŽv‚¢‚Ü‚·�B pardiso�Adss‚ðŽŽ‚µ‚Ü‚µ‚½‚ª�A—¼•û‚Æ‚à“¯‚¶‚Å‚µ‚½�B ’Š�Û“I‚ÈŽ¿–â‚Å�\‚µ–ó‚È‚¢‚Å‚·‚ª�A‚Ç‚¤‚µ‚Ä�ã‚̂悤‚È‚±‚Æ‚ª‹N‚«‚é‚̂łµ‚傤‚©�H ‚»‚à‚»‚à‹�‰ð‚Ì•”•ª‚Í•À—ñ‰»‚³‚ê‚Ä‚¢‚È‚¢‚̂łµ‚傤‚© mkl‚̃o�[ƒWƒ‡ƒ“‚Í Math Kernel Library 10.1 for Mac OS* X ifort‚̃o�[ƒWƒ‡ƒ“‚Í ifort (IFORT) 11.0 20081105 ŒvŽZ‹@‚Í Mac OS X 10.4.11 Quad-Core Intel Xeon 3.0GHz x2 ƒRƒ“ƒpƒCƒ‹ƒIƒvƒVƒ‡ƒ“‚Í -ipo -O2 -unroll2 -openmp -openmp-report2 -lmkl_solver_lp64 -lmkl_intel_lp64 -lmkl_intel_thread -lmkl_core -liomp5 -lpthread pardiso‚Å‚Í export OMP_NUM_THREADS=8 ‚Æ‚µ‚½�ã‚Å�Aiparm(1)=0,iparm(3)=8‚Æ‚µ‚Ä‚¢‚Ü‚·�B ‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·�B
747 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/07/08(–Ø) 14:24:28
64x64x128 ‚æ‚è‚Ù‚ñ‚Ì‚è‘å‚«‚¢�”Žš‚Ì”z—ñ‚É‚µ‚Ä�E�E�E�E‚Æ‚©�A‚©‚È�H‚ ‚Ä‚¸‚Á‚Û�B MKL ‚Á‚Ä�ŋߎg‚Á‚ĂȂ¢‚¯‚Ç“¯‚¶‚ OpenMP ‚ňµ‚¤—\’è‚Ȃ̂Å�E�E�E ˆÌ‚¢�l‚Ì�oŒ»‚ðˆê��‚ɑ҂Ƃ¤‚Ë‚—
748 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/07/08(–Ø) 14:26:07
‚ÆŽv‚Á‚½‚¯‚Ç�A -unroll2 ‚ð -unroll0 (ƒAƒ“ƒ��[ƒŠƒ“ƒO Off) -unroll (“K“–‚ȃfƒtƒH’l�A‚½‚Ô‚ñ‚W) ‚É‚µ‚Ä‚à“¯‚¶‚©‚È�H
749 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/07/08(–Ø) 14:29:52
‚³‚ç‚É�E�E�E Inter-procedural Optimizer ‚ð�؂邩�A ‚à‚µ743‚³‚ñ‚Ì�ì‚Á‚½ƒ\�[ƒX‚ªˆêŒÂ‚¾‚¯‚È‚ç�A -ip ‚É‚µ‚ÄŽ©�ìƒ\�[ƒX“à‚¾‚¯‚ÉInline �Å“K‰»‚ð�T‚¦‚é�E�E‚Æ‚©�B �E�E�E‚Å‚à100�“‚«‚Á‚¿‚è‚ÅŽ~‚Ü‚Á‚Ä‚é‚̂Ȃç�A‚ ‚Ü‚èŠÖŒW‚È‚³‚»‚¤‚¾‚—
‚Æ‚¤‚©‰½‚Å‰ð‚¢‚Ä‚é‚Ì�H •�’Ê‚Í�s—ñ‚̃^ƒCƒv�i‘e–§‚Æ‚©�j‚Å‘I‚Ô‚ÆŽv‚¤‚¯‚Ç
751 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/07/08(–Ø) 19:29:00
ƒŒƒX‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·
>>750 ‘Î�Û‚Æ‚µ‚Ä‚¢‚é�s—ñ‚Í‘a�s—ñ‚Å‚·�B
Žg‚Á‚½‚Ì‚Ímkl‚Ì’†‚É‚ ‚é
pardiso(•À—ñ‰»‘Ήž’¼�Ú–@ƒXƒp�[ƒX �E ƒ\ƒ‹ƒo�[)‚Æ
dss(’¼�Ú–@ƒXƒp�[ƒX ƒ\ƒ‹ƒo�[)‚Å‚·�B
>>747-750 ‚·‚×‚ÄŽŽ‚µ‚Ă݂܂µ‚½‚ª‰ðŒˆ‚͂ł«‚Ü‚¹‚ñ‚Å‚µ‚½�B�B�B
‚ ‚Æ�Aƒ\�[ƒX‚Í•¡�”‚ ‚è‚Ü‚·�B
>>746 Œ³‚ªƒXƒp�[ƒX‚Å‚à�ALU�i‚ ‚é‚¢‚̓RƒŒƒXƒL�[�j•ª‰ð‚µ‚½Žž‚É�o‚éŽOŠp�s—ñ‚ª—]‚èƒXƒp�[ƒX‚ɂȂç‚È‚¢‚±‚Æ‚à‚ ‚邪�A
‚»‚Ì�ê�‡paradiso‚̓�ƒ‚ƒŠ�[�ã‚É�s—ñ—v‘f‚ð’u‚©‚È‚¢‚Å�ADisk‚É�‘‚«�o‚µ‚ÄŒvŽZ‚·‚邿‚¤‚¾�iOut Of Coreƒ‚�[ƒh)�B
‚±‚ÌŽž‚̓Vƒ“ƒOƒ‹ƒXƒŒƒbƒh‚Å“®‚‚炵�B
‚»‚¤‚¢‚¤�󋵂©‚à�H
�¬‚³‚ß‚Ì�s—ñ‚ÅŽŽ‚µ‚Ă݂邩�AOOC‚ɂȂç‚È‚¢‚悤‚ɃIƒvƒVƒ‡ƒ“‚ð•Ï‚¦‚Ă݂½‚ç�iƒ�ƒ‚ƒŠ�[‚ª‘«‚è‚ê‚΂¾‚¯‚Ç
Dual Xeon‚Ȃ猋�\�Ï‚ñ‚Å‚ñ‚¶‚á‚È‚¢‚Ì�H�j�B
’¼�Ú–@‚ÍŽg‚Á‚½‚±‚ƂȂ¢‚Ì‚Å�AŠO‚µ‚Ä‚½‚炲‚ß‚ñ‚—
OOCƒ‚�[ƒh‚Á‚Ä•�’ʂ̃Xƒ�ƒbƒv‚Ƃ͈ႂÄ�A‚‚܂肿‚á‚ñ‚ÆOOC—p‚Ì�ˆ—�‚ð‚µ‚Ä‚é‚ñ‚¾‚æ‚Ë�H ‚Å‚à‚»‚ê‚Á‚Ä‹ê“÷‚Ì�ô‚Æ‚¢‚¤‚©�AŒ‹‹ÇƒXƒ�ƒbƒv‚ƂقƂñ‚Ǖςí‚ç‚ñ‚‚ç‚¢ŽžŠÔ‚ª‚©‚©‚é ƒCƒ��[ƒW‚ª‚ ‚é‚ñ‚¾‚¯‚Ç�AˆÓŠO‚Æ‚»‚¤‚Å‚à‚È‚¢‚Ì‚©‚È�H Ž©•ª‚ÍŠî–{ƒCƒ“ƒRƒA‚ÉŽû‚Ü‚ç‚È‚¢‚悤‚È‚ç‘f’¼‚É’ú‚߂Ă܂·‚ª‚—
>>753 ŠO•”‹L‰¯‚Æ‚ÌI/O‚Å’n�–‚Ì’x‚³‚¾‚낤�B
>>746 ŒvŽZ‹@‚Í Mac OS X 10.4.11 Quad-Core Intel Xeon 3.0GHz x2
‚¢‚¢‚È�B˜b‚»‚ê‚¿‚Ⴄ‚¯‚Ç�A‚¢‚‚ç‚Å‚µ‚½�H
Mac‚Í‚à‚¤�I—¹‚炵‚¢‚æ‚È ƒWƒ‡ƒuƒY‚̓Âɗx‚炳‚ꂽ�l¶Ü²¿½
757 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/07/09(‹à) 22:53:53
ƒŒƒX‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
>>752 ttp://www.intel.com/software/products/mkl/docs/webhelp/ssr/functn_pardiso.html Ž„‚ªŽg‚Á‚Ä‚¢‚éƒo�[ƒWƒ‡ƒ“‚Ìmkl‚̃}ƒjƒ…ƒAƒ‹‚É‚Íout of coreƒ‚�[ƒh‚ɂ‚¢‚Ä‚Í�‘‚©‚ê‚Ä‚¢‚Ü‚¹‚ñ‚Å‚µ‚½�B
�ã‚̃TƒCƒg‚Å‚Í�AƒfƒtƒHƒ‹ƒg‚Åin core ƒ‚�[ƒh‚ɂȂÁ‚Ä‚¢‚邯‚¢‚¤—l‚É�‘‚©‚ê‚Ä‚¢‚é‚̂ňႤ‹C‚ª‚µ‚Ü‚·�B‚·‚¢‚Ü‚¹‚ñ
‰ðŒˆ•û–@‚Í•ª‚©‚ç‚È‚¢‚̂ł·‚ª�A‚È‚ñ‚ƂȂŒ´ˆö‚ª‚‚©‚߂Ă«‚Ü‚µ‚½�B
‚Ç‚¤‚â‚çmkl‚Ƃ͕ʂ̕”•ª‚ð�AOpenMP‚ðŽg‚Á‚Ä•À—ñ‰»‚ð‚µ‚Ä‚¢‚邱‚Æ‚ªŒ´ˆö‚̂悤‚Å‚·�B
mkl‚Å‹�‰ð‚ð�s‚Á‚½‚·‚®Œã‚Ìdoƒ‹�[ƒv‚ðOpenMP‚Å•À—ñ‰»‚µ‚Ä‚¢‚é‚̂ł·‚ª�A
ƒRƒ“ƒpƒCƒ‹ƒIƒvƒVƒ‡ƒ“‚Ì-openmp -openmp-report2‚ðƒRƒ�ƒ“ƒgƒAƒEƒg‚µ‚Ämake‚·‚邯
‹�‰ð‚Ì•”•ª‚ª•À—ñ‰»‚³‚ê‚é‚Ì‚ªŠm”F‚Å‚«‚Ü‚µ‚½�B
Œ»�ó‚Å‚Í�A‹�‰ð‚à‚»‚ÌŒã‚̃‹�[ƒv‚à�d‚¢‚Ì‚Å�A‚Ç‚¿‚ç‚à•À—ñ‰»‚Å‚«‚È‚¢‚ƃ{ƒgƒ‹ƒlƒbƒN‚ɂȂÁ‚Ä‚µ‚Ü‚¢‚Ü‚·�B
OpenMP‚Ì‘ã‚í‚è‚ÉMPI‚ðŽg‚¤‚±‚Æ‚Å�Amkl‚ðéx‚¹‚é‚̂ł͂Æ�l‚¦‚Ä‚¢‚Ü‚·‚ª�A‚±‚ꂾ‚Æ‚WƒRƒA‚ðŽg‚¢‚«‚ê‚Ȃ̂Å�¢‚Á‚Ä‚µ‚Ü‚¢‚Ü‚·�B
‚Ȃɂ©‚æ‚¢•û–@‚ª‚ ‚ê‚Î�A‚ǂȂ½‚©‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·�B
ˆê‰ž�Aƒvƒ�ƒOƒ‰ƒ€‚Ì“à—e‚ð‚à‚¤�‚µ‹ï‘Ì“I‚É�‘‚©‚¹‚Ä‚‚¾‚³‚¢�B
˜A—§•û’öŽ®‚ðAx=b‚Æ‚µ‚Ä
A‚ð‹�‚ß‚Ä�AˆöŽq•ª‰ð‚܂ł·‚é(mkl)
b‚ðŒˆ‚ß‚é�B
do
A‚Æb‚ðŽg‚Á‚Äx‚ð‹�‚ß‚é(mkl)
!$OMP parallel do
do
‹�‚ß‚½x‚ðŽg‚Á‚Ä�V‚µ‚¢b‚ð‹�‚ß‚é�B
enddo
!$omp end parallel do
enddo
>>755 ŠÇ—�ŽÒ‚É•·‚¢‚½‚ç60–œ‚‚ç‚¢‚¾‚»‚¤‚Å‚·�B
>>758 ‚Q�dDO-LOOP‚É“ü‚Á‚Ă邩‚炳Ȃ¢‚©‚¢�B
ŠO‚ÌLOOP‚ðGOTO‚É‚µ‚Ä–¡‘Xƒpƒ“�B
Krylov? do !$OMP parallel ‹�‚ß‚½x‚ðŽg‚Á‚Ä�V‚µ‚¢b‚ð‹�‚ß‚é�B !$omp end parallel enddo ‚Æ�Ado ‚𔲂¢‚½ OMP directive ‚ð MKL ƒ‹�[ƒ`ƒ“‚Ì‘OŒã‚É‚¨‚¢‚Ä (do-loop ‚Ì“à‘¤‚ÉŽ�‚¿�ž‚ñ‚Å)‚Ý‚Ä�E�E�E‚à‚ ‚ñ‚Ü‚è•Ï‚í‚ç‚ñ‚©�A‚Þ‚µ‚눫‚‚Ȃ邩‚à‚µ‚ê‚ñ‚ª�E�E�B
OpenMP‚ÆŽ©“®•À—ñ‰»‚̈Ⴂ‚ª‚æ‚•ª‚©‚ç‚È‚¢‚ñ‚Å‚·‚ª�AŠî–{“¯‚¶‚à‚̂ł·‚©�H
Ž©“®•À—ñ‰»‚̓xƒ“ƒ_‚²‚ƂɈႤ‚¯‚Ç�E�E‚Ü‚ ‚¾‚¢‚½‚¢‚ÍOpenMP‚Æ“¯‚¶‚悤‚È‚à‚̂Ƃ¨‚à‚Á‚Ä‚¢‚¢‚æ�B •À—ñ”\—¦‚͈ê”Ê“I‚ɂ͎è�‘‚«OpenMP‚æ‚èŠi’i‚É—ò‚é‚©‚ç‚ ‚Ü‚èŠú‘Ò‚µ‚È‚¢‚悤‚É�B
>>762 ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B�ð�¡�AOpenMP‚ÆMPI‚̃nƒCƒuƒŠƒbƒh‚ª²²!‚Á‚Ä
•û�X‚ÅŒ¾‚í‚ê‚Ä‚¢‚Ü‚·‚ª�A‚Q‚Â�l‚¦‚é‚Ì‚Í('A`)‚¶‚á‚È‚¢‚Å‚·‚©�H
ƒm�[ƒhŠÔ‚ÍŽ©‘O‚ÅMPI‚ðŠæ’£‚邯‚µ‚Ä‚à�Aƒm�[ƒh“à‚Í�ŸŽè‚É
Ž©“®‚Å�Å“K‰»�••À—ñ‰»‚µ‚Ăقµ‚¢‚È‚Æ�E�E�E‚»‚ñ‚È“ú‚Í—ˆ‚È‚¢‚ñ‚Å‚·‚©‚Ë�H
>>763 Earth Sim ‚̓m�[ƒhŠÔ‚ðMPI‚Å‚©‚¢‚Ä“à•”‚ÍŽ©“®•À—ñ‚炵‚¢‚Ë
(Žg‚Á‚½‚±‚ƂȂ¢‚¯‚Ç�E�E)�B“ú“dŠæ’£‚Á‚½�B
‚ӂ‚¤‚Ý‚©‚¯‚é‚WƒRƒAƒ}ƒVƒ“‚ð‚½‚‚³‚ñ‚‚Ȃ¢‚¾�E�E‚Æ‚©‚¾‚Æ
ƒnƒCƒuƒŠƒbƒh‚æ‚è‚ÍMPI‚Å‘S•”�‘‚¢‚Ä‚à‚ ‚܂肩‚í‚ç‚È‚¢‚Æ‚à•·‚‚Ë�B
‚Ü‚ �‘‚«•ûŽŸ‘æ‚Å‚à‚ ‚é‚Ì‚¾‚낤‚¯‚Ç�B
‚Å‚«‚ê‚Î�Å“àƒ‹�[ƒv‚ÌŽn‚Ü‚è‚Æ�I‚í‚è‚ðŒÅ’è•Ï�”‚Å
�‘‚¢‚Ä‚¨‚©‚È‚¢‚ÆUnrolling ‚ª—}�§‚³‚ꂽ‚è‚·‚é‚©‚ç�A
ƒRƒ“ƒpƒCƒ‰–ˆ‚É‚¢‚ë‚¢‚ë’�ˆÓ‚Ë�E�E
—±“x(ˆêƒRƒA’S“–”͈͂̕�)‚É‚à‚æ‚é‚ñ‚¾‚낤‚¯‚Ç�B
‚Ü�`MPIŽg‚¢‚±‚È‚¹‚é‚È‚çMPIˆê–{‚Å‚¢‚¢‚Æ‚¨‚à‚¤‚æ�B
‚»‚ë‚»‚ëprintf "%04d" 1 ‚Ý‚½‚¢‚ÈŠ´‚¶‚Ń[ƒ�ƒpƒfƒBƒ“ƒO‚·‚éƒtƒH�[ƒ}ƒbƒg‚ð“ü‚ê‚Ä‚‚ê ƒj�[ƒY‚ ‚邯Žv‚¤‚ª
I6.6‚Æ‚©
>>767 ‚¤‚Þ�B�³‰ð�B
>>765 ‚Í‚Q‚O”N‘O‚Ì�º˜a‚Ì’mޝ‚µ‚©Ž�‚Á‚Ä‚¢‚È‚¢�B
769 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/07/15(–Ø) 01:32:20
‚·‚¢‚Ü‚¹‚ñ�AFORTRAN90‚Ńuƒ‰ƒbƒN�EƒWƒƒƒbƒN‚̃vƒ�ƒOƒ‰ƒ€‚ð‘g‚ñ‚Å‚‚¾‚³‚¢�B
>>769 ƒ‹�[ƒ‹‚ð’莮‰»‚µ‚Ä‹³‚¦‚ë�B
>>768 ‚Q‚O”N‘O‚Í•½�¬‚¾YO�I
773 �F
765 �F2010/07/15(–Ø) 09:32:32
774 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/07/15(–Ø) 11:11:35
‚·‚¢‚Ü‚¹‚ñ�B’莮‰»‚Í–l‚Ì“ª‚¶‚á–³—�‚Ȃ̂Ń‹�[ƒ‹‚¾‚¯�cƒ‹�[ƒ‹‚Í‚¨ŒÝ‚¢‚ªƒgƒ‰ƒ“ƒv‚ðˆø‚¢‚Ä‚¢‚Á‚Ä�A�‡Œv“_�”‚ª21“_‚ð‰z‚¦‚¸‚ɃvƒŒƒCƒ„�[‚ªƒfƒB�[ƒ‰�[‚æ‚è�‚‚¢“_‚ð‹£‚¤ƒQ�[ƒ€‚Å‚·�B‚¿‚Ȃ݂É21“_‚ð‰z‚¦‚邯•‰‚¯Œˆ’è‚Å‚·�B
775 �F
1 �F2010/07/16(‹à) 03:36:52
>>774 ƒRƒ“ƒsƒ…�[ƒ^‚ÌŽv�l‚Ü‚¾–³‚µ�B
MODULE m_bj
IMPLICIT NONE
TYPE :: t_shuff
REAL :: x
INTEGER :: i
END TYPE t_shuff
INTEGER, SAVE :: icard(52), ipos, icards_mine(20) = 0, icards_dealer(20) = 0, ip_mine = 0, ip_dealer = 0
CONTAINS
SUBROUTINE shuffle()
TYPE (t_shuff) :: card(SIZE(icard))
INTEGER :: i
CALL RANDOM_SEED()
CALL RANDOM_NUMBER(card(:)%x)
card(:)%i = (/ (i, i = 1, SIZE(icard)) /)
card = qsort(card)
icard = card(:)%i
END SUBROUTINE shuffle
RECURSIVE FUNCTION qsort(c) RESULT(res)
TYPE (t_shuff), INTENT(IN) :: c(:)
TYPE (t_shuff) :: res(SIZE(c))
IF (SIZE(c) > 1) THEN
res = (/ qsort( PACK(c(2:), c(2:)%x < c(1)%x) ), c(1), qsort( PACK(c(2:), c(2:)%x >= c(1)%x) ) /)
ELSE
res = c
END IF
END FUNCTION qsort
776 �F
2 �F2010/07/16(‹à) 03:38:07
CHARACTER(10) FUNCTION to_card(k) INTEGER, INTENT(IN) :: k CHARACTER(5) :: suit( 4) = (/'Spade', 'Heart', 'Club ', 'Diamd'/) CHARACTER(2) :: rank(13) = (/' A', ' 2', ' 3', ' 4', ' 5', ' 6', ' 7', ' 8', ' 9', '10', ' J', ' Q', ' K'/) INTEGER :: k1, k2 k1 = (k - 1) / 13 + 1 k2 = MOD(k - 1, 13) + 1 to_card = suit(k1) // ' ' // rank(k2) END FUNCTION to_card INTEGER FUNCTION icount_sum(icards) INTEGER, INTENT(IN) :: icards(:) INTEGER :: i, k, nace, isum nace = 0 isum = 0 DO i = 1, SIZE(icards) isum = isum + num_card(icards(i)) IF (num_card(icards(i)) == 11) nace = nace + 1 END DO DO i = 1, nace IF (isum > 21) isum = isum - 10 END DO icount_sum = isum END FUNCTION icount_sum INTEGER FUNCTION num_card(k) INTEGER, INTENT(IN) :: k SELECT CASE(MOD(k - 1, 13) + 1) CASE (1) num_card = 11 CASE (2:10) num_card = MOD(k - 1, 13) + 1
777 �F
3 �F2010/07/16(‹à) 03:38:48
CASE (11:13) num_card = 10 END SELECT END FUNCTION num_card INTEGER FUNCTION idraw(n) INTEGER, INTENT(IN OUT) :: n n = n + 1 ipos = ipos + 1 idraw = icard(ipos) RETURN END FUNCTION idraw SUBROUTINE draw(text) CHARACTER(*), INTENT(IN) :: text SELECT CASE(text) CASE('dealer') icards_dealer(ip_dealer) = idraw(ip_dealer) CASE('me') icards_mine (ip_mine ) = idraw(ip_mine ) END SELECT END SUBROUTINE draw INTEGER FUNCTION iget_sum(text) CHARACTER(*), INTENT(IN) :: text SELECT CASE(text) CASE('dealer') iget_sum = icount_sum(icards_dealer(:ip_dealer)) CASE('me') iget_sum = icount_sum(icards_mine(:ip_mine) ) END SELECT END FUNCTION iget_sum
778 �F
4 �F2010/07/16(‹à) 03:39:35
SUBROUTINE pr_cards(text) CHARACTER(*), INTENT(IN) :: text INTEGER :: i SELECT CASE(text) CASE('dealer') PRINT *, (to_card(icards_dealer(i)), ' ', i = 1, ip_dealer) CASE('me') PRINT *, (to_card(icards_mine(i) ), ' ', i = 1, ip_mine ) END SELECT END SUBROUTINE pr_cards END MODULE m_bj ! PROGRAM Console2 USE m_bj IMPLICIT NONE INTEGER :: i, isum_me, isum_dealer CHARACTER :: input CALL shuffle() CALL draw('me') CALL draw('dealer') CALL draw('me') CALL draw('dealer') DO isum_me = iget_sum('me') IF ( isum_me > 21) THEN PRINT *, 'Fail!' EXIT END IF CALL pr_cards('me') PRINT *, 'sum =', isum_me PRINT *
779 �F
5 �F2010/07/16(‹à) 03:43:46
PRINT *, 'draw or quit? (d or q)' READ *, input IF (input == 'q') EXIT CALL draw('me') END DO PRINT *, '+++++++++++++++++++++++++++++++++' PRINT *, 'Your cards' CALL pr_cards('me') PRINT *, 'sum =', isum_me PRINT * PRINT *, 'Dealer''s cards' CALL pr_cards('dealer') isum_dealer = iget_sum('dealer') PRINT *, 'sum =', isum_dealer IF (isum_me > isum_dealer .AND. isum_me <= 21) THEN PRINT *, 'You win!' ELSE PRINT *, 'You lose!' END IF END PROGRAM Console2
format‹L�qŽq‚ÌŽÀ�”‚Ì‚¤‚¿�AES‚ÆEN‚Æ‚¢‚¤‚Ì‚ª‚ ‚è‚Ü‚·‚ª�A ‚±‚ê‚Ì”{�¸“x”ł͂܂¾‹KŠi‚ɂȂÁ‚Ä‚¢‚È‚¢‚̂łµ‚傤‚©�H
>>780 Œë‰ð‚ª‚ ‚é�B
‚»‚ê‚ç‚É”{�¸“x‚à•³‚à‚È‚¢�B
“à•”•\Œ»‚ð‚»‚ÌƒtƒH�[ƒ}ƒbƒg‚ɕϊ·‚·‚邾‚¯�B
‚悃}ƒjƒ…ƒAƒ‹‚ð“ǂނׂµ�B
—Ⴆ‚Î�A’P�¸“x‚Å‚à�¬�”“_ˆÈ‰º‚T‚OŒ…‚ðŽw’è‚·‚ê‚΂T‚OŒ…�‘‚�B
—LŒø�”Žš‚Í‚V�`‚WŒ…‚µ‚©–³‚¢‚ª�A“à•”•\Œ»‚ð’P‚ɕϊ·‚µ‚ĂȂñ‚Ú‚Å‚à�‘‚«�o‚·�B
>>781 Œë‰ð‚µ‚Ă܂µ‚½�B‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
ƒnƒmƒC‚Ì“ƒ‚̃vƒ�ƒOƒ‰ƒ€‚̃\�[ƒX‚ð’T‚µ‚Ä‚¢‚é‚ñ‚Å‚·‚ª�A‚ǂȂ½‚©‚²‘¶’m‚Å‚·‚©�H
’m‚Á‚Ă邿
‹³‚¦‚Ä‚¢‚½‚¾‚¯‚Ü‚¹‚ñ‚©�H
>>783 "Guide to Fortran2003 Programming" W.S.Brainerd �@�iSpringer�j
‚Ì‚P‚O‚Tƒy�[ƒW‚É�Ú‚Á‚Ä‚é�B
Google Books ‚Å“–ŠYƒy�[ƒW‚ªŒ©‚ç‚ê‚é�BHanoi‚ÅŒŸ�õ‚µ‚ë�Bƒ\�[ƒXƒR�[ƒhŽ©‘Ì‚Í107p‚¾�B
Œ©‚½Š´‚¶Fortran90‚͈̔͂Å�‘‚©‚ê‚Ä‚¢‚é�B
‚»‚¤‚¢‚â�Ä‹A‚Á‚Ä‘¬“x“I‚ɂ͂æ‚낵‚‚È‚¢‚Á‚Ä•·‚‚È‚Ÿ �Ä‹A‚ðŽg‚í‚È‚¢ƒAƒ‹ƒSƒŠƒYƒ€‚ª‚ ‚é‚̂Ȃç�A‚»‚Á‚¿‚ðŽg‚Á‚½‚Ù‚¤‚ª‚¢‚¢‚Ì‚©‚È ƒnƒmƒC‚Ì“ƒ‚łł«‚é‚©‚Í’m‚ç‚È‚¢‚¯‚Ç�E�E�E�i–³—��H
> ‚»‚¤‚¢‚â�Ä‹A‚Á‚Ä‘¬“x“I‚ɂ͂æ‚낵‚‚È‚¢‚Á‚Ä•·‚‚È‚Ÿ ‚Ù‚Æ‚ñ‚Ç–À�M�B �Ä‹A‚Å–â‘è‚Ȃ̂̓Xƒ^ƒbƒN‚Ì�Á”ï‚Æ‚©�B
>>786 ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
subroutine‚ðcall‚·‚é‚Ì‚Á‚ĉ½•b‚‚ç‚¢‚©‚©‚é‚ñ‚Å‚·‚©�H
’N‚ª�ì‚Á‚½‰½‚ð‚·‚é subroutine ‚Ȃ̂©‚É‚æ‚é ‚¨‚Ü‚¦‚ª‚킯‚à•ª‚©‚炸�ì‚Á‚½ subroutine ‚¾‚Á‚½‚ç�Aˆê�¶‹A‚Á‚Ä‚±‚È‚¢‰Â”\�«‚à‚ ‚é
call‚µ‚Ä‚©‚ç‹A‚Á‚Ä‚‚é‚܂ł¶‚á‚È‚‚Ä call‚·‚邱‚ÆŽ©‘Ì‚É‚Ç‚ê‚‚ç‚¢ŽžŠÔ‚ª‚©‚©‚é‚Ì‚©‚È‚Ÿ�E�E�E‚ÆŽv‚Á‚½‚킯‚Å‚·
‰½•b‚ÆŒ¾‚í‚ê‚Ä‚àŠÂ‹«‚É‚æ‚邵 ƒRƒ“ƒpƒCƒ‰‚ªƒCƒ“ƒ‰ƒCƒ““WŠJ‚·‚邱‚Æ‚à‚ ‚é
>>792 >>791 ‚Í•¶–¬‚©‚玿–â‚̈Ӗ¡‚ª—�‰ð�o—ˆ‚È‚¢ƒAƒz�B
’m‚è‚à‚µ‚È‚¢‚‚¹‚É’m‚Á‚Ä‚¢‚邯‚Ù‚´‚
>>784 ƒŒƒxƒ‹‚̃NƒY�B
>>787 >>788 ‚ÌŒ¾‚¤‚Æ‚¨‚è�B‚V‚O”N‘ã‚Æ‚©‚ÌŒ¾‚¢“`‚¦‚ð�M‚¶‚Ä‚¢‚邯ƒoƒJ‚ð‚Ý‚é�B
>>787 ,794
recursive ‚Í�V‚½‚ɌĂ΂ê‚邽‚тɃ�ƒ‚ƒŠ‚âL1ƒLƒƒƒbƒVƒ…‚ɃR�[ƒh‚ð“WŠJ‚·‚é‚Ì‚Å�A
•p“xŽŸ‘æ‚ł͑¬“x‚ɃeƒLƒ�ƒ“‚É�o‚邯‚Ç(ƒ‹�[ƒv“à‚ŌĂԂƂ©w)�E�E
�¡‚̃}ƒVƒ“‚ŃnƒmƒC“ƒ–â‘è‚‚ç‚¢‚È‚ç‹C‚É‚µ‚È‚‚Ä‚¢‚¢‚æ�B
> recursive ‚Í�V‚½‚ɌĂ΂ê‚邽‚тɃ�ƒ‚ƒŠ‚âL1ƒLƒƒƒbƒVƒ…‚ɃR�[ƒh‚ð“WŠJ‚·‚é ‚»‚ñ‚ȃRƒ“ƒpƒCƒ‹‹Z–@‚͂͂‚݂݂ł·�B
do i=1,100 z(i)=x(i)+y(i) enddo ‚Á‚Ä�‘‚‚Ì‚Æ z(1:100)=x(1:100)+y(1:100) ‚Á‚Ä�‘‚‚̂ŌvŽZ‚Ì‘¬‚³‚ɈႢ‚Í‚ ‚è‚Ü‚·‚©�H
‚µ‚å‚Ú‚¢ƒRƒ“ƒpƒCƒ‰‚È‚çŒãŽÒ‚̂悤‚É–¾Ž¦“I‚É�‘‚•û‚ª‚¢‚¢‚ª �¡Žž‚»‚¤‚¢‚¤‚Ì‚ ‚é‚©‚È‚
‚È‚ñ‚É‚¹‚æ�A‚»‚¤‚¢‚¤‚¿‚å‚Á‚Æ‚µ‚½�‘‚«•û‚̈Ⴂ‚ð‹C‚É‚·‚邿‚è ƒAƒ‹ƒSƒŠƒYƒ€‚»‚Ì‚à‚Ì‚ð�l‚¦‚½•û‚ª‚¢‚¢�A‚Æ‚©‹³‰È�‘‚É�‘‚¢‚ĂȂ¢‚©‚¢
‚ ‚邯‚ê‚ǃRƒ“ƒpƒCƒ‰‚ª‚È‚‚µ‚Ä‚‚ê‚é‚Á‚Ä‚±‚Ƃł¢‚¢‚Å‚·‚©‚Ë ‚ ‚Æ sum(x**2) ‚Æ x(1)*x(1)+x(2)*x(2)+x(3)*x(3) ‚È‚ç‚Ç‚Á‚¿‚ª‘¬‚¢‚Å‚·‚©‚Ë
x‚ªx(10000)‚È‚çŒãŽÒ x(3)‚Ȃ瓯‚¶
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·
>>801 ‚ ‚ñ‚½�A‚È‚ñ‚©‘å�̂̓`�à‚Ý‚½‚¢‚Ȃ̂ð–Ó�M‚µ‚ĂȂ¢‚©‚¢�H
�¡‚̓Rƒ“ƒpƒCƒ‰‚Ì�Å“K‰»‚ŕςí‚é‚©‚ç�AŠÂ‹«ˆË‘¶‚Å‚»‚¤‚¢‚¤Ž¿–âˆÓ–¡‚È‚¢‚æ�B
–{“–‚Ì�ÅŒã‚Ì�ÅŒã‚É�Å“K‰»‚·‚邿‚¤‚È�Š‚ð‹C‚É‚µ‚Ä‚¢‚ăZƒ“ƒXˆ«‚·‚¬�B
‹C‚ɂȂé‚Ȃ玩•ª‚ŃeƒXƒgƒvƒ�ƒOƒ‰ƒ€�‘‚¢‚Ä’²‚ׂ½‚Ù‚¤‚ª‘�‚¢�BŒÈ‚ÌŽ¿–â‚Ì–³ˆÓ–¡‚³‚ðŠš‚Ý‚µ‚ß‚ç‚ê‚é�B
>>802 ‚à�M—p‚È‚ç‚ñ‚—�@‚Â�[‚©�¡Žžx(1000)’ö“x‚Å‚Í�A—LˆÓ‚È�·‚ª�o–³‚¢�B
Œ‹‹Ç
>>800 ‚ª�‘‚¢‚Ä‚¢‚邿‚¤‚É�A“K�؂ȃAƒ‹ƒSƒŠƒYƒ€‚ð’¼�B‚Ƀ\�[ƒXƒR�[ƒh‚É’¼‚µ‚½‚Ù‚¤‚ª�A
ŽÀ�sŽžŠÔ‚àƒfƒoƒbƒOŽžŠÔ‚Å‚àŒ‹‹Ç‘�‚‚È‚é�B
QuickSort‚È‚ñ‚©‚à�A�Ä‹A‚ðŽg‚Á‚Ä‘f’¼‚É�‘‚¢‚ÄŽÀ�s‚·‚邯�A—�˜_’Ê‚è‚ÉO�iNLogN)‚Å“®‚‚©‚ç
�Ä‹A‚È‚µ‚ÌO(N^2)‚ȃoƒuƒ‹ƒ\�[ƒg‚¾‚Ì‚æ‚è‚æ‚Á‚Û‚Ç‘¬‚¢‚킳�BF77Žž‘ã‚Ý‚½‚¢‚É�Ä‹A–³‚µ‚ÅQuickSort
�‘‚¢‚½‚ç�Aƒ\�[ƒXƒOƒ`ƒ‡ƒOƒ`ƒ‡‚ȃCƒ~ƒt‚ŃoƒOŽæ‚è‘å•Ï‚È�ã‚É�AŒ‹‹Ç‚³‚µ‚Ä‘¬‚‚à‚È‚©‚낤‚³�B
QuickSort‚Á‚Ä�Ä‹AŽg‚¦‚΂P‚O�s‚¾‚º�B–â‘è‚ɂȂé‚̂̓Xƒ^ƒbƒNƒI�[ƒo�[ƒtƒ��[‚¾‚¯�B
RECURSIVE FUNCTION qsort(x) RESULT(res)
REAL, INTENT(IN) :: x(:)
REAL :: res( SIZE(x) )
IF ( SIZE(x) > 1 ) THEN
res = (/ qsort(PACK( x(2:), x(2:) > x(1) )), x(1), qsort(PACK( x(2:), x(2:) <= x(1) )) /)
ELSE
res = x
END IF
RETURN
END FUNCTION qsort
‘å�Ì‚¾‚Æ‚·‚®‚ÉStack ˆì‚ꂽ‚à‚Ì‚¾‚¯‚Ç�A�¡‚Í‹C‚É‚µ‚Ä‚à�B
>>788 ,795 ‚Ý‚½‚¢‚É
Stack “WŠJ‚̃�ƒX‚à‚»‚ê‚قǂłà‚È‚¢‚µ�B‚Æ‚¢‚¤‚©‚±‚±‚ª‹C‚É‚È‚é‚Æ‚¢‚¤‚̂͂â‚è‚©‚½‚ª‚Ü‚¸‚¢�B
>>804 ‚̂Ƃ¨‚è�ׂ©‚¢�Å“K‰»‚̓xƒ“ƒ_”C‚¹‚Å‚¢‚¢‚ÆŽv‚¤‚æ�B
unrolling ‚â‚ç‚¢‚ë‚¢‚ë�¡‚̃Rƒ“ƒpƒCƒ‰‚Í‚·‚é‚à‚ñ‚Ë�B
CPU ƒ��[ƒJ‚Ì�ì‚éƒRƒ“ƒpƒCƒ‰(Intel ‚Æ‚©�E�EFujitsu ‚Í
SPARC ˆÈŠO‚Å‚à—Ç�D‚Å�D‚«‚¾‚¯‚Ç�‚‚¯‚¥)‚Í“Á‚É�B
gfortran ‚͂ǂ¿‚ç‚©‚Æ‚¢‚¤‚ƈႤƒvƒ‰ƒbƒgƒz�[ƒ€‚Å‚à“¯‚¶Œ‹‰Ê�EŽg‚¢�S’n‚É�A‚É�d“_‚ª‚ ‚é‚©‚ç‚©
‚»‚Ì“_‚ł͂¾‚¢‚Ô—ò‚邯‚Ç�A•Ö—˜‚¾‚µ�E�E�Eƒ^ƒ_‚Ȃ̂ª‚¢‚¢�I
Intel Fortran ‚¾‚Æ�A‚X‚Æ11‚ł܂Á‚½‚“¯‚¶ƒR�[ƒh (CPU�Å“K‰»‚ð /QxW ‚ ‚½‚è‚Ō¢�¢‘ã‚ÌCPU‚É‘µ‚¦‚Ä)‚ƃ}ƒVƒ“‚Å‚à ŽÀŒø‘¬“x‚ª‚Q�`‚RŠ„‚͂ӂ‚¤‚ɈႤ‚Ì‚Å�E�E�EŒÂ�l‚ª�u�‘‚«•û�v‚łȂñ‚Æ‚© �Å“K‰»‚µ‚悤‚Æ‚¢‚¤“w—͂͂ ‚Ü‚èˆÓ–¡‚ª–³‚¢‚Ì‚ªŽÀŠ´‚Å‚«‚é�B
Fortran‚ÆC‚Ç‚¿‚炪—Ç‚¢‚©‚Á‚Ă̂͂ ‚éˆÓ–¡‰i‰“‚̃e�[ƒ}‚©‚à‚µ‚ê‚ñ‚¯‚Ç�A —¼ŽÒ‚Ì‘��‡“I‚È‘P‚µˆ«‚µ‚ð‚«‚¿‚ñ‚Æ�®—�‚µ‚Ä—�‰ð‚·‚é‚É‚Í�A‚â‚Á‚ÏŽ©•ª‚Å —¼•û‚â‚ç‚È‚«‚á‘Ê–Ú‚È‚ñ‚©‚È�c�B Œ¤‹†ŽÒ‚Æ‚©‹ÆŠE‚̃Š�[ƒ_�[“I—§�ê‚Ì�l‚Í‚±‚̕ӂð‚Í‚Á‚«‚è–¾‚ç‚©‚É‚µ‚Ä ‚‚ê‚邯�•‚©‚é‚ñ‚¾‚¯‚ǂȂŸ�B‚à‚Á‚ÆŒ¾‚¦‚Î�A‰ÈŠw‹Z�p�”’lŒvŽZƒR�[ƒh‚Í ‚ǂ̂悤‚ÉŠJ”‚·‚ׂ«‚©�A‚Ý‚½‚¢‚ÈŽw�j‚ðŽ¦‚µ‚Ä‚‚ê‚邯ŽÀ‚É‚ ‚肪‚½‚¢˜b ‚È‚ñ‚¾‚¯‚Ç�A‚»‚¤‚¢‚¤“®‚«‚Á‚Ä‚ ‚ñ‚Ü‚è‚È‚¢‚悤‚È�c�B
808 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/08/11(�…) 01:00:21
‚ß‚ñ‚Ç‚¤‚¾‚à‚ñ
809 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/08/11(�…) 14:53:17
•¨—�Œn‚Ì”N”z‚Ì�l’B‚ÍFORTRAN‚µ‚©’m‚ç‚È‚¢‚µ�A‚Ü‚½FORTRAN‚ª�Å‘¬ ‚Æ�M‚¶‚Ä‚¢‚é‚©‚ç�AC‚Æ‚©‚ɂ͑S‘R‹»–¡‚È‚¢‚¾‚낤‚Ë�B ‘åŠw‚Ì•¨—�Œn‚ÌŒ¤‹†Žº‚Ì‹³Žö‚ÍFORTRAN‚µ‚©‚í‚©‚ç‚È‚¢‚©‚ç�AŠw�¶‚ª C‚âC++‚Å�”’lŒvŽZƒvƒ�ƒOƒ‰ƒ€‚ð�ì�¬‚·‚邯•s‹@Œ™‚ɂȂé�BŒ‹‹Ç�A‚»‚±‚Ì Œ¤‹†Žº‚ÌŠw�¶’B‚ÍFORTRAN‚Ńvƒ�ƒOƒ‰ƒ€‚ð�ì‚邱‚ƂɂȂé�B C‚âC++‚̓vƒŠƒvƒ�ƒZƒbƒT‚âƒ|ƒXƒgƒvƒ�ƒZƒbƒT‚Ì•”•ª‚Å‚µ‚©�o”Ô‚ª‚È‚¢ ‚¾‚ë‚Ë�B
810 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/08/11(�…) 15:16:02
Œ™‚¾‚æFORTAN‚È‚ñ‚©
‚Å‚àƒXƒpƒRƒ“‚ðŽg‚¤‚È‚çFortran‚Å‚µ‚å�B ‚±‚Ì‘O‚à�AƒXƒpƒRƒ“‚Ì—˜—pŽÒ‚Ì‚½‚ß‚Ì�u�K‚Å•xŽm’Ê‚âNEC‚Ì�l‚ÉŒ¾‚í‚ꂽ�B
812 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/08/12(–Ø) 01:30:04
ƒXƒpƒRƒ“Œü‚¯‚̃Rƒ“ƒpƒCƒ‰�ì‚鑤‚Æ‚µ‚Ä‚ÍFortran ‚ÍŠy‚炵‚¢‚Ë�B ‚Ü‚ �AC ‚Æ Fortran ‚Í‹¤‘¶‚µ‚â‚·‚¢‚µ�E�E�E —¼•û’m‚Á‚Ä‚ê‚Ή½‚©‚ƕ֗˜‚¾�B–Ê“|‚Å‚à‚ ‚邯‚Ç�B
Žd•û‚Ë‚¦‚È‚ Fortran‚à•¶–@‚ÍãY—í‚Æ‚ÍŒ¾‚¦‚È‚¢‚ª�A’·‚¢ŠÔŽg‚í‚ê‚Ä—ˆ‚½
Ž–‚©‚ç�Å“K‰»‹Z�p‚ª�n�¬‚µ‚Ä‚¨‚è�A‚Ü‚½ƒ‰ƒCƒuƒ‰ƒŠ‚à‘½�”‚ ‚鎖‚©‚ç‰ÈŠw‹Z�p
ŒvŽZ‚É‚ÍFortran�A‚»‚Ì‘¼‚̃†�[ƒeƒBƒŠƒeƒB‚ÍC‚̂悤‚É�±‚Ý•ª‚¯‚ª�o—ˆ‚Ä‚µ‚Ü‚Á‚Ä‚¢‚é
‚µ‚©‚µƒEƒBƒ“ƒhƒDƒ‰ƒCƒuƒ‰ƒŠ‚ÍC‚Ì•û‚ª–L•x‚Ȃ̂Å�A
>>812 ‚Ì‚¢‚¤’ʂ苤‘¶‚µ‚Ä‚¢‚é‚Ì‚ª
Œ»ŽÀ‚¾
C++‚Í�E�E�E‚¤�[‚ñ�¡‚Ì�ŠQtˆÈŠO‚ł͂ ‚Ü‚è—p“r‚ª‚È‚¢‚ñ‚¶‚á‚Ë�H
ƒEƒBƒ“ƒhƒEƒ‰ƒCƒuƒ‰ƒŠ‚Á‚Ä�A—v‚͉Ž‹‰»‚·‚é‚Á‚Ä‚±‚Æ‚¾‚ÆŽv‚¤‚ª c‚̃‰ƒCƒuƒ‰ƒŠ‚ðŒÄ‚Ô‚±‚Æ‚à‚¢‚¿‚¨‚¤‚͉”\‚¾‚µ Šù‘¶‚̉Ž‹‰»ƒc�[ƒ‹Žg‚¤�l‚̓tƒ@ƒCƒ‹‚ð‚»‚ê‚ɃRƒ“ƒo�[ƒg‚·‚ê‚΂¢‚¢‚µ ‚»‚à‚»‚à‰ÂŽ‹‰»‚È‚ñ‚Ä‚¢‚ç‚ñ�A‚Á‚Ä�l‚à‚¢‚邵 �±‚Ý•ª‚¯‚ª�o—ˆ‚ĂĂ¢‚¢‚ñ‚¶‚á‚Ü‚¢‚©‚Æ ‚Æ‚¢‚¤‚©�A�i‰»‚ªŠ®‘S‚ÉŽ~‚Ü‚Á‚Ä‚é‚̂ɕ‰‚̈âŽY‚Æ‚µ‚Ä‚¢‚Ü‚¾‚ÉŽc‚Á‚Ă錾Œê‚È‚ñ‚Ä‚´‚ç‚É‚ ‚邵�A ”“W‚ª‘±‚¢‚Ă邾‚¯‚Å‚à‘Š“–‚ ‚肪‚½‚¢‚±‚Æ‚¾‚æ‚È Fortran‚ÍŽ€‚ñ‚¾‚Æ‚©Œ¾‚¤‚â‚‚¢‚邯‚Ç�AæÒ‘ò‚·‚¬‚é‚í
815 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/08/13(‹à) 00:17:08
C++‚à‰E•Ó’lŽQ�Æ‚ª•�‹y‚·‚ê‚΂¿‚å‚Á‚Ƃ͑¬‚‚Ȃ邾‚낤‚ª�A �”’lŒvŽZ‚Ì•À—ñ�ˆ—�‚É‚æ‚é�‚‘¬‰»‚ÍFortran‚Ì•û‚ªˆê•à’·‚¶‚Ä‚¢‚é‚©‚ç‚È�B C‚âC++‚̓|ƒCƒ“ƒ^‚ðŽg‚¤‚©‚çƒRƒ“ƒpƒCƒ‰‚Ì�Å“K‰»‚ª‚â‚è‚É‚‚¢‚µ�B
816 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/08/13(‹à) 01:42:35
>>812 C ‚Æ Fortran ‚Í‹¤‘¶‚µ‚â‚·‚¢‚µ
ƒRƒ“ƒpƒCƒ‰‚â‚ç‚Å�A
•›ƒvƒ�ƒOƒ‰ƒ€‚Ì–¼‘O‚É _ ‚ª‚‚¢‚½‚è•t‚©‚È‚©‚Á‚½‚è�A
Case Sensitive ‚¾‚Á‚½‚è‚È‚©‚Á‚½‚è�A
�®�”�EŽÀ�”ˆÈŠO‚Ì•Ï�”‚ð“n‚·‚Æ–ã�â‚·‚邱‚Æ‚ª‚ ‚Á‚½‚è�E�E�E
‚Å‚à�A‚Ü‚ ‚»‚̂ւñ‚É‹C‚ð‚‚¯‚ê‚Î�A‚QŒ¾Œê‚ð�¬�Ý‚³‚¹‚é‚Ì‚Í
‘¼‚Ì‘g‚Ý�‡‚킹‚æ‚è‚©‚È‚èŠy‚¾‚æ‚Ë�B
_‚ªˆêŒÂ‚©‚ç“ñŒÂ‚É•Ï�X‚³‚ê‚½Žž‚ɕς¦‚½“z‚ðŽE‚µ‚Ä‚â‚낤‚©‚ÆŽv‚Á‚½�B
�s—ñ”½•œ‚ȂǂÌ�d‚¢�ˆ—�‚ÍFortran�A‚»‚ÌŠO‘¤‚ÍC‚Á‚ÄŠ´‚¶‚©�H ‚Å‚àŠO‘¤C‚É‚µ‚ăzƒ“ƒg‚É‚â‚è‚â‚·‚‚È‚é‚Ì‚©‚È�B‚¢‚Ü‚¢‚¿ƒsƒ“‚Æ‚±‚È‚¢�B
“ü�o—Í‚ÍC‚Ì•û‚ªŠy�Bƒ}ƒgƒŠƒbƒNƒX�\’z‚·‚é‚Ì‚à�AƒIƒŒ‚ɂƂÁ‚Ä‚ÍC‚Ì•û‚ªŠy‚¾‚¯‚Ç�A ‚±‚Á‚¿‚Í�AFORTRAN‚ÌSTRUCTURE‚ÍŽg—pŒoŒ±‚ª–³‚¢‚©‚ç‚æ‚‚í‚©‚ç‚È‚¢�B
‚Ü‚ �A�D‚«‚¸‚«‚Å‚¢‚¢‚ñ‚¶‚á‚Ë�H ŒÂ�l“I‚É‚Í818‚³‚ñ•ûŽ®‚ÅWrapper ‚ðC ‚É‚µ‚Ä�A‚ª‘½‚¢�B ‚Ü‚ �A Fortran ‚¾‚¯‚Å�ςނȂç‚í‚´‚í‚´•ï‚ñ‚¾‚è‚Í‚µ‚È‚¢‚¯‚Ç�B
•ÏŒ`ƒxƒbƒZƒ‹ŠÖ�”‚ðŽg‚¢‚½‚¢‚ñ‚Å‚·‚¯‚Ç fortran‚ŃtƒŠ�[‚Ì‚à‚Ì‚Á‚Ä‚ ‚è‚Ü‚·‚©�H
ƒWƒ…ƒŠƒA�W�‡‚ð�ì‚肽‚¢‚ñ‚Å‚·‚¯‚Ç c julia set complex z,z0,c 10 read(6,*)x,y write(6,*)'x=,y=' if(x.gt.2) go to 10 if(y.gt.2) go to 10 read(6,*)a,b write(6,*)'a=,b=' z0=(x,y) c=(a,b) do n=1,100 z=z0 z=z*z+c abs(z).lt.10 Rez=real(z) Imz=aimag(z) write(6,*)Re(z),Im(z) end do end ‚±‚ꂾ‚Æz0=(x,y) c=(a,b) ‚Ì•”•ª‚Æabs(z).lt.10 ‚ªƒGƒ‰�[‚ɂȂé‚ñ‚Å‚·‚¯‚Ç�A‚Ç‚¤‚·‚ê‚΂¢‚¢‚Å‚·‚©�H
Ž©—RŒ`Ž®‚Ìfortran90‚̃\�[ƒXƒR�[ƒh‚©‚çŒÅ’èŒ`Ž®‚ÌCOMMONƒuƒ�ƒbƒN‚ª“ü‚Á‚½FORTRAN77‚̃tƒ@ƒCƒ‹‚ð"include"‚·‚é‚ɂ͂ǂ¤‚·‚ê‚΂¢‚¢‚̂łµ‚傤‚©�H ƒRƒ“ƒpƒCƒ‰�[‚Ígfortran-4.4‚ðŽg‚Á‚Ä‚¢‚Ü‚·�BƒfƒtƒHƒ‹ƒg‚ÅŽ©—RŒ`Ž®‚ʼnðŽß‚³‚¹‚½‚çƒRƒ�ƒ“ƒg‚Ì"C"‚âŒp‘±‚Ì"&"‚ ‚½‚è‚ŃGƒ‰�[�o‚邵�A-ffixed-formƒIƒvƒVƒ‡ƒ“‚ŌŒèŒ`Ž®‚Æ‚µ‚ăRƒ“ƒpƒCƒ‹‚µ‚Ä‚à“–‘Rƒ_ƒ�‚Å‚µ‚½�B
825 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/08/24(‰Î) 09:56:29
>>824 “¯‚¶Ž–‚ð‚¢‚ë‚¢‚뎎‚µ‚½‚¯‚Ç�E�EŽ©•ª‚ÌŽž‚͂ǂ¤‚É‚àƒ_ƒ�‚¾‚Á‚½�B
include ‚Á‚Ä‹@ŠB“I‚Ƀtƒ@ƒCƒ‹‚ð‘}“ü‚·‚邾‚¯‚¾‚©‚ç�E�E�E‚Ç‚¤‚É‚à‚È‚ç‚ñ‚悤‚È�B
ˆÌ‚¢�l‚Ì�~—Õ‚ð‘Ò‚Æ‚¤�B
826 �F
824 �F2010/08/24(‰Î) 13:13:26
•ªŽq“®—ÍŠwƒpƒbƒP�[ƒWTinker‚ÉŠî‚¢‚½ƒŒƒvƒŠƒJŒðŠ·MD‚̃vƒ�ƒOƒ‰ƒ€TiReX‚̃\�[ƒXƒR�[ƒh‚ðŒ©‚Ä‚»‚±‚»‚±Žg‚¦‚»‚¤‚È‰ðŒˆ–@‚ª‚ ‚è‚Ü‚µ‚½�B Tinker‚Í77‚̌ŒèŒ`Ž®‚ÅTiReX‚Í95‚ÌŽ©—RŒ`Ž®‚Å‚·�B TiReX‚ÍTinker‚̃‰ƒCƒuƒ‰ƒŠ‚ÆCOMMON‚Ì’è‹`‚ª�‘‚¢‚Ä‚ ‚éƒCƒ“ƒNƒ‹�[ƒhƒtƒ@ƒCƒ‹‚ðŽg‚¢‚Ü‚·�B ƒCƒ“ƒNƒ‹�[ƒhƒtƒ@ƒCƒ‹‚à77‚̌ŒèŒ`Ž®‚Å‚·‚ª�ATiReX‚Ì•û‚ŌŒèŒ`Ž®‚ÅModule‚ð�ì‚è(incmod‚Æ‚µ‚Ü‚·)�A Ž©—RŒ`Ž®‚Ìmainƒ‹�[ƒ`ƒ“‚Ì’†‚Å"use incmod"‚Æ‚·‚ê‚΂¢‚¯‚é‚Ý‚½‚¢‚Å‚·�B
‚»‚ꂪ�³‰ð‚© ƒRƒ“ƒpƒCƒ‹Žž‚Ƀ\�[ƒX‚ªŽ©—RŒ`Ž®ŒÅ’èŒ`Ž®‚²‚Á‚¿‚á‚ɂȂÁ‚ĂȂ¯‚ê‚΂¢‚¢‚킯‚Å
subroutine‚Æfunction‚̈Ⴂ‚Á‚ĂȂñ‚Å‚·‚©�H ‚à‚µ‚Ç‚¿‚ç‚ðŽg‚Á‚Ä‚à–Ú“I‚ª’B�¬‚Å‚«‚é‚È‚ç‚Ç‚Á‚¿‚ðŽg‚¤‚ׂ«‚Å‚·‚©�H �D‚݂Ōˆ‚߂Ă¢‚¢‚Å‚·‚©‚Ë�H
829 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/08/25(�…) 07:25:39
‚¨�D‚«‚È•û‚Å�B‚킵‚Í logical function func(a,b,c...) ‚Ý‚½‚¢‚É�³�í�I—¹‚¾‚Á‚½‚©‚ð‚í‚©‚è‚â‚·‚‚·‚邽‚ß‚É ‹³‰È�‘“I‚É‚ÍSubroutine ‚Å�‘‚‚à‚Ì‚à logical ‚ÈŠÖ�”‚É‚·‚邱‚Æ‚ª‘½‚¢‚¯‚Ç�A •ʂɂ»‚̃Xƒ^ƒCƒ‹‚ð‘¼�l‚ɉŸ‚µ•t‚¯‚é‚قǂ͕֗˜‚ł͂Ȃ¢‚µ�E�E�B
‚Ü‚Ÿ‹³‰È�‘“I‚É‚Ísubroutineˆø�”‚Éierr‚Æ‚©ƒGƒ‰�[—p•Ï�”‚ð“ü‚ê‚Æ‚‚ñ‚¾‚æ‚È
>>828 ’P�ƒ‚Éfunction‚Ȃ玮’†‚Ɋ܂߂ç‚ê‚é“_‚¶‚á‚È‚¢‚©
‚Ç‚¿‚ç‚à•›ƒvƒ�ƒOƒ‰ƒ€‚¾‚µ�A’l‚ð•Ô‚·ˆÈŠO‚ɈႢ‚Í�g‘S‚‚È‚¢�h‚ÆŽv‚Á‚Ä‚é‚ñ‚¾‚¯‚Ç
‚à‚µˆá‚¤‚È‚ç’N‚©Žw“E‚µ‚Ä‚‚¾‚³‚¢
sin(x)/x‚ðŒvŽZ‚µ‚Ä‚‚ê‚éƒTƒuƒ‹�[ƒ`ƒ“‚Á‚Ä‚ ‚è‚Ü‚¹‚ñ‚©�H
832 �F
831 �F2010/08/25(�…) 21:39:29
Œ¾‚¤‚Ì–Y‚ê‚Ă܂µ‚½ sin(x)/x‚Ì‚˜‚ª�¬‚³‚¢‚Æ‚±‚ë‚ð�³Šm‚ÉŒvŽZ‚µ‚Ä‚‚ê‚éƒTƒuƒ‹�[ƒ`ƒ“‚Å‚·
‚Ç‚±‚É‚ ‚é‚©‹³‚¦‚Ä‚à‚炦‚Ü‚¹‚ñ‚©
sincŠÖ�”‚¾‚Á‚¯‚»‚ê �”Šwƒ‰ƒCƒuƒ‰ƒŠ‚Æ‚©‚ɂ͓ü‚Á‚Ä‚é‚ñ‚¶‚á‚È‚¢‚Ì�H
>830 ‚Ç‚¿‚ç‚à•›ƒvƒ�ƒOƒ‰ƒ€‚¾‚µ�A’l‚ð•Ô‚·ˆÈŠO‚ɈႢ‚Í�g‘S‚‚È‚¢�h‚ÆŽv‚Á‚Ä‚é‚ñ‚¾‚¯‚Ç ‚킵‚à‚»‚¤Žv‚¤�B�E�E‚È‚ñ‚©‚ ‚é‚ñ‚©‚È�H
>836
>>837 ‚²‚ß‚ñ�Aƒ~ƒX‚Á‚½�B
>>836 function“à‚Å‚Í�@write(*,*)‚ª‚Å‚«‚È‚¢‚Ì‚ª—Bˆê‚̈Ⴂ‚ÆŽv‚Á‚Ä‚½‚º�B
‚Ö‚¦�A‚»‚¤‚¢‚¤ˆá‚¢‚ª‚ ‚é‚ñ‚¾�E�E�E ‚Å‚à�AŽ©•ª‚Æ‚±‚ë‚Ì Intel Fortran (10.??)‚̓Rƒ“ƒpƒCƒ‹‚ÌŽž‚É•¶‹å‚¢‚Á‚Ä‚±‚È‚¢‚µ�A ‚¿‚á‚ñ‚Æ–³�‘Ž®•W�€�o—Í‚ª‚Í‚½‚ç‚‚æ�B‹KŠiŠO‚È‚ñ‚©‚È�H
>>839 ‚¤�[‚ñ�AЍˆá‚¢‚µ‚Ă܂µ‚½�B
write(*,*) "foo",func
function func()
func = 0.d0
write(*,*) "bar"
end function
‚Æ‚·‚邯recursive I/O error‚ª‚Å‚é‚̂őʖÚ�B
‚Æ‚¢‚¤‚Ì‚ð”]“à•ÏŠ·‚µ‚Ä�Afunction“à‚Åwrite•¶‚ªŽg‚¦‚È‚¢‚Æ‚¢‚¤”]“àƒ‹�[ƒ‹‚É‚µ‚Ă܂µ‚½�B
‚·‚݂܂¹‚ñ�B subroutine‚ł͂ ‚肦‚È‚¢‚±‚¤‚¢‚¤ƒP�[ƒX‚à‚ ‚邿�A‚Æ‚¢‚¤‚±‚Æ‚Å...
841 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/09/10(‹à) 01:41:21
write(*,*) "foo",func function func() ‚È‚é‚Ù‚Ç�I ‚½‚µ‚©‚É‚±‚ꂾ‚ÆŠÖ�”“àI/O ‚ªˆø‚ÁŠ|‚©‚é‚Ë�B ‚¨‚à‚µ‚ë‚¢—Ⴞ�B
‚ �A‚Ù‚ñ‚Æ‚¾�B ‚‚¢subroutine‚Æ“¯‚¶Š´Šo‚Å‚±‚ÌŽè‚̃Gƒ‰�[—p�o—Í‚ð‚â‚肪‚¿‚¾‚¯‚Ç�A‹C‚ð•t‚¯‚È‚«‚á‚— –{—ˆ‚È‚çƒGƒ‰�[Žž‚àˆø�”‚Å‘Î�ˆ‚·‚ׂ«‚©‚à‚µ‚ê‚ñ‚¯‚Ç�A�o—͂ɂ±‚¾‚í‚é‚È‚çwirte(0,*)‚Å‚à‚¢‚¢‚©�B ‚©‚¿�‡‚í‚È‚¯‚ê‚΂¢‚¢‚킯‚Å�B ‚¿‚È‚Ý‚É write(*,*) "foo",func ‚Í�³‚µ‚‚Í func() ‚¾‚æ‚Ë�B ‚Æ‚¢‚¤‚© func ‚̂܂܂¾‚Ærecursive I/O error‚ª�o‚È‚¢‚ñ‚¾‚æ‚Ë�B‚æ‚•ª‚©‚ç‚ñ�E�E�E $ cat a.f90 implicit none real func write(*,*) "foo",func end real function func func = 0.d0 write(*,*) "bar" end function $ ifort a.f90 -warn ; ./a.out foo 0.0000000E+00
>>842 > ‚Æ‚¢‚¤‚© func ‚̂܂܂¾‚Ærecursive I/O error‚ª�o‚È‚¢‚ñ‚¾‚æ‚Ë�B
‚»‚è‚á�A‚»‚̃vƒ�ƒOƒ‰ƒ€‚¾‚Æ"foo"‚ÌŒã‚É ŽÀ�”•Ï�”‚Ìfunc ‚ð•\ަ‚·‚邱‚ƂɂȂ邩‚炾‚ª‚â�B
844 �F
842 �F2010/09/10(‹à) 20:58:29
>>843 ƒEƒbƒn�I‚±‚è‚á’p‚¸‚©‚µ‚¢�E�E�EŽ€‚ñ‚Å‚«‚Ü‚·
846 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/10/01(‹à) 20:25:26
‚Í‚¶‚߂܂µ‚Ä�B �¡�AFORTRAN‚ÅFŒŸ’èŒã‚ÉTŒŸ’è�A“™•ªŽU‚ł͂Ȃ¢TŒŸ’è‚ð�s‚¤‚à‚Ì‚ð�ì‚낤‚©‚Æ�l‚¦‚Ä‚¢‚Ü‚·�B ŠÈ’P‚É�à–¾‚µ‚Ü‚·‚Æ�A‚Q‚‚̓Ɨ§‚µ‚½•W–{‚Ì•½‹Ï‚Ì�·‚Ì—LˆÓ‚³‚ð‚Ý‚é‚à‚̂Ȃ̂ł·‚ª�A Ž„‚͂܂¾‚Ü‚¾–¢�nŽÒ‚Å‚µ‚Ä�A‚»‚̂悤‚ÈŽ—‚½‚悤‚ȃvƒ�ƒOƒ‰ƒ€ƒ\�[ƒX‚Ȃǂ ‚ê‚ÎŽQ�l‚É‚µ‚Ä�‘‚«‚½‚¢‚̂ł·‚ª�A ‚È‚¢‚à‚̂łµ‚傤‚©�H
“ü�o—͂̑•’u”Ô�†‚Ì”ÍˆÍ‚ð‹³‚¦‚Ä‚‚¾‚³‚¢
>>847 ƒRƒ“ƒpƒCƒ‰‚É‚æ‚é‚ñ‚¶‚á‚Ë
�ÄŒ»�«‚̂Ȃ¢ƒGƒ‰�[‚̃fƒoƒbƒO‚Æ‚©‚Ç‚¤‚·‚è‚á‚¢‚¢‚Ì‚æ�E�E�E
>849 ƒ�ƒ‚ƒŠƒAƒNƒZƒX‹^‚Á‚½‚ç�H ”z—ñŠOŽQ�Æ‚µ‚Ă邯‚©
>>849 ŠJ”‚·‚邯‚«‚Í-warnŒn‚Æ-checkŒn‚̃IƒvƒVƒ‡ƒ“‚ð•t‚¯‚邱‚Æ‚ð‹‚Š©‚ß‚é
852 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2010/12/16(–Ø) 20:39:57
‚‚¾‚·‚ê‚Ì•û‚É�‘‚¢‚½‚̂ł·‚ª�A‚±‚Á‚¿‚Ì•û‚ª‚Ó‚³‚킵‚¢‹C‚ª‚µ‚½‚Ì‚Å�A ‹³‚¦‚Ä‚‚¾‚³‚¢�B --- Windows”Å‚Ìifort (Intel Visual Fortran)‚Ńvƒ�ƒtƒ@ƒCƒ‹‚ðŽæ‚é•û–@‚ð‹³‚¦‚Ä‚‚¾‚³‚¢�B ŒŸ�õ‚·‚邯�A ifort -pg hoge.f90 ./a.out gprof ./a.out gmon.out ‚Æ‚¢‚¤‚Ì‚ª‚悌f�Ú‚³‚ê‚Ä‚¢‚é‚̂ł·‚ª�AWindows”łɂÍ�A‰º‹L‚̂悤‚É -pg‚̑Ήž•¨‚ª‚È‚¢‚悤‚Å‚·�B map_opts -tw -lf -opts -pg Intel(R) Compiler option mapping tool mapping Linux options to Windows for Fortran '-pg' Linux option maps to --> no equivalent Windows option found
�[debug ‚©‚È�H ƒfƒoƒbƒK‚Íidb‚¶‚á‚È‚¢‚Ì�HLinux‚¾‚¯‚È‚ñ‚©‚È�B
”{�¸“x‚Ídouble precision‚Å‚·‚ª�A4”{�¸“x‚Íquadruple precision‚Å‚¢‚¢‚©‚Æ‚¢‚¤‚Æ ‚»‚¤‚ł͂Ȃ¢‚悤‚Å‚·‚Ë�Bˆê•”‚ł͑Ήž‚µ‚Ă邻‚¤‚Å‚·‚ª�B real*8‚â real*16�A‚à‚µ‚‚ÍkindŽw’è‚Å“�ˆê‚µ‚½‚Ù‚¤‚ª‚¢‚¢‚悤‚È‹C‚ª‚·‚é‚ñ‚Å‚·‚ª�B ‚¾‚¢‚¢‚¿�`precision‚Æ‚©�‘‚‚Ì‚Í�ç’·‚·‚¬‚Ü‚·‚æ‚Ë�B‰½‚Å‚»‚ñ‚Ȃӂ¤‚ÉŒˆ‚Ü‚Á‚½‚ñ‚¾‚©�E�E�E�B ‚Æ‚¢‚¤‚©Ž©•ª‚̓Rƒ“ƒpƒCƒ‹ƒIƒvƒVƒ‡ƒ“‚Å-real-size 64‚ȂǂƂµ‚Ä‹�§“I‚É“�ˆê‚µ‚Ă܂·�B Ž®‚ÌŽÀ�”‚Å�ud0�v‚ȂǂƖ–”ö‚É•t‚¯‚È‚¢‚Å�ςނµ�B Ž¿–â‚Æ‚¢‚¤‚킯‚ł͂Ȃ¢‚Å‚·‚ª�AŠF—l‚Ç‚¤Žv‚¢‚Ü‚·‚©‚Ë�H
>>854 DOUBLE PRECISION ‚ÍFORTRAN‚U‚UŽž‘ã‚É“±“ü‚³‚ꂽ”{�¸“x‚Ì�³‹K‚Ì�錾–@‚Å‚±‚¿‚炪–{‰Æ�B
REAL*8‚ȂǂÍFORTRAN77Žž‘ã‚ÉŽg‚í‚ê‚邿‚¤‚ɂȂÁ‚½‹L–@�B
‚Ü‚½KIND‚ÍFortran90‚Å“±“ü‚³‚ꂽ‹L–@�B
‚ ‚Æ‚S”{�¸“x‚ÍFORTRAN‚V‚V‚܂ł͋KŠiŠO‚ÌŠg’£�B90ˆÈ�~‚Å‚à•K�{‚ł͂Ȃ¢�B
‚æ‚Á‚ÄKIND‚̈ê‚‚Ƃµ‚Ä‘¶�Ý‚µ‚Ä‚¢‚Ä‚à‚©‚Ü‚í‚È‚¢‚ª�Aquadruple precision‚̂悤‚È
�V‚½‚È–½—ß‚ðŠú‘Ò‚·‚é‚̂͂¨–åˆá‚¢‚ƂȂé�B
‚È‚¨Œ»�݂łÍKIND•ûŽ®‚Å“�ˆê‚·‚é‚Ì‚ª‚æ‚낵‚¢‚Æ‚³‚ê‚Ä‚¢‚é�B
‚Ƃɂ©‚‚T‚O”N•ª‚‚ç‚¢Žž‘ã‚ð‚²‚Á‚¿‚á‚É‚µ‚Ä‚¢‚é�BŒÃ•¶�EŠ¿•¶‚̃mƒŠ‚Å‚U‚U�A‚V‚V‚ðŠw‚Ô‚ª‹g�B
AUTODBL‚ÌŒ�‚¾‚ª�A—ðŽj“I‚ÉFORTRAN‚Å‚ÍINTEGER‚Æ’P�¸“xREAL‚̃��[ƒh’·‚ªˆê’v‚·‚邱‚Æ‚ª
�iˆÃ–Ù‚É�H�j—v‹�‚³‚ê‚Ä‚«‚½‚Ì‚Å�A�ã•i‚Ȃ炴‚é�U‚é•‘‚¢‚ð‚µ‚Ä‚¢‚邱‚ƂɂȂÁ‚Ä‚¢‚邱‚Æ‚ðŽw“E‚µ‚Ä‚¨‚«‚½‚¢�B
Ž„ŒÂ�l‚Í�D‚݂̖â‘è‚ÅŽg‚¤‚àŽg‚í‚Ê‚à�ŸŽè‚¾‚ÆŽv‚¤‚ª�A‚µ‚΂炑O‚É
gfortran‚¾‚Á‚½‚©g95‚¾‚©‚̃fƒtƒH�[ƒ‹ƒgREAL‚ª”{�¸“x8byte‚Å�AƒfƒtƒH�[ƒ‹ƒgINTEGER‚Ì
‚SƒoƒCƒg‚ƈê’v‚µ‚Ä‚¢‚È‚©‚Á‚½‚½‚ß‚É�AŠO�l‚Ì‚¨‚Á‚³‚ñ‚½‚¿‚ªBizzare–ì˜YŒÄ‚΂í‚è‚Å•³–¡‘X‚É”l‚µ‚Á‚Ä‚¢‚½‚—
”ñ�펯‚©‚”j—õ’p‚ÈàÎåö•¨’—ñƒŒƒxƒ‹‚Ì�U‚é•‘‚¢‚Æ‚³‚݂Ȃ³‚ꂽ‚悤‚¾�B
‚½‚µ‚©‚ÉCOMMON�AEQUIVALENCE�AƒzƒŒƒŠƒXŽg‚¢‚Ü‚‚è‚Ì�̂̃vƒ�ƒOƒ‰ƒ€‚ɂ͕s“s�‡‹É‚Ü‚è‚È‚¢�B
>>855 ƒŒƒX‚Ç‚¤‚à‚Å‚·�B‚‚©�A�Ú‚µ‚·‚¬‚é�E�E�E
‚»‚¤‚¢‚¦‚Î�Areal(8)‚âreal*8‚Ì�”Žš‚̈Ӗ¡�i�¸“x‚Ȃ̂©ƒoƒCƒg�”‚Ȃ̂©‚»‚êˆÈŠO‚©�j‚ª
‚«‚¿‚ñ‚Æ‹KŠi‚Å“�ˆê‚³‚ê‚Ä‚¢‚È‚¢‚Æ‚¢‚¤˜b‚ð•·‚¢‚½‚±‚Æ‚ª�B
‚½‚Æ‚¦‚Îcomplex‚¾‚Æ�A•�’Ê‚Ícomplex*8‚Å’P�¸“x‚¾‚¯‚ÇŽÀ‘•‚É‚æ‚Á‚Ă͔{�¸“x‚Ì�ê�‡‚à‚ ‚邯‚©�B
‚»‚̕ӂ̉ðŒˆ�ô‚Æ‚µ‚Äkind‚ª“±“ü‚³‚ꂽ‚ñ‚¾‚ÆŽv‚¤‚ñ‚¾‚¯‚Ç�A‹ê“÷‚Ì�ô‚Æ‚¢‚¤‚©
‚ ‚ñ‚܃Xƒ}�[ƒg‚¶‚á‚È‚¢‚悤‚È�E�E�E�B‚Â�[‚©�Acomplex(kind(0d0)) ‚Æ‚©’·‚Á‚½‚炵‚¢‚æ‚—
>>857 ‚Ü‚ ŠT‚˃Aƒ}ƒ]ƒ“‚Ì�‘•]‚Æ“¯‚¶‚悤‚ÈŠ´‘z‚Å‚·‚ª
�uFortran 95/2003 Explained�v
Œ¾ŒêƒŠƒtƒ@ƒŒƒ“ƒX‘ã‚í‚è‚ÉŽg‚¤‚Ȃ炱‚ꂪ�Å“K�B
‚³‚·‚ªMichael Metcalf‚³‚ñ�B‚»‚Ì‘ã‚í‚èƒTƒ“ƒvƒ‹ƒR�[ƒh‚ª�‚È‚ß�B
�uFortran 95/2003 for Scientists & Engineers�v
ƒTƒ“ƒvƒ‹ƒR�[ƒh‚≉�K–â‘肪‘½‚¢‚̂ŋï‘Ì“I‚ÈŽg‚¢•û‚ª—�‰ð‚µ‚â‚·‚¢�B
‚½‚¾‚µFortran 2003‚ŒljÁ‚³‚ꂽ‹@”\‚ɂ‚¢‚Ă͉ð�à‚ª�‚È‚ß�B
ISO_C_BINDING ‚â IEEE_* ‚Ì�à–¾‚ªŒ©“–‚½‚ç‚È‚¢‚ñ‚Å‚·‚ª�E�E�E
•ªŒú‚¢‚Ì‚ÅƒŠƒtƒ@ƒŒƒ“ƒX‘ã‚í‚è‚É‚·‚é‚Ì‚Í��X•sŒü‚«�B
�uThe Fortran 2003 Handbook�v‚͓ǂñ‚¾‚±‚ƂȂ¢‚̂ł킩‚è‚Ü‚¹‚ñ�B
�u�` Explained�v‚ÍF2008‚ɑΉž‚µ‚½�V‚µ‚¢”Å‚ª‚à‚¤‚·‚®�o‚é�E�E�E‚ÆŽv‚Á‚Ä‚½‚ç
‚¢‚‚̊Ԃɂ©””„“ú‚ª‚VŒŽ‚ɂȂÁ‚Ä‚é‚Ì‚Ë�E�E�E
859 �F
857 �F2011/01/19(�…) 12:37:23
>>857 Google Books‚È‚ñ‚©‚Å‚í‚è‚Æ’†�g‚ª‚Ì‚¼‚¯‚½‚è‚·‚é�B
Guide to Fortran 2003 Programming, Walter S. Brainerd ‚ªŠ„‚Æ“ü–åŽÒ‚Þ‚¯‚̌ÓT“I‚È‹³‰È�‘‚ɋ߂¢‚ÆŽv‚¤�B
OOP‚Æ‚©2003ŒÅ—L‚Ì•”•ª‚Í‚»‚ê‚Ù‚Ç‘½‚‚È‚�AFortran‘S”Ê‚É�‘‚©‚ê‚Ä‚¢‚é�B
Introduction to Programming with Fortran: with coverage of Fortran 90, 95, 2003 and 77,
Ian Chivers & Jane Sleightholme
‚±‚ê‚Í�AFortran77‚ ‚½‚è‚©‚çŠg’£‚µ‚Ä‚¢‚Á‚½–{‚Ȃ̂ł·‚Á‚«‚肵‚Ä‚¢‚È‚¢�B‚ ‚ñ‚Ü—Ç‚‚È‚¢�B
Fortran 95/2003 for Scientists & Engineers, Stephen Chapman (2007”N)
‚à‚Á‚ĂȂ¢�B‚ª�ã‚ÌIan Chivers‚Ì–{‚Æ“¯‚¶‚�A‰·�ò—·ŠÙŽ®‚Ì”ì‘剻–{‚¾‚ÆŽv‚¤�B
Fortran 95/2003 Explained, Michael Metcalf (2004”N)
‚P�û”ƒ‚¤‚Ȃ炱‚ê‚©‚È�H‘åŠT‚±‚Ì–{‚µ‚©Œ©‚È‚¢�B
‚½‚¾�A“ü–åŽÒŒü‚«‚ł͂Ȃ¢�B
>>858 ‚Ì�‘‚¢‚Ä‚¢‚邿‚¤‚ÉƒŠƒtƒ@ƒŒƒ“ƒX‚ɋ߂¢�B
‚µ‚©‚µ�AŠÌ‚ƂȂ镔•ª‚ð‚ª‚Á‚¿‚è�‘‚¢‚Ä‚¢‚é‚̂ŕ֗˜�B
The Fortran 2003 Handbook, Jeanne C. Adams (2008”N)
FortranXX�@Explained�@‚æ‚è‚à‚³‚ç‚ÉŒ¾Œê‹KŠi�‘‚æ‚è‚É�‘‚©‚ê‚Ä‚¢‚é�B
‚±‚ê‚à“ü–åŽÒŒü‚«‚łȂ¢�BŽ«�‘‚Á‚Û‚¢Š´‚¶�B
861 �F
857 �F2011/01/21(‹à) 22:22:14
>>860 �F�X‚Æ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B‚Ü‚¸‚ÍExplained‚𔃂Á‚Ă݂܂·�B
862 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2011/01/28(‹à) 22:24:29
‚Í‚¢
863 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2011/01/30(“ú) 10:16:20
‚¢‚¢‚¦
‚Ç‚Á‚¿‚¾‚æ‚—
865 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2011/02/15(‰Î) 13:15:27
FORTRAN‚Æ‚¢‚¤‚Æcommonƒuƒ�ƒbƒN‚Æ‚¢‚¤Œ¾—t‚ªƒZƒbƒg‚Å�o‚Ä‚‚邯‚Ç ‚È‚ñ‚¾‚낤
C‚ŃK�[ƒxƒWƒRƒŒƒNƒVƒ‡ƒ“‚ª�o‚Ä‚‚é‚̂Ɠ¯‚¶‚¾‚×�H COMMON‚Í‘åˆæ•Ï�”‚ł͂Ȃ�AŽ©—R‚ÉŽv‚¢‚̂܂܂ɃK�[ƒxƒWƒRƒŒƒNƒVƒ‡ƒ“‚̂ł«‚鋤—L’n‚¾‚º�I
867 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2011/02/18(‹à) 15:02:30
ˆÈ‰º‚ð�A ifort -c -warn all test.f90 ‚ŃRƒ“ƒpƒCƒ‹‚·‚邯�AVer.10.1‚¾‚ƃGƒ‰�[‚ª�o‚È‚¢‚ª�AVer.11.1‚¾‚Æ test.f90(9): error #7137: Any procedure referenced in a PURE procedure, including one referenced via a defined operation or assignmnent, must be explicitly declared PURE. [PURE_FF] xxx = pure_ff() ‚Æ‚¢‚¤ƒGƒ‰�[‚ª�o‚é�B‹KŠi�ã‚Í�A(C,F77‚Å�‘‚©‚ꂽ)ŠO•”ŠÖ�”‚Ípure‚ɂł«‚È‚¢? !test.f90 module A interface elemental real(8) function pure_ff() end function end interface contains pure real(8) function xxx () xxx = pure_ff() xxx = pure_ff() end function end module
mac‚Égfortran‚¢‚ê‚Ä�A ƒ^�[ƒ~ƒiƒ‹‚©‚ç $�@gfortran hoge.for ‚µ‚Ü‚µ‚½�B‚»‚ê‚©‚ç$ ./a.out‚µ‚Ă݂܂µ‚½‚ª�A At line 22 of file hoge.f Fortran runtime error: No such file or directory 22�s–Ú‚ª‚¨‚©‚µ‚¢‚Á‚Ä‚±‚Ƃ݂½‚¢‚Å‚·�B –{—ˆ‚Å‚ ‚ê‚Î�Aƒtƒ@ƒCƒ‹–¼‚Ì“ü—Í‚ð‹�‚ß‚ç‚ê‚é‚炵‚¢‚Å‚·�B ‚µ‚ç‚ׂĂ݂½‚ç�A.for‚Á‚đГ–ŒÃ‚¢‚Ý‚½‚¢‚Å‚·‚Ë�BŒÅ’èŒ`Ž®‚¾‚Æ‚©�B ‚à‚Æ‚Íwindows—p‚É�‘‚¢‚½‚炵‚¢‚̂ł·‚ª�AOS‚âƒRƒ“ƒpƒCƒ‰‚ÌŽd—l‚Ɉˑ¶‚µ‚Ä‚¢‚½‚è‚·‚é‚̂łµ‚傤‚©�H ƒAƒhƒoƒCƒX‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·�BŠ„‚è�ž‚Ý‚·‚¢‚Ü‚¹‚ñ�B
ƒRƒ“ƒpƒCƒ‰ˆË‘¶‚ÍŠm‚©‚É‚ ‚é�BƒRƒ“ƒpƒCƒ‰‚ð•Ï‚¦‚½‚çƒRƒ“ƒpƒCƒ‹ƒGƒ‰�[‚Æ‚©�B OSˆË‘¶‚à�AˆË‘¶‚·‚邿‚¤‚ȃR�[ƒh‚Ì�‘‚«•û‚ð‚·‚ê‚Έˑ¶‚·‚é�B ƒGƒ‰�[ƒ�ƒbƒZ�[ƒW‚Ì“à—e‚Í—�‰ð‚Å‚«‚Ä‚¢‚é‚©‚È�Hhoge.f‚Ì22�s–Ú‚ÍŒ©‚Ă݂½�H •ª‚©‚ç‚È‚¯‚ê‚Î�AŽæ‚è�‡‚¦‚¸22�s–Ú‚Ì‘OŒã�”�s‚ð‚±‚±‚ɃRƒsƒy‚µ‚Ă݂½‚ç‚Ç‚¤‚¾‚낤�B
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B�‘‚«•û‚É‚æ‚Á‚Ă͈ˑ¶‚·‚é‚ñ‚Å‚·‚Ë�B ‚¨Œ¾—t‚Ɋ¦�Ahoge.f‚Ì19~26�s–ڂ𒣂点‚Ä‚¢‚½‚¾‚«‚Ü‚·�B 19 c 20 open(7,file='con') 21 write(7,'('' input filename'')') 22 open(8,file=' ') 23 write(7,'('' output file or devicename'')') 24 open(6,file=' ') 25 call input(ipro) 26 c ƒGƒ‰�[‚ÉŠÖ‚µ‚Ä‚Í�A‚»‚ñ‚ȃtƒ@ƒCƒ‹‚âƒfƒBƒŒƒNƒgƒŠ‚Í–³‚¢�I‚Á‚Ä“{‚Á‚Ä‚é‚Á‚Ä‚±‚Ƃł¢‚¢‚ñ‚Å‚µ‚傤‚©�B Žæ‚è�‡‚¦‚¸�Ac‚Á‚Ă̂ª�̂̃Rƒ�ƒ“ƒg�s‚Å‚ ‚邱‚Æ�Aopen‚Æwrite‚ªƒtƒ@ƒCƒ‹‘€�ì‚ð‚µ‚æ‚¤‚Æ‚µ‚Ä‚é‚Á‚Ä‚±‚Æ�A7‚Æ‚©‚W‚Æ‚©‚ª‘•’u”Ô�†‚ƌĂ΂ê‚Ä‚¢‚é‚Á‚Ä‚±‚Ƃ͕ª‚©‚è‚Ü‚·�B
‚È‚ñ‚¶‚Ⴑ‚è‚á�H�I ƒtƒ@ƒCƒ‹–¼‚Ì“ü—Í‚ð‹�‚ß‚éƒ�ƒbƒZ�[ƒW‚ð�A‚È‚º•W�€�o—͂ł͂Ȃcon‚É�‘‚«�o‚µ‚Ä‚¢‚é‚Ì‚©�H •W�€�o—͂Ƃµ‚Ä—\–ñ‚³‚ê‚Ä‚¢‚é‘•’u”Ô�†6”Ô‚ª�A‚È‚ºƒtƒ@ƒCƒ‹‚Æ‚µ‚Äopen‚³‚ê‚é‚Ì‚©�H ‚È‚ºƒtƒ@ƒCƒ‹–¼‚ª' '‚Ȃ̂©�H�iŽ©•ª‚Å“K‹X�‘‚«Š·‚¦‚ë‚Á‚Ä‚±‚ƂȂ̂©�H ‚»‚ê‚Æ‚à�Afile=' '‚Æ‚·‚邯�AŽ©“®“I‚Ƀtƒ@ƒCƒ‹–¼‚ð�q‚˂Ă‚ê‚éƒRƒ“ƒpƒCƒ‰‚ª‚ ‚é‚Ì‚©�H�j 22�A24�s–Ú‚Ìfile=' '‚ðŽ©•ª‚Å�‘‚«’¼‚·•K—v‚ª‚ ‚邯Žv‚¤�B ‚¨‚»‚ç‚8”Ô‚ª“ü—̓f�[ƒ^‚ª“ü‚Á‚½ƒtƒ@ƒCƒ‹‚Å�A6”Ô‚ª�o—Í‚ð�‘‚«�o‚·ƒtƒ@ƒCƒ‹‚¾‚낤‚©‚ç�A“K‹X‚¶‚Ô‚ñ‚Å�‘‚«’¼‚µ‚Ä�B Ž©•ª‚È‚ç”O‚Ì‚½‚ß�A‘•’u”Ô�†‚ÌŽg‚í‚ê•û‚𒲂ׂ邽‚ß‚É"read.*8"‚Æ‚©"write.*6"‚ªƒR�[ƒh“à‚ÅŽg‚í‚ê‚Ä‚¢‚邯‚±‚ë‚ðŒŸ�õ‚·‚é�B grep -ine"read.*8" ./*.for ‚»‚ê‚ð—Š‚è‚É�Aƒvƒ�ƒOƒ‰ƒ€‚Ì‹““®‚ð’Ç�Õ‚·‚é�Bmac‚Ågrep‚Á‚ÄŽg‚¦‚é‚Ì‚©‚È�H
>>871 >‚»‚ê‚Æ‚à�Afile=' '‚Æ‚·‚邯�AŽ©“®“I‚Ƀtƒ@ƒCƒ‹–¼‚ð�q‚˂Ă‚ê‚éƒRƒ“ƒpƒCƒ‰‚ª‚ ‚é‚Ì‚©�H
—Ç‚•ª‚©‚ñ‚È‚¢‚Å‚·‚¯‚Ç‘½•ª‚»‚¤‚¾‚ÆŽv‚¢‚Ü‚·�B
�l‚ÌPC‚ÅŽÀ�s‚µ‚½.exe‚Í�A
ƒ}ƒCƒNƒ�ƒ\ƒtƒg‚©‚ÈŠ¿Žš•ÏŠ·�@ƒo�[ƒWƒ‡ƒ“2.51
(C)Copyright Microsoft Corp. 1992-1993
input filename
File name missing or blank - please enter file name
UNIT 8?
‚Á‚Ăł܂·�Binput filename‚Íhoge.f‚É‚ ‚è‚Ü‚·‚æ‚Ë�B
>“K�鎩•ª‚Å�‘‚«’¼‚µ‚Ä
‚Æ‚ ‚è‚Ü‚·‚ª�Aƒtƒ@ƒCƒ‹–¼‚¾‚¯‚ðŽw’肵‚½�ê�‡�Aa.out‚Ì‚ ‚éƒfƒBƒŒƒNƒgƒŠ‚É‚ ‚éƒtƒ@ƒCƒ‹‚Æ‚µ‚ēǂÝ�ž‚Ü‚ê‚é‚̂łµ‚傤‚©�H
‚Ü�A‚Ƃɂ©‚‚â‚Á‚Ă݂܂·�B
‚Ç‚¤‚à‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�I
>>871 grep‚È‚é‚à‚͕̂ª‚©‚è‚Ü‚¹‚ñ‚ª�A‚Æ‚è‚ ‚¦‚¸ƒGƒfƒBƒ^‚ÅŒŸ�õ‚©‚¯‚Ă݂܂µ‚½�B
Œ»�Ý�Ahoge.f‚̓fƒBƒXƒNƒgƒbƒv�ã‚É‚ ‚è�AƒRƒ“ƒpƒCƒ‹Œã‚̃tƒ@ƒCƒ‹a.out‚ƓǂÝ�ž‚Ü‚¹‚½‚¢ƒf�[ƒ^B1.txt‚àƒfƒBƒXƒNƒgƒbƒv�ã‚É‚ ‚è‚Ü‚·�B
19c
20 open(7,file='con')
21 write(7,'('' input filename'')')
22 open(8,file='B1.txt')
23 write(7,'('' output file or devicename'')')
24 open(6,file='b1.out')
25 call input(ipro)
26c
‚É•Ï�X‚µ‚Ă݂܂µ‚½�B
Œ‹‹Ç‚̂Ƃ±‚ë�A
At line 22 of file fem3.f
Fortran runtime error: No such file or directory
‚Ƃ̂±‚Ƃł·�B22�s–Ú‚©‚ç�i‚݂܂¹‚ñ�B
‚Ä‚¢‚¤‚©�A‚È‚º�Ainput filename‚Á‚ă�ƒbƒZ�[ƒW‚·‚ç�o‚È‚¢‚Ì‚©�B
‚¨Žè�ã‚°‚Å‚·�B
‚»‚ñ‚ȂƂ«‚Í�AƒGƒ‰�[ƒ�ƒbƒZ�[ƒW‚Ƃ͊֌W‚È‚¢‚Æ‚±‚낪–â‘è‚ɂȂÁ‚Ä‚¢‚é‚Ì‚©‚à’m‚ê‚È‚¢�B ŽŽ‚µ‚Ƀ\�[ƒXƒR�[ƒh‚ÌŠg’£Žq.f‚ð.f90‚É‚µ‚ăRƒ“ƒpƒCƒ‹‚µ‚Ă݂Ä�B
>‚Ä‚¢‚¤‚©�A‚È‚º�Ainput filename‚Á‚ă�ƒbƒZ�[ƒW‚·‚ç�o‚È‚¢‚Ì‚©�B ‚±‚ê‚Í�Acon‚Á‚Ä‚¢‚¤ƒtƒ@ƒCƒ‹‚É�‘‚«�ž‚Ü‚ê‚Ä‚¢‚È‚¢‚©‚È�H ƒfƒXƒNƒgƒbƒv‚Écon‚Á‚Ä‚¢‚¤ƒtƒ@ƒCƒ‹‚ª‚Å‚«‚Ä‚¢‚邯Žv‚¤�B
>>874 .f90‚É‚µ‚ăRƒ“ƒpƒCƒ‹‚µ‚Ă݂܂µ‚½�BŒ‹‹ÇƒGƒ‰�[ƒ�ƒbƒZ�[ƒW‚Ì—’�B
.f‚Å‚Íc‚Æ‚·‚邯�AcŒ¾Œê‚Å‚¢‚¤//‚ɂȂé‚Ý‚½‚¢‚Å‚·‚ª�A.f90‚ł͂Ȃç‚È‚¢‚Ý‚½‚¢‚Å‚·�Bfixcom‚Æ‚¢‚¤.f‚ð.f90‚ɕϊ·‚·‚éƒvƒ�ƒOƒ‰ƒ€‚ðŒ©‚Â‚¯‚½‚̂ŕϊ·‚µ�AƒRƒ“ƒpƒCƒ‹‚µ‚Ă݂܂µ‚½‚ª�AŒ‹‰Ê‚͕ςí‚炸�B
At line 22 of file hoge.f90
Fortran runtime error: No such file or directory
‚¿‚Ȃ݂É�A•ÏŠ·Œã‚̃R�[ƒh‚Í�A‚Ï‚Á‚ÆŒ©�Ac‚ð!‚É’u‚«Š·‚¦‚Ä‚¢‚邾‚¯‚Ý‚½‚¢‚Å‚µ‚½�B
>>875 ‚¨‚Á‚µ‚á‚邯‚¨‚è�Acon‚Á‚ătƒ@ƒCƒ‹‚ª‚Å‚«‚Ă܂µ‚½�B
‘•’u”Ô�†‚ð6‚É‚©‚¦‚Ă݂܂µ‚½‚ª�Aƒ^�[ƒ~ƒiƒ‹‚É‚Í�o—Í‚³‚ꂸ�Acon‚Á‚ătƒ@ƒCƒ‹‚ª‚Å‚«‚Ü‚·�B
>>876 ƒvƒ�ƒOƒ‰ƒ€‚ª‹É’[‚É’·‚‚È‚¢‚Ȃ炱‚±‚É“\‚è•t‚¯‚¿‚á‚Á‚½•û‚ª‘�‚¢‚©‚à‚æ
1�s–Ú‚©‚ç30�s–Ú‚®‚ç‚¢‚Ü‚Å‚Å‚à‚¢‚¢‚¯‚Ç
’·•¶“\‚Á‚Ä‚à’N‚à“{‚ç‚È‚¢‚µ‚Ë
‘½•ª�A22�s–ڈȊO‚àƒoƒO‚Á‚Ä‚»‚¤
‘¼‚̃‚ƒWƒ…�[ƒ‹�i•Ï�”‚Æ‚©‚ð�‘‚¢‚Ä‚¨‚�Š�j‚ðŽg‚Á‚ăOƒ��[ƒoƒ‹•Ï�”‚ª‚ ‚邯–Ê“|‚©‚È
>>877 ‚¨Œ¾—t‚Ɋ¦‚Ä�A�A�A‚Á‚Ä‘S•”‚Å‚W‚V‚O�s‚®‚ç‚¢‚ ‚é‚Ì‚Å�A�A�A
Žæ‚è�‡‚¦‚¸�AC‚Å‚¢‚¤�Amain‚Á‚Û‚¢‚Æ‚±‚¾‚¯’£‚è‚Ü‚·�B•K—v‚ª‚ ‚邿‚¤‚È‚ç“K‹X�B7~53�s–Ú‚Å‚·�B
7 c main program
8 common/a/ ym1,ym2,pois1,pois2,thick,ntj,nte,npar,nst,nbc,nlc,
9 1 eqstx(5),eqsty(5),eqsts(5),mdir(5),mkind(5),jemk(600),
10 2 mtj(600,3),road(500),lc(500),mbc(500),p(800),lank(800),
11 3 disp(800),ddisp(800),foce(800),focem(800),ifail(600)
12 common/b/ ex(600),ey(600),ez(600),gxy(600),th(600),eqst(600),
13 1 sigmax(600),sigmay(600),sigmal(600),sigmat(600),
14 2 sigmaz(600),tauxy(600),tault(600),fract(600),
15 3 dela(3,3),com(3,6),elk(6,6)
16 common/c/ syk1(15000),index1(800)
17 common/d/ index2(800)
18c************************************************************************
19c
20 open(7,file='con')
21 write(7,'('' input filename'')')
22 open(18,file=' ')
23 write(7,'('' output file or devicename'')')
24 open(6,file=' ')
25 call input(ipro)
‘±‚«‚Å‚·�B 26c 27 do 1000 inc=1,nst 28c 29 write(7,50) inc 30 50 format(' **** No.',i4,' *****'/) 31c 32 call alloc 33 call clasfy 34 write(7,'('' calsyk running'')') 35 call calsyk 36c 37 do 40 i=1,2*ntj 38 foce(i)=focem(i)/nst 39 40 continue 40c 41 write(7,'('' solver running '')') 42 call solver 43 write(7,'('' result running '')') 44 call result 45 write(7,'(/)') 46c 47 if (ipro.eq.0) goto 1000 48 call output 49 1000 continue 50 if (ipro.eq.0) call output 51c 52 stop 53 end
>>878 ‚·‚Å‚É�A871‚³‚ñ‚ª�‘‚©‚ê‚Ä‚¢‚邯‚¨‚è‚Å‚·�B
Fortran‚Å‚Í�ACŒ¾Œê‚Ì•W�€“ü—Í‚Í5”Ô�A•W�€�o—Í‚Í6”Ô‚ÉŠ„‚è“–‚Ä‚ç‚ê‚Ä‚¢‚Ü‚·�B
open‚·‚é•K—v‚Í‚ ‚è‚Ü‚¹‚ñ�B‚±‚ê‚ç‚Í�A'*'‚Å�‘‚‚±‚Æ‚ª‚Å‚«‚Ü‚·�B
‚µ‚½‚ª‚Á‚Ä�A878,979‚Ì
write(7,
‚ð�A‚·‚ׂÄ�A
write(*,
‚É‚·‚ê‚Î�A‰æ–ʂɕ\ަ‚³‚ê‚Ü‚·�B
22�s–Ú�A24�s–Ú‚Ìopen•¶‚Åfile–¼‚ðŽw’肵‚Ä‚¢‚È‚¢‚̂͂悂Ȃ¢‚Ì‚Å�A
‚«‚¿‚ñ‚ƃtƒ@ƒCƒ‹–¼‚ðŽw’肵‚ĉº‚³‚¢�B24�s–ڂɂ‚¢‚Ă͂³‚ç‚É”Ô�†‚ð
6ˆÈŠO‚É•Ï�X‚µ‚ĉº‚³‚¢�B
‚»‚Ì‘¼�A‹C‚ɂȂé“_‚Í�F
47�s–Ú�F‚±‚Ì—l‚È–Ú“I‚Ågoto•¶‚ðŽg—p‚µ‚È‚¢‚Ù‚¤‚ª‚¢‚¢‚Å‚µ‚傤�B
goto•¶‚Í�A‚æ‚Á‚ۂǂ̂±‚Æ‚ª‚È‚¢ŒÀ‚èŽg—p‚µ‚È‚¢‚Å‚‚¾‚³‚¢�B
•¶”Ô�†‚ÌŽg—p‚àŽ~‚߂܂µ‚傤�Bdoƒ‹�[ƒv‚Ì�I‚í‚è‚Íend do•¶‚Æ‚µ‚Ü‚µ‚傤�B
common•¶‚͂Ȃé‚ׂŽg‚í‚È‚¢‚悤‚É‚µ‚Ü‚µ‚傤�B
Šî–{“I‚É�A“ú–{‚ÅFortran‚ÆŒ¾‚¦‚Î�AFortran2003‚Ȃ̂Å(JIS‚Å‚»‚̂悤‚É
Œˆ‚Ü‚Á‚Ä‚¢‚é)�AFORTRAN77‚ł͂Ȃ�A�V‚µ‚߂̕¶–@‚Å�‘‚‚Ì‚ª‚¢‚¢‚ÆŽv‚¢‚Ü‚·�B
ŠÂ‹«‚ªmac‚̂悤‚Å‚·‚ª�AunixŒn‚ÌOS‚Ì�ê�‡‚É‚Í�A“Á‚Ƀtƒ@ƒCƒ‹‚ðopen•¶‚Å
ŠJ‚•K—v‚Í‚ ‚è‚Ü‚¹‚ñ�BƒfƒtƒHƒ‹ƒg‚Å�A—Ⴆ‚Î7”Ô‚Ì�ê�‡‚Ífort.7�A
8”Ô‚Ì�ê�‡‚Ífort.8‚©‚ç“Ç‚Ý�‘‚«‚µ‚悤‚Æ‚µ‚Ä‚¢‚Ü‚·(ƒRƒ“ƒpƒCƒ‰‚É‚æ‚è‚Ü‚·‚ª)�B
ƒvƒ�ƒOƒ‰ƒ€ŽÀ�s‘O‚É�AƒVƒFƒ‹ƒXƒNƒŠƒvƒg‚Å�AƒVƒ“ƒ{ƒŠƒbƒNƒŠƒ“ƒN‚ðŽg‚Á‚Ä
'fort.”Ô�†'‚̃tƒ@ƒCƒ‹‚ð�ì‚Á‚Ä‚¨‚¯‚Ζâ‘è‚ ‚è‚Ü‚¹‚ñ�B
>>880 ‚Ç‚¤‚à‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
‚â‚Á‚Ă݂܂·�B
‚â‚͂肱‚ê‚ÍFortran77‚Ȃ̂ł·‚Ë�B•½�¬Œ³”N‚É�ì�¬‚³‚ꂽ‚悤‚Å‚·�B
Fortran‚ɂ‚¢‚Ä’²‚ׂĂà�A‚µ‚å‚Á‚ςȂ©‚çˆá‚Á‚Ä‚¢‚é‚̂œr•û‚É•é‚ê‚Ä‚¢‚Ü‚µ‚½�B
�K�@‚¢‚³‚¹‚ç‚ê‚Ä‚é‚Ì‚©
>>882 Œy‚�à–¾‚·‚邯�A
�u‚±‚̃\ƒtƒg‚‚©‚Á‚ĉۑè‚â‚Á‚Ä‚«‚Ä‚Ë�B‚Âhoge.exe�v
�u�imac‚È‚ñ‚Å‚·‚¯‚Ç�A�A�A�jƒR�[ƒh‚ ‚è‚Ü‚·�H�v
�u‚Âhoge.f�v
�ugfortran hoge.f‚Á‚Æ�BƒRƒ“ƒpƒCƒ‹‚Å‚«‚½�[�BŽÀ�s‚Å‚«‚È‚¢orz�@‚¦�[‚Á‚Æ�HFortran‚È‚ñ‚Ä•ª‚©‚ç‚ñ�A�A�A�v
‚Æ�A‚Ü‚ �A‚±‚ñ‚ÈŠ´‚¶‚Å�B
Fortran‚𒲂ׂĂ݂Ăà�A–¾‚ç‚©‚ɈႤ‚µ‚Å�¢‚Á‚½‚¢‚½–ó‚Å‚·�B
ŒÂ�l“I‚ÈŒ‹˜_‚Í
ƒR�[ƒhŽ©‘Ì‚ª‚ß‚Á‚¿‚áŒÃ‚¢�B
‚µ‚©‚àŠÂ‹«ˆË‘¶‚‚³‚¢�B
‚Å‚·�B
‚݂Ȃ³‚ñ�A‚Ç‚¤‚à‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
>>880 –³Ž–‚É“®‚«‚Ü‚µ‚½�B
‚Ç‚¤‚à‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
‚â‚Á‚½‚ �I‚â‚Á‚½‚æ‚§�I
>>884 ‚ �[‚ ‚Ÿ‚ �`‚Í‚¶‚߂ĂÌ�`‚¿‚ã�`
ŒN‚Æ‚¿‚ã�`I need you for my love�`
886 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2011/05/10(‰Î) 15:33:36.57
‘å•¶Žš‚¶‚á‚È‚¢‚Ì‚¾‚Ë
5 –¼‘O�F–¼–³‚µ‚³‚ñ�—�\ˆêŽü”N[sage] “Š�e“ú�F2011/05/21(“y) 07:37:55.67 ID:55711cMv0 �i�l—Þ‚Ì—ðŽj‚Æ‚µ‚ÄŒê‚èŒp‚ª‚ê‚é‚ׂ«Ž–ŽÀ�j �y —˜—pŠî�€�i”NŠÔ20ƒ~ƒŠƒV�[ƒxƒ‹ƒg�j‚Ì�Ó”CŽÒˆê—— �z �@Œ´Žq—Í�ЊQ‘Î�ô–{•”–{•”’·�F�›’¼�l�i�Å�‚�Ó”CŽÒ�j �@Œ´Žq—͈À‘SˆÏˆõ‰ïˆÏˆõ’·�F”Á–Ú�tŽ÷�iŽÀŽ¿“I‚È”»’f‚Ì�Å�‚�Ó”CŽÒ�j �@•¶•”‰ÈŠw‘å�b�F�‚–Ø‹`–¾�i“–ŠY’Ê’m‚ÉŠÖ‚·‚é�Å�‚�Ó”CŽÒ�j �@•¶•”‰ÈŠw�È�¶ŠUŠw�K��ô‹Ç’·�F”“Œ‹v”üŽq�i“–ŠY’Ê’m‚ÉŠÖ‚·‚é�Ó”CŽÒ�j �@•¶•”‰ÈŠw�È�‰“™’†“™‹³ˆç‹Ç’·�FŽR’†�Lˆê�i“–ŠY’Ê’m‚ÉŠÖ‚·‚é�Ó”CŽÒ�j �@•¶•”‰ÈŠw�ȉȊw‹Z�p�EŠw�p��ô‹Ç’·�F�‡“c—²Žj�i“–ŠY’Ê’m‚ÉŠÖ‚·‚é�Ó”CŽÒ�j �@•¶•”‰ÈŠw�ȃXƒ|�[ƒc�E�Â�”N‹Ç’·�F•z‘º�K•F�i“–ŠY’Ê’m‚ÉŠÖ‚·‚é�Ó”CŽÒ�j �¦ Œã‚Å‘å–â‘è‚ɂȂ邩‚ç�A‚±‚ÌƒŠƒXƒg‚݂͂ñ‚Ȃŋ¤—L‚µ‚悤�B‘S�¢ŠE‚ÉŠgŽU‚µ‚悤�B
888 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2011/07/22(‹à) 17:06:33.14
�”’lŒvŽZ‚Ì“¾ˆÓ‚È•û�•Œ¾‚ð‚¨Šè‚¢‚µ‚Ü‚·�D ”÷•ª•û’öŽ®‚ðƒ‹ƒ“ƒQƒNƒbƒ^‚ðŽg‚Á‚Ä‰ð‚±‚¤‚Æ�l‚¦‚Ä‚¢‚é‚̂ł·‚ª�C ’Ê�í‚Ít�¨�‡•ûŒü‚É‰ð‚‚Æ‚±‚ë‚ð�C�¡‰ñt�¨0•ûŒü‚É‰ð‚«‚½‚¢‚̂ł·�D ��‚Ý•�h“™‚Ì•„�†‚𔽓]‚µ‚½‚¾‚¯‚Å‚Í�C�³‚µ‚¢“š‚¦‚ª‚ł܂¹‚ñ�D ‚´‚Á‚‚è�‘‚¢‚½‚Ì‚Å�C•ª‚©‚ç‚È‚¢‚Æ‚±‚낪‚ ‚ê‚΃Rƒ�ƒ“ƒg‚ð‚¨Šè‚¢‚µ‚Ü‚·�D
•û’öŽ®Œn‚É‚æ‚Á‚Ä‚Í�AŽžŠÔ‚𕉂̕ûŒü‚É ‚Æ‚é‚Æ–{Ž¿“I‚É”ŽU‚·‚邿�B •¨—�•û’öŽ®‚Í“Á‚É�BŽžŠÔ‚ÉŠÖ‚µ‚Ä�î•ñ—Ê‚ª ’P’²Œ¸�(”ñ‘�‘å)‚Ȃ̂Å�A ‘k‚é�A‚Æ‚¢‚¤Ž–‚ª–³—�‚Û‚ÈŽ–‘½�X�B ƒ`ƒFƒbƒN‚µ‚é
ƒXƒŒˆá‚¢‚©‚à‚µ‚ê‚Ü‚¹‚ñ‚ª�A‚²‘¶‚¶‚Ì•û‚ª‚¨‚è‚Ü‚µ‚½‚狳‚¦‚Ä‚¢‚½‚¾‚¯‚È‚¢‚Å‚µ‚傤‚©
http://www.ffte.jp/ �ã‹L‚̃TƒCƒg‚É‚ ‚éFFT‚̃Tƒuƒ‹�[ƒ`ƒ“‚ðMPI‚ÆOpenMP‚ÌHybrid‚ÅŽg‚¨‚¤‚ÆŽv‚Á‚Ä‚¢‚Ü‚·�B
tar‚ðƒ_ƒEƒ“ƒ��[ƒh‚µ‚Ä�A‰ð“€‚µ�A"ffte-4.1\mpi\tests\"�@‚É‚ ‚éMakefile‚Ì
FFLAGS = -O3 -fomit-frame-pointer -I../.. ‚ð
FFLAGS = -O3 -fomit-frame-pointer -I../.. -openmp -openmp-report2
‚Æ�‘‚«Š·‚¦‚ăRƒ“ƒpƒCƒ‹‚ð‚µ‚Ü‚µ‚½�B
ŽÀ�s‚·‚邯ƒZƒOƒ�ƒ“ƒe�[ƒVƒ‡ƒ“ˆá”½‚Æ•\ަ‚³‚ê‚Ä‚¤‚Ü‚‚¢‚«‚Ü‚¹‚ñ
-openmp -openmp-report2�@‚ð•t‚¯‰Á‚¦‚È‚¯‚ê‚΂¤‚Ü‚‚¢‚«‚Ü‚·�B
‚Ç‚¤‚·‚ê�A‚¢‚¢‚©‹³‚¦‚Ä‚¢‚½‚¾‚¯‚È‚¢‚Å‚µ‚傤‚©
‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·�B
>>889 ƒŒƒX‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�D
‚»‚¤‚Å‚·‚©�D�D�D•ʂ̕ûŒü‚©‚çƒAƒvƒ��[ƒ`‚µ‚Ă݂܂·�D
892 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2011/07/28(–Ø) 14:58:20.15
3”N‚Ô‚è‚ ‚°
893 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2011/08/06(“y) 16:33:15.49
Linux‚ÅFORTRAN‚ðŽg‚¤�ÛƒeƒLƒXƒgƒGƒfƒBƒ^‚Ńvƒ�ƒOƒ‰ƒ€‚ð�‘‚« \(ƒ†�[ƒU�[–¼)/FORTRAN‚ɕۑ¶‚µ’[––�iƒRƒ}ƒ“ƒhƒ‰ƒCƒ“’[––�j‚ðŽg—p‚µ ‚»‚̃vƒ�ƒOƒ‰ƒ€‚Ö‚Ì“ü—͂ƎÀ�sŒ‹‰Ê‚ð�¶�¬‚·‚é ƒtƒ@ƒCƒ‹‚̃Rƒ}ƒ“ƒh‚ð–Y‚ê‚Ä‚µ‚Ü‚¢‚Ü‚µ‚½ ‚ǂȂ½‚©‚í‚©‚é•û‚Í‚¢‚ç‚Á‚µ‚á‚¢‚Ü‚·‚Å‚µ‚傤‚©
‚»‚ê‚Íemacs‚Å‚µ‚傤‚©�B
895 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2011/08/10(�…) 00:07:13.86
896 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2011/08/14(“ú) 17:20:24.31
FORTRAN77‚ŃXƒ^ƒbƒN•Ï�X‚Á‚Ăǂ¤‚â‚é‚ñ‚¾�H ‚Å‚Á‚©‚¢”z—ñ’è‹`‚·‚邯ƒGƒ‰‚é
>>896 ƒRƒ“ƒpƒCƒ‰‚Ì–â‘肾‚©‚ç�Aˆê”ʉð‚͂Ȃ¢�Bƒ}ƒjƒ…ƒAƒ‹‚ðŒ©‚é‚µ‚©‚È‚¢�B
unlimit ulimit ‚½‚ß‚·‚©�A‰½‚©ŠÂ‹«•Ï�”‚¢‚¶‚ê‚Γ®‚‚±‚Æ‚ª‚ ‚é�AƒAƒ‹
allocate•¶‚Å“®“I‚ÉŠm•Û‚µ‚½•Ï�”‚Á‚Ä‚¢‚‚܂Å�¶‚«Žc‚è‚Ü‚·‚©�H allocatable‘®�«‚ðŽw’肵‚½•Ï�”‚ð�錾‚µ‚½ƒvƒ�ƒOƒ‰ƒ€’PˆÊ‚Ì�I‚í‚è‚܂ŗˆ‚½‚ç Ž©“®“I‚Édeallocate‚³‚ê‚é‚à‚̂ł·‚©�H
ALLOCATABLE ‘®�«‚Ì”z—ñ‚ÅF95ˆÈ�~‚Ȃ炻‚¤‚©‚È�BF90‚Ì�ê�‡‚Í‚»‚¤‚ł͂Ȃ©‚Á‚½‚悤‚È‹C‚ª‚·‚é�B F90‚©‚çF95‚ւ̃}ƒCƒi�[‰ü’ù‚Å•s•Ö‚ª–³‚‚È‚Á‚½‹L‰¯‚ª‚ ‚é�E�E�E POINTER‚ÌŽž‚͉ð•ú‚³‚ê‚È‚©‚Á‚½‚ÆŽv‚¤�B ŠÔˆá‚Á‚Ä‚½‚çƒSƒ�ƒ“‚—‚—‚—ŽÓ�߂͂µ‚Ä‚à”…�ž‚Í‚µ‚È‚¢
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚· ‚³‚ç‚É‚¢‚‚‚©Ž¿–₳‚¹‚Ä‚‚¾‚³‚¢ ƒŠƒXƒg�\‘¢‚ð�ì‚Á‚ĂȂñ‚ç‚©‚Ì�ˆ—�‚ð‚·‚ésubroutine‚ð�ì‚è�A ‚»‚Ìsubroutine‚ðdoƒ‹�[ƒv‚ʼn½“x‚àŒÄ‚Ñ�o‚·‚悤‚ȃvƒ�ƒOƒ‰ƒ€‚ð�l‚¦‚Ä‚¢‚Ü‚· allocate‚µ‚½•Ï�”‚ªŽ©“®“I‚ɉð•ú‚³‚ê‚È‚¢‚Ɖ¼’è‚·‚邯�A ‡@subroutineŒÄ‚Ñ�o‚·‚½‚тɎg—p‚µ‚Ä‚¢‚éƒ�ƒ‚ƒŠ‚ª‘�‚¦‚Ä�Å�I“I‚Ƀvƒ�ƒOƒ‰ƒ€‚ªƒXƒgƒbƒv‚·‚邱‚ƂɂȂè‚Ü‚·‚©�H ‡A‚à‚µ‚»‚¤‚È‚çsubroutine‚Ì�ÅŒã‚ÅƒŠƒXƒg�\‘¢‚ð’H‚è‚È‚ª‚çŽè“®‚Ådeallocate‚µ‚È‚¢‚Æ‚¢‚¯‚È‚¢‚±‚ƂɂȂè‚Ü‚·‚©�H ‡B�uallocatable‘®�«‚ðŽw’肵‚½•Ï�”‚ð�錾‚µ‚½ƒvƒ�ƒOƒ‰ƒ€’PˆÊ‚Ì�I‚í‚è‚܂ŗˆ‚½‚玩“®“I‚Édeallocate‚³‚ê‚é‚Ì‚©‚Ç‚¤‚©�v ‚ðŠm‚©‚ß‚éŠÈ’P‚È•û–@‚Í‚ ‚è‚Ü‚¹‚ñ‚©�H ‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·�B
>>901 ‚P�D‚»‚¤‚¢‚¤‚±‚ƂɂȂé�B‚¢‚í‚ä‚é memory leak ‚ƌĂ΂ê‚é�ó‹µ�B
‚Q�D‚»‚¤‚È‚é�B
‚R�D‚P‰ñŽŽ‚·‚¾‚¯‚È‚ç�A‚Å‚Á‚©‚¢”z—ñ‚ð allocate ‚µ‚Ä�AƒVƒXƒeƒ€ƒ‚ƒjƒ^�[‚âpsƒRƒ}ƒ“ƒh‚ȂǂŃ�ƒ‚ƒŠ�[Žg—p—ʂ̕ω»‚ð
�@�@Œ©‚Ă݂ê‚΂¢‚¢�B
‚½‚Ô‚ñ�A�Å‹ß‚Ì Fortran ƒRƒ“ƒpƒCƒ‰‚ÍŠF F95 ‚¾‚©‚ç�Aƒ��[ƒJƒ‹‚ÉŠm•Û‚³‚ꂽ ALLOCATABLE ‚ÍŽ©“®‰ð•ú‚³‚ê‚邯Žv‚¤�B
‚½‚¾“¯‚¶ SUBROUTINE ‚ð‰½“x‚àŒÄ‚Ñ�o‚·‚‚à‚è‚È‚ç�A‚à‚µ‘O‰ñ‰ð•ú‚³‚ê‚Ä‚¢‚È‚¯‚ê‚Î�A “ñ‰ñ–Ú‚Í ALLOCATE ‚Å‚«‚È‚¢‚ÆŽv‚¤�B ‚»‚¤‚¢‚¤�ê�‡”z—ñ‚Ì STATUS ‚ª•s’è‚Ȃ̂Å�A“®�삪�ˆ—�Œn‚Ɉˑ¶‚µ‚»‚¤‚Å’fŒ¾‚Å‚«‚È‚¢‚ª�B
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚· Žg‚Á‚Ä‚¢‚éƒRƒ“ƒpƒCƒ‰‚Íintel‚Å‚· Šm”F‚µ‚Ă݂܂·�B ‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½
integer*4 gen(10) ‚Ì�i�@�j‚Ì’†‚Ì�”Žš‚Á‚ĂȂñ‚Å‚·‚©�H �‰�SŽÒ—pŽQ�l�‘‚¾‚ÆŽg‚Á‚ĂȂ‚ĉð�à‚È‚¢‚µ “‚¢ŽQ�l�‘‚¾‚Æ“–‚½‚è‘O‚̂悤‚ÉŽg‚Á‚Ă邵 fortran‚Á‚Ä—¼‹É’[‚Å‚·‚Ë
”z—ñ‚Ì—v‘f�”
907 �F
904 �F2011/08/19(‹à) 10:43:45.35
‚Ç‚¤‚â‚çallocatable‘®�«‚¾‚Ædeallocate‚³‚ê‚Ä pointer‘®�«‚¾‚Ædeallocate‚³‚ê‚È‚¢‚Ý‚½‚¢‚Å‚·
>>907 Fortran95‚Ì“®�삾‚Æ‚»‚¤‚È‚é‚ÆŽv‚¢‚Ü‚·�B
909 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2011/11/15(‰Î) 01:30:19.44
gfortran, ƒo�[ƒWƒ‡ƒ“4:4.4.5-1 ‚ÉŠÖ‚·‚鎿–â‚Å‚·�B ƒ‚ƒWƒ…�[ƒ‹‚̃o�[ƒWƒ‡ƒ“‚ªˆá‚¤‚Æ‚©‚ʼnº‹L‚̃Gƒ‰�[ƒ�ƒbƒZ�[ƒW‚ª�o‚Ä‚«‚Ü‚·�B Fatal Error: Parse error when checking module version for file 'functions.mod' ‚±‚ê‚Á‚Ăǂ¤‰ðŒˆ‚·‚ê‚΂¢‚¢‚Å‚·‚©�H
‚‚¾‚ç‚È‚¢Ž¿–â‚̂悤‚Ȃ̂ł‚¾Ž¿‚Ɉړ®‚µ‚Ü‚·
911 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2011/11/19(“y) 16:31:55.93
‚¢‚¤
”CˆÓ‚ÌƒŠƒXƒg�\‘¢‚ɑ΂µ‚Ä ‚»‚ÌƒŠƒXƒg‚Ì“à—e‚ð•\ަ‚µ‚½‚è�AƒŠƒXƒg‚ð�Á‚µ‚½‚è‚·‚ésubroutine‚ð�ì‚é‚É‚Í ‚Ç‚¤‚·‚ê‚΂¢‚¢‚Å‚·‚©�H ’P•ûŒüƒŠƒXƒg‚ðŽæ‚èˆµ‚Á‚Ä‚¢‚Ü‚· subroutine‚ÉƒŠƒXƒg‚Ìroot‚ð“n‚µ‚Ä ‚»‚ÌƒŠƒXƒg‚Ì“à—e‚ð•\ަ‚µ‚½‚è�AƒŠƒXƒg‚ð�Á‚µ‚½‚肵‚½‚¢‚ÆŽv‚Á‚Ä‚¢‚Ü‚· ‚µ‚©‚µ�AƒŠƒXƒg�\‘¢‚Ìtype‚ð‚ ‚ç‚©‚¶‚ß’m‚Á‚Ä‚¢‚È‚¢‚Æ subroutine‘¤‚ʼn¼ˆø�”‚ð�錾‚Å‚«‚Ü‚¹‚ñ ‚»‚¤‚È‚é‚Ætype–ˆ‚Ésubroutine‚ð�ì‚ç‚È‚¯‚ê‚΂¢‚¯‚È‚‚È‚è‚Ü‚· ‚»‚±‚ÅŽ¿–â‚Ȃ̂ł·‚ª ”CˆÓ‚ÌƒŠƒXƒg�\‘¢‚ɑ΂µ‚Ä ‚»‚ÌƒŠƒXƒg‚Ì“à—e‚ð•\ަ‚µ‚½‚è�AƒŠƒXƒg‚ð�Á‚µ‚½‚è‚·‚ésubroutine‚ð�ì‚é‚É‚Í ‚Ç‚¤‚·‚ê‚΂¢‚¢‚Å‚·‚©�H
Fortran2003‚Ìclass(*)‚ðŽg‚¦�B
‚®‚Ê‚Ê�E�E�E Fortran90‚ª‚¦‚¦‚̂ł·�E�E�E ‚Æ‚è‚ ‚¦‚¸90‚¶‚á‚Å‚«‚È‚¢‚Á‚Ä‚±‚Ƃŗ�‰ð‚µ‚Ü‚· ‚¨‘�‚¢‰ñ“š‚ ‚è‚ª‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½
>>915 ‚Ç‚¤‚µ‚Ä‚à‚Æ‚¢‚¤‚È‚ç�A‚±‚¤‚¢‚¤˜_•¶‚ª‚ ‚é�B
A generic linked list implementation in Fortran 95
http://dl.acm.org/citation.cfm?id=1667141&CFID=75955509&CFTOKEN=91048213 “à—e‚͂悊o‚¦‚Ä‚¢‚È‚¢‚ª�AŠm‚©TRANSFERŠÖ�”‚Å�Aƒ|ƒCƒ“ƒ^�[‚ð�®�”‚©‚È‚ñ‚©‚É‚¢‚ê‚Č떂‰»‚µ‚Ä‚½‚ÆŽv‚¤�B
Fortran90/95‚ÍALGOL“I‚ɂȂÁ‚Ä�A�ÓIŒ^ƒ`ƒFƒbƒN‚ðŒµ‚µ‚‚µ‚½‚©‚ç�A”CˆÓ�\‘¢‚ðˆµ‚¤‚ɂ͎ד¹‚ð‚ä‚‚µ‚©–³‚¢‚ÆŽv‚¤�B
‚Æ‚¢‚¤‚킯‚ÅEQUIVALENCE“I‚ȈӖ¡‚ÅTRANSFERŠÖ�”‚ðŽg‚¤‚µ‚©–³‚¢‚ñ‚¾‚ÆŽv‚¤�B
ƒ|ƒCƒ“ƒ^‚ð”z—ñ‚Å—pˆÓ‚µ‚½‚¢‚ñ‚Å‚·‚¯‚Ç�A‚Å‚«‚Ü‚¹‚ñ‚©�H ƒ|ƒCƒ“ƒ^”z—ñ‚Á‚Ă̂͂ ‚é‚Ý‚½‚¢‚È‚ñ‚Å‚·‚¯‚Ç ‚±‚ê‚Í•”•ª”z—ñ‚ð�ì‚é‚̂Ɏg‚¤‚Ý‚½‚¢‚Å‚· ’P�ƒ‚Ƀ|ƒCƒ“ƒ^‚ð�®�”‚Å“YŽš•t‚¯‚Ä ˆê“x‚É‚½‚‚³‚ñ—pˆÓ‚µ‚½‚¢‚¾‚¯‚È‚ñ‚Å‚·‚ª
>>917 �o—ˆ‚È‚¢�B
ƒ|ƒCƒ“ƒ^�[‚ð—v‘f‚ÉŽ�‚Â�\‘¢‘Ì‚ð’è‹`‚µ‚Ä�A‚»‚Ì�\‘¢‘̂̔z—ñ‚ð�ì‚é‚Ì‚ª’è�Î�B
‚È‚é‚Ù‚Ç�A‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·
‚³‚ç‚ÉŽ¿–₵‚½‚¢‚̂ł·‚ª�A
ƒTƒuƒ‹�[ƒ`ƒ“‚Ƀ|ƒCƒ“ƒ^‚ð“n‚·�Û‚É�A’¼�Ú“n‚·‚ƃGƒ‰�[‚ª�o‚Ä‚µ‚Ü‚¢‚Ü‚·
ˆêŽž“I‚É�ì‚Á‚½ƒ|ƒCƒ“ƒ^‚Å�A“n‚µ‚½‚¢ƒ|ƒCƒ“ƒ^‚ÌŽw‚µ‚Ä‚¢‚éŽÀ‘Ì‚ðŽw‚µ‚Ä
‚»‚̈ꎞ“I‚É�ì‚Á‚½ƒ|ƒCƒ“ƒ^‚ðƒTƒuƒ‹�[ƒ`ƒ“‚É“n‚·‚Æ�ãŽè‚�s‚«‚Ü‚·�B
—v‚·‚é‚É�A‰º‚̃Rƒ�ƒ“ƒgƒAƒEƒg‚µ‚Ä‚é‚Ì‚¾‚Æ�ãŽè‚�s‚‚¯‚ê‚Ç
ƒRƒ�ƒ“ƒgƒAƒEƒg‚µ‚Ä‚¢‚È‚¢‚à‚Ì‚¾‚Æglibc detected ‚Æ‚©‚¢‚¤ƒGƒ‰�[‚ª�o‚Ü‚·�B
‚±‚ê‚͂Ȃñ‚łłµ‚傤‚©�H
implicit none
type(particle),pointer :: dumwork
type(particle),pointer :: tmpwork,aaa
! aaa=>dumwork
! call PrintParticleList(aaa,6)
call PrintParticleList(dumwork,6)
ƒ\�[ƒXƒtƒ@ƒCƒ‹‚ðˆÈ‰º‚̃Aƒbƒvƒ��[ƒ_�[‚Ɉê�TŠÔ‚Ù‚Ç�ã‚°‚Ä‹N‚«‚Ü‚·‚Ì‚Å
‚ǂȂ½‚©‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·�B
pmod.f90 ‚Ì‚X‚Q�s–Ú‚Æ‚X‚R�s–Ú‚Å‚·�B
ttp://www1.axfc.net/uploader/Sc/so/306203
‚·‚¢‚Ü‚¹‚ñ�A�ã‚ÌŽ¿–â‚ðŽæ‚è‰º‚°‚Ü‚· ‚Ü‚¾‚æ‚•ª‚©‚Á‚ĂȂ¢‚̂ł·‚ª ‚Ç‚¤‚É‚à•ʂ̂Ƃ±‚ë‚ÉŒ´ˆö‚ª‚ ‚Á‚Ä�AƒGƒ‰�[‚ª�o‚Ă邿‚¤‚Å‚·
>>919 ƒRƒ“ƒpƒCƒ‹‚Í�o—ˆ‚½‚¼�BIntel�@ifort 12.0.5.221
ŒÝŠ·�«ƒ`ƒFƒbƒN‚Å‚àf95‹KŠiˆá”½‚ÍŒ©“–‚½‚ç‚È‚¢�B
ŽÀ�sŽžƒGƒ‰�[‚ª–â‘è‚È‚ç�AŠÈ’P‚ȃ�ƒCƒ“ƒvƒ�ƒOƒ‰ƒ€‚à—Š‚Þ�B
922 �F
921 �F2012/01/02(ŒŽ) 23:04:41.86
‚²‚ß�A�s‚«ˆá‚¢‚ɂȂÁ‚½‚—‚—‚—
‚â‚Á‚Ï‚è�AƒTƒuƒ‹�[ƒ`ƒ“‚Ƀ|ƒCƒ“ƒ^‚ð“n‚·�Û‚É ’¼�Ú“n‚·‚Ì‚Æ�A•ʂ̃|ƒCƒ“ƒ^‚ðŽg‚Á‚ÄŠÔ�Ú“I‚É“n‚·‚Ì‚±‚ƂňႢ‚ª�o‚Ü‚·�B ‚È‚ñ‚Å‚©‚Í•ª‚©‚è‚Ü‚¹‚ñ�B Œ»�Ý�AˆÈ‰º‚Ì�ì‹Æ‚ð‚µ‚Ä‚¢‚Ü‚·�B ‚QŽŸŒ³‚Ì—±Žq‚Ì�À•W‚ð‚P‚OŒÂ—pˆÓ‚·‚é ‚»‚ê‚ð’P•ûŒüƒŠƒXƒg‚É‚·‚é�@�@subroutine AddParticleList ƒŠƒXƒg‚ð•\ަ‚·‚é�@�@�@�@�@�@�@�@subroutine PrintParticleList ƒŠƒXƒg‚ð‰ð•ú‚·‚é�@�@�@�@�@�@�@�@subroutine FreeParticleList ‚±‚ê‚ç‚ð‚P‚O‰ñŒJ‚è•Ô‚µ‚Ü‚· “ñ‚‚Ìparticle type‚̃|ƒCƒ“ƒ^‚ð—pˆÓ‚µ‚Ä type(particle),pointer :: proot, pwork proot‚ðallocate‚µ‚Ü‚µ‚½�B �ã‚É�‘‚¢‚½‚R‚‚̃Tƒuƒ‹�[ƒ`ƒ“‚Ƀ|ƒCƒ“ƒ^‚ð“n‚·�Û‚É pwork=>proot‚ƂƂµ‚Ä�Apwork‚ð“n‚µ‚½Žž‚Æ proot‚ð’¼�Ú“n‚µ‚½Žž‚ňقȂé‚R‚‚̌‹‰Ê‚ª‚ł܂·
‚R‚‚̌‹‰Ê‚Í
‡@ˆê‰ñ–Ú‚Í�ãŽè‚‚¢‚‚ª�A“ñ‰ñ–Ú‚ÍƒŠƒXƒg‚ª‰ð•ú‚³‚ꂸ�AŽO‰ñ–Ú‚ÅŽ~‚Ü‚é
‡A‚¤‚Ü‚‚¢‚
‡B�\‰ñ‘S‚Ä‚Å�AƒŠƒXƒg‚Í•\ަ‚³‚ê‚邪�A‰ð•ú‚Í‚³‚ê‚È‚¢
Add�APrint�AFree‚ɑ΂·‚éwork‚Æroot‚Ì‘g‚Ý�‡‚킹‚ð‚Ü‚Æ‚ß‚é‚Æ
(A, P, F)=
‡@(w, w, w)�A(r , w, w)
‡A(w, w, r )�A(r , w, r )
‡B(w, r , r )�A(r , r , w)�A(r , r , r)
‚Å‚·
ƒ\�[ƒXƒtƒ@ƒCƒ‹‚͈ȉº‚ÌURL‚Å‚·
‚ǂȂ½‚©‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·
ttp://www1.axfc.net/uploader/Sc/so/306237 ƒpƒX‚Ífortran‚Å‚·
ƒRƒ“ƒpƒCƒ‹‚·‚é‚Ì‚Í source comp ‚Å‚·�B
–â‘è‚̉Ó�Š‚Ítmod.f90‚Ì36�s–Ú‚ ‚½‚è‚Å‚·�B
>>924 ‘g‚Ý�‡‚킹‚Æ‚¢‚¤‚Ì‚ª‚¢‚Ü‚¢‚¿‚æ‚•ª‚©‚ç‚ñ‚Ì‚¾‚ª�A
subroutine PrintParticleList(dumwork,filenum)�@‚ňø�”�@dumwork ‚ª�‘‚«Š·‚¦‚ç‚ê‚Ä�AƒŠƒXƒg‚Ì�ÅŒã‚Ü‚Å�s‚Á‚½‚܂ܕԂ³‚ê‚é‚Ì‚Å�A
‰ð•ú‚µ‚悤‚É‚à‚Å‚«‚È‚¢‚悤‚ÉŒ©‚¦‚é�B
subroutine AddParticleList(dumwork,dumi,dumrr)�@‚ł̂悤‚Ɉê’Uƒeƒ“ƒ|ƒ‰ƒŠ‚É“ü‚ê‚È‚¢‚ƑʖڂȂ̂ł͂Ȃ¢‚©�H
‚ ‚Æ�Amodule tmod�@‚Å�A�@np�@‚ª real(dp),parameter :: np=10�@‚ÆŽÀ�”‚ɂȂÁ‚Ă邪 INTEGER ‚̊ԈႢ‚¶‚á‚È‚¢‚©�H
‚Ü‚Ÿ“®‚‚ª‹KŠi‚©‚ç‚ÍŠO‚ê‚Ä‚¢‚é�B
fortran‚Í’l“n‚µ‚¶‚á‚È‚‚ăAƒhƒŒƒX“n‚µ‚¾‚©‚ç
ƒ|ƒCƒ“ƒ^‚ðƒTƒuƒ‹�[ƒ`ƒ“‚É“n‚µ‚Ä�A
ƒTƒuƒ‹�[ƒ`ƒ“‚Ì’†‚ÅŽw‚µ‚Ä‚éŽÀ‘Ì‚ª•Ï‚í‚邯
ƒTƒuƒ‹�[ƒ`ƒ“‚ð�o‚½‚ ‚Ƃłà•Ï‚í‚Á‚½‚Ü‚Ü
‚Æ‚¢‚¤—�‰ð‚Å‚¢‚¢‚ñ‚Å‚µ‚傤‚©
‘g‚Ý�‡‚킹‚Æ‚¢‚¤‚Ì‚Ísubroutine‚É“n‚·ˆø�”‚Ì‘g‚Ý�‡‚킹‚Ì‚±‚Æ‚Å
—Ⴆ‚Î
call AddParticleList(pwork, tmpnum, tmprr )
call PrintParticleList(proot, 6)
call FreeParticleList(proot)
‚Æ�‘‚¢‚½Žž‚Í
(A, P ,F)=(w, r , r )‚Å
Œ‹‰Ê‚͇B‚Ì
�\‰ñ‘S‚Ä‚Å�AƒŠƒXƒg‚Í•\ަ‚³‚ê‚邪�A‰ð•ú‚Í‚³‚ê‚È‚¢
‚ƂȂé�B
‚Æ‚¢‚¤‚‚à‚è‚Å‚·�B
‚Ü‚½�AŽw“E‚³‚ꂽ’Ê‚è
subroutine PrintParticleList(dumwork,filenum)
‚Ådumwork‚ðtmpwork‚É“ü‚ê‚邿‚¤‚É�‘‚«Š·‚¦‚ÄŒ©‚Ü‚µ‚½‚ª
ˆø�”‚Ì‘g‚Ý�‡‚킹‚É‚æ‚Á‚Ä‚Í
>>924 ‚É�‘‚¢‚½‡@‚ƇA‚Ì
‚Ç‚¿‚ç‚©‚ÌŒ‹‰Ê‚ɂȂè‚Ü‚·�B
>>926 ‚»‚¤FORTRAN‚ÍŽQ�Æ“n‚µ�BF2003‚È‚ç’l“n‚µ‚É‚à‚Å‚«‚邪�E�E�iƒ|ƒCƒ“ƒ^‚͂ł«‚È‚¢‚©‚È�j�B
‘g‚Ý�‡‚킹‚ð•Ï‚¦‚½‚Æ‚«‚É�A�ÅŒã‚Ìdeallocate‚Ì–¼‘O‚à•Ï‚¦‚邯‚©�iƒTƒuƒ‹�[ƒ`ƒ“‚Å�K‚܂Ń|ƒCƒ“ƒ^‚ªˆÚ“®‚µ‚Ä‚¢‚邽‚ß�j�A
‚«‚Á‚¿‚è�®�‡‚µ‚Ä‚¢‚È‚¢‚©‚çƒGƒ‰�[‚ª�o‚é‚̂łÍ�HŒ©‚½Š´‚¶–â‘è‚È‚“®‚¢‚Ä‚¢‚邼‚æ�B“à—e‚ð–â‚킸‚ÉŒ©‚½–Ú‚¾‚¯‚¾‚ª‚—‚—‚—
ƒTƒuƒ‹�[ƒ`ƒ“‚²‚Æ‚É�Aˆø�”‚̃|ƒCƒ“ƒ^�[‚ª•Ï�X‚³‚ê‚Ä‚Í�¢‚é‚à‚Ì‚Æ�A•Ï�X‚³‚ê‚È‚¢‚Æ�¢‚é‚à‚Ì‚ª�¬‚¶‚Á‚Ä‚¢‚é�B
‚»‚̕ӂÅ�¬—�‚µ‚Ä‚¢‚é‚̂łÍ�H
—á�i‚—�C‚—�C‚—�j‚ÌŽž
pwork => proot
do i=1,np
tmpnum=i
tmprr(1:2)=rr(1:2,i)
call AddParticleList(pwork,tmpnum,tmprr)
end do
! pwork=>proot
call PrintParticleList(pwork,6)
! pwork=>proot
call FreeParticleList(pwork)
! deallocate(proot,stat=i)
deallocate(pwork,stat=i)
>>927 ‰ðŒˆ‚Å‚«‚Ü‚µ‚½�I
‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·
ƒR�[ƒh‘S‚Œ©‚ĂȂ¢‚¯‚Ç�A‘å‚«‚߂ɔz—ñ�Ø‚Á‚Æ‚¯‚΂¢‚¢‚ñ‚¶‚á‚È‚¢‚©‚µ‚ç�H ƒ�ƒ‚ƒŠ‚ª‚©‚‚©‚‚ƌ¾‚¤‚̂ȂçŽd•û‚È‚¢‚¯‚Ç�B
‚Ä‚“‚”
ƒXƒŒˆá‚¢‚Å‘å•Ï�\‚µ–ó‚È‚¢‚̂ł·‚ª�C‚±‚ÌFortranƒXƒŒ‚È‚ç ’m‚Á‚Ä‚é�l‚ª‚¢‚é‚©‚à‚ÆŽv‚¢�C�‘‚«‚±‚Ü‚¹‚Ä‚¢‚½‚¾‚«‚Ü‚·�B Fortran ‚ÌŒãŒpŒ¾Œê‚Æ‚µ‚Ä SUN ‚ªŠJ”‚µ‚Ä‚¢‚½ Fortress ‚Á‚Ä�C �¡‚Ç‚¤‚È‚Á‚Ä‚¢‚é‚̂łµ‚傤‚©�H ƒOƒO‚Á‚Ä‚à2008”N3ŒŽ31“úŒ»�݂̎d—l�‘(Ver.1.0) ‚æ‚è�V‚µ‚¢�î•ñ‚ª Œ©‚‚©‚è‚Ü‚¹‚ñ�B ŠJ”’†Ž~�H
>>932 Œ©‚½‚̂͑½•ª�‰‚߂Ăł·�B‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½�B
# ‚»‚ê‚É‚µ‚Ä‚à�C‰p’PŒê‚ð‚»‚Ì‚Ü‚ÜŒ¾Œê–¼‚É‚³‚ê‚邯�C
‚¤‚Ü‚ŒŸ�õ‚Å‚«‚È‚¢‚Å‚·‚Ë�B" Fortran " ‚Ý‚½‚¢‚É
‘¢Œê‚É‚µ‚Ä‚‚ê‚邯ŒŸ�õ‚µ‚â‚·‚¢‚Ì‚É�d�d ƒÐ(-_-;)
934 �F
933 �F2012/03/01(–Ø) 18:05:23.12
�uŒ©‚½‚̂͑½•ª�‰‚ß‚Ä�v‚Æ�‘‚«‚Ü‚µ‚½‚ª�C‰pŒê”Å‚Ì Wikipedia ‚Ì Fortress (programming language) ƒy�[ƒW‚©‚烊ƒ“ƒN‚ª’£‚ç‚ê‚Ä‚¢‚Ü‚µ‚½‚Ë�B ‚«‚Á‚Æ�CŒ©‚½‚ñ‚¾‚¯‚Ç�C‚悌©‚ĂȂ©‚Á‚½‚Æ‚¢‚¤ƒpƒ^�[ƒ“‚Å‚·�B ‚¨‘›‚ª‚¹‚µ‚Ä�C‚·‚݂܂¹‚ñ‚Å‚µ‚½�B
‰ºŽè‚É•��L‚’T‚³‚¸�A‚±‚Ì—á‚Ì�ê�‡‚È‚ç site:sun.com ‚© site:oracle.com ‚ð•t‚¯‚Ä�A —L—p“x‚Ì�‚‚»‚¤‚È�î•ñ‚ð�d“_“I‚É’T‚·‚Æ‚©‚·‚邯‚¤‚Ü‚‚¢‚�i‚±‚Æ‚à‚ ‚é�j�B
‚¨‚Ú‚ë‚°‚È‹L‰¯‚¾‚©‚ç�A�ו”‚Í�³Šm‚ł͂Ȃ¢‚ª�E�E�E Fortress ‚Í�AIBM,SUN,CRAY‚ª‚»‚ꂼ‚ê•Ä�•{‚ÌŽŸ�¢‘ã•À—ñŒ¾Œê‚Æ‚µ‚Ä ŠJ”‚µ‚Ä‚¢‚½‚à‚̂̈ê‚‚Å�ASUN‚̓Rƒ“ƒy‚É•‰‚¯‚½�B X10‚Æ‚©Chapel‚Æ‚©‚ª‹£‚Á‚Ä‚¢‚½‚悤‚È�B‚±‚ê‚ç‚à‚Ç‚¤‚È‚Á‚½‚Ì‚©‚æ‚’m‚ç‚ñ�B UPC�iC‚ÌŒn“�‚¾‚ª�j‚ÆCAF�i‚±‚ê‚ÍF2008‚É‹KŠi‚Æ‚µ‚Ä“ü‚Á‚½)‚Í’n“¹‚É�i‚ñ‚Å‚¢‚é ƒRƒ“ƒy‚É•‰‚¯‚½� ‚É‘å�X“I‚ÉŒöŠJ‚³‚ê‚ăjƒ…�[ƒX‚ɂȂÁ‚½�B SUN‚ªƒRƒ“ƒy‚É•‰‚¯‚½Žž“_‚Å‚à‚¤ŠJ”’†Ž~‚ɋ߂¢‚̂łÍ�B SUNŽ©‘Ì‚àƒIƒ‰ƒNƒ‹‚É”ƒŽû‚³‚ꂽ‚µ�B Fortran‚ÌŒãŒp‚Ȃǂƌ¾‚í‚ê‚邪�A‚»‚ê‚Í�iƒRƒ“ƒy—p‚Ì�H�j�ø‚è•¶‹å‚Å JAVA‚Ì�ã‚ɃeƒXƒgŽÀ‘•‚³‚ê‚Ä‚¢‚é�ó‘Ԃł͕¨�D‚«Œ¾Œêƒ}ƒjƒAˆÈŠO�G‚ç‚ñ‚¾‚낤�B GuySteeleJr.‚àŠO‚Ì�¢ŠE‚ł̓JƒŠƒXƒ}‚©‚à‚µ‚ê‚ñ‚ª�AFortran‚Ì�¢ŠE‚Å‚Í ‚¹‚¢‚º‚¢ƒCƒ}ƒCƒ`‚¾‚Á‚½HPF‚Ì‹KŠi‚ð‚‚‚Á‚½�l�A‚‚ç‚¢‚̃Cƒ��[ƒW‚¾‚µ�B
937 �F
933 �F2012/03/02(‹à) 08:48:59.25
>>935 ‚È‚é‚Ù‚Ç�C‚»‚¤‚·‚ê‚΂¢‚¢‚̂ł·‚Ë (^ ^)
>>936 �Ú‚µ‚¢�î•ñ�C‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
�ð“ú�CAmazon ‚ÅŒ©‚‚¯‚½‚ñ‚Å‚·‚ª�C‹Ž”N‚Ì‚WŒŽ‚É
�hFortress (Programming Language) �h‚Æ‚¢‚¤—m�‘‚ª�o”Å‚³‚ê‚Ä‚¢‚Ü‚µ‚½�B
‚à‚µ‚©‚µ‚ÄŠª‚«•Ô‚µ‚ð�}‚Á‚Ä‚¢‚é‚ñ‚Å‚µ‚傤‚© (¥_¥)�H
ƒeƒXƒg
>>937 ‚»‚Ì–{‚¾‚¯‚Ç�Awikipedia‚Æ‚©‚ðƒvƒŠƒ“ƒg‚µ‚½‚¾‚¯‚Ì–{‚Ý‚½‚¢‚æ�B
‚È‚ñ‚©‚µ‚ç‚ñ‚¯‚Ç�A�Å‹ßwikipedia‚Æ‚©ƒlƒbƒg�î•ñŠÛƒRƒs�[‚Ì100~200ƒy�[ƒW‚Ì–‚É’l’i‚Ì�‚‚¢ƒIƒ“ƒfƒ}ƒ“ƒh�o”Å–{‚ªŽR‚̂悤‚É�o‚Ä‚¢‚é�B
�¼‹\‚Ȃ̂©‰½‚Ȃ̂©’m‚ç‚ñ‚ª‚—
‚Æ‚è‚ ‚¦‚¸�o”ŎЖ¼‚ŃOƒO‚邿‚¤‚É’�ˆÓ‚µ‚½‚Ù‚¤‚ª‚¢‚¢‚È�B ‚Ä‚¢‚¤‚©�A‚»‚Ì–{�A�u(Programming Language)�v‚Á‚ăEƒBƒLƒyƒfƒBƒA‚Ì‹LŽ––¼‚Ü‚ñ‚Ü‚¶‚á‚Ë‚¥‚©w ‚ ‚Æ Fortress ‚Í“ú–{Œê‚Ì–{‚ª‰´‚Ì’m‚Á‚Ä‚éŒÀ‚è‚Å 1 �û�o‚Ä‚é�Bˆê‰ž‚»‚ê‚È‚è‚Ì“à—e�B
‘O‚É�AFORTRAN–{’T‚µ‚Ä‚¢‚½Žž‚ÉŽR‚̂悤‚É�o‰ï‚Á‚½‚Ì‚ª‚±‚̃lƒbƒgŠÛŽÊ‚µƒIƒ“ƒfƒ}ƒ“ƒh�¼‹\–{‚— “dŽq�o”ł͂¹‚¸ƒTƒ“ƒvƒ‹—§‚¿“Ç‚Ý‚à‚³‚¹‚È‚¢‚µ’l’i‚ª–‚É�‚‚¢‚©‚ç�AƒvƒŠƒ“ƒg�{ƒoƒCƒ“ƒhƒT�[ƒrƒX‚Æ‚àŽv‚í‚ê‚Ê�B •\ކŠG‚ðŒ©‚ê‚Î‚Æ‚è‚ ‚¦‚¸‹æ•Ê‚ª‚‚�B Germain Adriaan •Ò�W�@ Brev Publishing�@�o”Å ‚®‚®‚Á‚Ä‚à�î•ñ‚łȂ¢�B ‚µ‚©‚µ�AƒAƒ}ƒ]ƒ“‚ªŒ‹�\�݌ɂðŽ�‚Á‚Ä‚¢‚é�Š‚ðŒ©‚é‚Æ�A‚±‚¤‚¢‚¤ƒCƒ“ƒ`ƒL–{‚ð�ì‚Á‚Ä�A‹@ŠB“I‚É�݌ɂ𔃂¤ ƒAƒ}ƒ]ƒ“‚Æ‚©‘åŽè�¬”„‚É”„‚è‚‚¯‚éŽèŒû‚Í�A�V�¢‘ã�¼‹\‚̃rƒWƒlƒXƒXƒL�[ƒ€‚Æ‚µ‚Ä‚ ‚è‚©‚à‚µ‚ê‚È‚¢‚— ƒ\ƒtƒgƒoƒ“�›‚Æ‚©‚ªŽn‚ß‚»‚¤‚—
942 �F
933 �F2012/03/03(“y) 17:59:25.10
>>939-941 �d—v‚È�î•ñ�C‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½�B
�ð“ú�CAmazon‚Å’�•¶‚µ‚½‚̂ł·‚ª�C�¡�C�Q‚ĂăLƒƒƒ“ƒZƒ‹‚µ‚Ü‚µ‚½�B
Œ¾‚í‚ê‚Ă݂ê‚Ίm‚©‚É�C•\ކ‚É‚Í
High Quarity Content by WIKIPEDIA articles!
‚Æ�‘‚¢‚Ä‚ ‚邵�C— •\ކ‚É‚à
Please note that the content of this book primarily consists of
articles available from Wikipedia or other free sources online.
‚Æ�‘‚¢‚Ä‚ ‚è‚Ü‚µ‚½�B‚Ü‚Á‚½‚‘呹‚·‚邯‚±‚ë‚Å‚µ‚½�B
Ž©•ª‚̃�ƒfƒBƒA�EƒŠƒeƒ‰ƒV�[‚̒Ⴓ‚ðŽ©Šo‚µ‚Ü‚µ‚½�d�d�B
‚Æ‚à‚ ‚ê�CƒAƒhƒoƒCƒX‚µ‚ĉº‚³‚è�C–{“–‚É‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½�I
943 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2012/03/06(‰Î) 20:11:36.89
Windows—p‚Ì HPF‚Á‚ĂȂ¢‚ñ‚Å‚µ‚傤‚©�H
‚Í‚¢
>>943 •xŽm’Ê‚¾‚Á‚½‚©‚ªHPF‚ðMPI‚ɕϊ·‚·‚éƒgƒ‰ƒ“ƒXƒŒ�[ƒ^‚ðƒtƒŠ�[‚Å‹Ÿ‹‹‚µ‚Ä‚¢‚½‹L‰¯‚ª‚ ‚é�B
‚à‚µ‚©‚µ‚½‚çLinux‚¾‚Á‚½‚©‚à‚µ‚ê‚È‚¢�B
‚ ‚ÆPGI‚ÌFortranCompiler‚̌¢ƒ”ƒ@�[ƒWƒ‡ƒ“‚ÍHPF‚ɑΉž‚µ‚Ä‚¢‚½�B�¡‚Ì‚à‚µ‚Ä‚¢‚é‚©‚à�B
946 �F
943 �F2012/03/07(�…) 17:23:19.93
>>944-945 ‚¨“š‚¦�C‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½ m(_ _)m"
�èdxdy[0:pi][0:pi]f(x)f(y)*(erf(a|x-y|)/|x-y|) f(x) = x^2+1 f(y) = sin(x) ‚Ì�Ï•ª‚ð‚·‚é‚ɂ͂ǂ̂悤‚Ƀvƒ�ƒOƒ‰ƒ€‚·‚ê‚΂¢‚¢‚Å‚µ‚傤‚©�H 1, •Ï�”‚ð•ÏŠ·‚µ‚Ä�Ï•ª�@x-y = r 2, ‚»‚̂܂Ü�Ï•ª ‚Ç‚¿‚ç‚Å‚â‚ê‚΂¢‚¢‚Å‚µ‚傤‚©�H ‚à‚µ‚©‚µ‚Ăǂ¿‚ç‚Å‚à‚Å‚«‚Ü‚·‚©�H
ƒtƒH�[ƒgƒ‰ƒ“ in Œ´”�H
“d—Í‚ÍFORTRAN�B ŽÐ‰ï•ÛŒ¯’¡‚Ì”N‹àƒVƒXƒeƒ€‚àFORTRAN�B�@ ‰½”N‚©‘O‚ÉANA‚ªƒVƒXƒeƒ€“ü‚ê‘Ö‚¦‚Å”Œ”‹@ƒgƒ‰ƒuƒ‹‚ð‹N‚±‚µ‚½‚¯‚Ç�AŒ³‚Ì–â‘è‚È‚“®‚¢‚Ä‚¢‚½‚Ì‚ÍFORTRAN‚¾‚¨�B
ƒtƒH�[ƒgƒ‰ƒ“Œõ
‚È‚º‚©“Œ”ª˜Y‚ª‚¨‚à‚¢‚¤‚©‚ñ‚¾
�unŒÂ‚̃f�[ƒ^‚ð‘å‚«‚³‚Ì�‡”Ô‚É•À‚ёւ¦‚½‚Æ‚«‚É�A“¯‚¶’l‚ª˜A‘±‚µ‚Ä�oŒ»‚·‚éŒÂ�”‚Æ‚»‚Ì‘g�”‚ð�o—Í�v‚µ‚½‚¢‚̂ł·‚ª •À‚ёւ¦‚ÌŒã�AƒGƒ‰ƒgƒXƒeƒlƒX‚̂ӂ邢‚Ì—v—̂ŋ�‚ß‚é’l‚ð�o‚·ƒvƒ�ƒOƒ‰ƒ€‚ð�ì‚낤‚Æ‚µ‚½‚Æ‚±‚ë‚Å“ª‚ª‚²‚¿‚Ⴒ‚¿‚á‚ɂȂÁ‚Ä�Á�Ü‚µ‚Ü‚µ‚½ �‰�SŽÒ‚ª�A‹�‚߂錋‰Ê‚Ì�o‚¹‚éƒvƒ�ƒOƒ‰ƒ€‚ð�‘‚‚ɂ͂â‚Í‚èŽQ�l�‘‚âƒlƒbƒg‚Ì“ü–å•Ò‚ð‚P‚©‚ç“Ç‚ñ‚ÅFORTRAN‚̑̌n‚̂悤‚È‚à‚Ì‚©‚çŠw‚Ô‚µ‚©‚È‚¢‚̂łµ‚傤‚©�B Ž©•ª‚Ì�¡‚Ü‚Å�ì‚Á‚½‚à‚̂Ƃ͑S‚ˆÙ‚Ȃ镶�Í‚ðƒvƒ�ƒOƒ‰ƒ~ƒ“ƒO‚Ì�㋉ŽÒ‚ªƒvƒ�ƒOƒ‰ƒ€‚ɂǂ¤‚â‚Á‚ĕϊ·‚µ‚Ä‚¢‚é‚Ì‚©�A‚»‚̃vƒ�ƒZƒX‚Æ‚¢‚¤‚©ƒRƒc‚ð‚à‚µ‚悯‚ê‚΋³‚¦‚Ä‚‚¾‚³‚¢�B ‘§”²‚«‚ª‚Ä‚ç‚Ì‹ð’s‚Å‚·‚݂܂¹‚ñ‚ª‚¨Šè‚¢‚µ‚Ü‚·
> �‰�SŽÒ‚ª�A‹�‚߂錋‰Ê‚Ì�o‚¹‚éƒvƒ�ƒOƒ‰ƒ€‚ð�‘‚‚ɂ͂â‚Í‚èŽQ�l�‘‚âƒlƒbƒg‚Ì“ü–å•Ò‚ð‚P‚©‚ç“Ç‚ñ‚Å > FORTRAN‚̑̌n‚̂悤‚È‚à‚Ì‚©‚çŠw‚Ô‚µ‚©‚È‚¢‚̂łµ‚傤‚©�B ‘S‘R‰½‚à‚µ‚ĂȂ¢‚È‚ç�A‚»‚ê‚Í‚â‚é‚ׂ«‚¾‚ª�B ƒAƒ‹ƒSƒŠƒYƒ€‚̕׋‚Æ�A‚»‚ê‚ðFORTRAN‚Å�‘‚•׋‚Ƃ͕ʂ¾‚©‚ç‚Ë�[ ‘OŽÒ‚ª‚Å‚«‚Ä‚¢‚ê‚Î�A‹É’[‚Șb�AŒãŽÒ‚Í“D“ê‚Å‚à‚¢‚¢‚ñ‚¾‚¯‚Ç
954 �F
952 �F2012/03/29(–Ø) 01:36:02.22
>>953 ‚â‚Í‚èƒAƒ‹ƒSƒŠƒYƒ€‚̕׋‚ª‚â‚â•s‘«‚µ‚Ä‚½‚悤‚Å�A
‚»‚±‚ð‚Í‚Á‚«‚肳‚¹‚Ä‚©‚ç�‘‚‚悤‚É‚µ‚½‚牽‚Æ‚©�o—ˆ‚»‚¤‚Å‚·�B
ƒvƒ�ƒOƒ‰ƒ~ƒ“ƒO‚É�G‚ê‚é‚Ì‚ÍFORTRAN‚ª�‰‚߂ĂŃAƒ‹ƒSƒŠƒYƒ€‚ð•׋‚·‚é�A‚Æ‚¢‚¤ˆÓޝ‚ª‚»‚à‚»‚à‚ ‚è‚Ü‚¹‚ñ‚Å‚µ‚½�c
�iif‚âdo•¶‚ðŠo‚¦‚邾‚¯‚ÅŒã‚ÍŠF‚³‚ñŽ©—͂ʼn½‚Æ‚©‚µ‚Ä‚é‚à‚Ì‚Æorz
�‰•à‚Ì�‰•à‚Å‚·‚ªŽ©•ª‚ÌçT‚¢‚Ä‚¢‚é�Š‚ª‚Í‚Á‚«‚肵‚Ü‚µ‚½�A‘å•Ï�•‚©‚è‚Ü‚µ‚½
955 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2012/04/11(�…) 23:14:15.28
ƒOƒ��[ƒoƒ‹•Ï�”‚ªŒ™‚í‚ê‚Ä‚¢‚é—�—R‚ɂ‚¢‚Ä�A‹³‚¦‚Ä‚‚¾‚³‚¢�B Ž„‚ÍŒ¤‹†‚Å—¬‘Ì—ÍŠw‚Ì�”’lŒvŽZ‚ð‚µ‚Ä‚¢‚Ü‚·‚ª�A ‚Ç‚¤‚àƒOƒ��[ƒoƒ‹•Ï�”‚ðŽg‚Á‚Ä‚¢‚¯‚È‚¢—�—R‚ª‚í‚©‚ç‚È‚¢‚Å‚·�B Ž©•ª‚Å’²‚ׂ½‚Æ‚±‚ë�A 1,•Ï�”–¼‚ª‘�‚¦‚邯�A�d•¡‚·‚é‰Â”\�«‚ª�o‚é�B 2,‚Ç‚±‚Å’l‚ª•Ï‚í‚Á‚½‚Ì‚©•ª‚©‚ç‚È‚‚È‚é�B ‚Ȃǂª—�—R‚Æ‚µ‚Ä‹“‚°‚ç‚ê‚Ä‚¢‚Ü‚µ‚½‚ª�A �”’lŒvŽZ‚ÉŒÀ‚邯�A 1‚ÉŠÖ‚µ‚Ä‚Í�A–§“x‚È‚çrho‚Æ‚©ˆ³—͂Ȃçprs‚Æ‚© •¨—�—ʂɊւ·‚é–¼‘O‚É‚·‚ê‚Î�A’†�g‚ª‚·‚®‚É•ª‚©‚邵 •¶Žš�§ŒÀ‚à‚È‚¢‚Ì‚Å�d•¡‚·‚邱‚Ƃ͖ő½‚ɂȂ¢‚̂łÍ�H‚ÆŽv‚¢‚Ü‚·�B ‚Ü‚½�A2‚Ì�ê�‡�AŠî–{“I‚É•¨—�—ʂ͒l‚ª•ω»‚·‚é‚à‚̂Ȃ̂Š‚ ‚Ü‚èƒfƒoƒbƒO‚Ì�Û‚É‹C‚É‚·‚邱‚Ƃł͂Ȃ¢‚̂łÍ�H‚ÆŽv‚¢‚Ü‚·�B Ž„‚̋ƊE‚Å—L–¼‚È•û‚̃R�[ƒh‚ðŒ©‚½‚Æ‚±‚ë�A ƒTƒuƒ‹�[ƒ`ƒ“‚̈ø�”‚͂Ȃ�A ‘S‚Ă̕Ï�”‚ªƒOƒ��[ƒoƒ‹•Ï�”‚ɂȂÁ‚Ä‚¢‚½‚‚ç‚¢‚Å‚·�B �Å‚à�A90”N‘ã‚̌¢ƒR�[ƒh‚Ȃ̂ł·‚ª�B Žž‘ã‚Ì—¬‚ê“I‚È‚à‚̂Ȃ̂łµ‚傤‚©�H
>>955 ƒAƒ‹ƒSƒŠƒYƒ€‚Æ‚©‚ÌŒ¤‹†‚¶‚á‚È‚¢‚È‚ç�AŒvŽZŒ‹‰Ê‚ªŠÔˆá‚Á‚ĂȂ¢‚±‚Æ‚ª
�Å—D�悾‚낤‚µ�A‰½‚æ‚è�d—v‚È•”•ª‚͘_•¶‚Ȃǂł܂Ƃ߂Ă邩‚ç�A
‰Â“Ç�«‚â�Ä—˜—p‚Ì‚µ‚â‚·‚³‚Í“ñ‚ÌŽŸ‚È‚ñ‚¶‚á‚È‚¢�H
Ž©•ª‚̓Oƒ��[ƒoƒ‹•Ï�”Žg‚¤‚̂͒è�”‚‚ç‚¢‚É‚·‚邿‚¤‚É‚µ‚Ä‚é
—˜“_�EŒ‡“_‚ª‚í‚©‚Á‚Ä‚¢‚ê‚Î ŽÛŽq’è‹K‚ÉŒ™‚¤—�—R‚͂Ȃ¢‚ÆŽv‚¤
‘åˆæ•Ï�”‚ðŽg‚¤‚ȂƂ©�AGOTO•¶‚ðŽg‚¤‚ȂƂ©Œ¾‚¤‚Ì‚Í�Aƒ�ƒ“ƒtƒŒ�[ƒYƒvƒ�ƒpƒKƒ“ƒ_‚¾‚©‚ç˜b”¼•ª‚Å‚¢‚¢�B ‚½‚¾�A‚È‚ñ‚őʖڂȂ̂©ƒsƒ“‚Æ‚±‚È‚¢‚¤‚¿‚ÍŽg‚í‚È‚¢‚Ù‚¤‚ª—Ç‚�Aƒ„ƒo‚³‚ðŠ´‚¶Žæ‚ê‚é‚È‚çŽg‚Á‚Ä‚¨‚‹ ‚V‚V‚܂łÌFORTRAN‚ňø�”‚É‚µ‚È‚¢‚Å‘åˆæ•Ï�”‚É‚µ‚ª‚¿‚¾‚Á‚½‚Ì‚Í�A�\‘¢‘Ì‚ª‚È‚©‚Á‚½‚½‚ß‚Å‚à‚ ‚é�B �\‘¢‘Ì‚ª–³‚¢‚Æ�A�[‚¢ƒ‹�[ƒ`ƒ“‚Å‚µ‚©Žg‚í‚È‚¢ƒpƒ‰ƒ��[ƒ^‚Ì‘©‚ð�Aˆø‚«“n‚·‚½‚ß‚¾‚¯‚É�A ‚»‚ê‚ðŽg—p‚µ‚È‚¢�eƒ‹�[ƒ`ƒ“‚̈ø�”‚Æ‚µ‚Ä‚¾‚炾‚ç•À‚ׂȂ¢‚Æ‚¢‚¯‚È‚‚È‚Á‚ÄŒ©‹ê‚µ‚–Ê“|‚ɂȂé�B ‚»‚±‚Å�\‘¢‘Ì‚ª‚í‚è‚É–¼‘O•t‚«COMMON‚Ɍł߂ēn‚µ‚½‚肵‚½�B ‰½‚ðˆø�”‚Å“n‚µ‚Ä�A‰½‚ðCOMMON‚Å“n‚·‚©‚̓Zƒ“ƒX‚Ì–â‘è‚Ȃ̂Å�Aˆê’è‚Ì•û�j‚ðŒˆ‚ß‚½�ã‚Å�D‚«‚É‚·‚ê‚΂¢‚¢�B
Œ¾Œê‚Ì‹@”\‚ð’m‚é‚ɂ‚êˆÓŠO‚ÉŽg‚킸‚É‚·‚ނ悤‚ɂȂé‚à‚Ì‚Å‚à‚ ‚Á‚Ä Žg‚í‚È‚¢�‘‚«•û‚ð�H•v‚µ‚Ä‚»‚ê‚ÉŠµ‚ê‚é‚Ì‚à‹³ˆç“I‚ł͂ ‚邪 ‚ ‚‚܂Ŗ{‹Æ‚Í—¬‘Ì—ÍŠw‚¾‚à‚ñ‚Ë
�¬‚³‚¢ÌßÛ¸Þ×тȂç‚Ç‚Á‚¿‚Å‚à‚¢‚¢�B
‘å‚«‚‚Ä•¡ŽG‚ɂȂê‚΂·‚ׂăOƒ��[ƒoƒ‹‚¾‚Æ•Ï�”‚ª‘�‚¦”cˆ¬ŠÇ—�‚ª�lŠÔ‚ÌŽè‚É•‰‚¦‚È‚‚È‚è
ŠJ”Œø—¦‚ª‰º‚ª‚èƒoƒO‚ª‘�‚¦“ǂ݂ɂ‚‚Ȃ茋‹ÇŠJ”‚ÉŽ¸”s‚·‚é
‚¢‚¢‚±‚ƂȂɂà‚È‚¢
‚»‚¤‚¢‚¤ƒ\ƒtƒgƒEƒFƒA�HŠw‚ÌŠî–{’†‚ÌŠî–{�B
Šî–{’†‚ÌŠî–{’†‚ÌŠî–{’†‚ÌŠî–{�B
•s–¡‚³‚ª‚í‚©‚ç‚È‚¢‚È‚çŒoŒ±‚ƃZƒ“ƒX‚Ì–â‘肾‚©‚ç
>>958 ‚Ì”Fޝ‚Å‚¢‚¢‚¾‚낤�B
ŠF—l�AƒRƒ�ƒ“ƒg‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
‚â‚Í‚è�AŽ©•ª‚ÌŒoŒ±•s‘«‚È‚ñ‚Å‚·‚©‚Ë�H
>>956 ’è�”‚¾‚¯‚Å�‘‚¯‚é‚̂ł·‚©�H
—Ⴆ‚ÎŽ©•ª‚Ì�ê�‡�AŠî–{“I‚È•¨—�—Ê‚¾‚¯‚Å‚à
15ŒÂ‚Ù‚Ç‚ ‚è‚Ü‚·�B
‚»‚ê‚ð�AƒTƒuƒ‹�[ƒ`ƒ“‚̈ø�”‚É‚·‚邯�A‚Æ‚Ä‚à’·‚‚È‚Á‚Ä‚µ‚Ü‚¢
‹t‚ɓǂ݂Â炂Ȃé‚ñ‚¶‚á‚È‚¢‚©‚ÆŽv‚Á‚Ä‚µ‚Ü‚¢‚Ü‚·�B
>>960 ŠÇ—�‚Æ‚¢‚¤‚Ì‚Í�A—Ⴆ‚Î�A‚ ‚éˆê•”•ª‚̃Tƒuƒ‹�[ƒ`ƒ“‚ð
‘¼‚Ì�l‚â–¢—ˆ‚ÌŽ©•ª‚ª“ü‚ê‘Ö‚¦‚é�A‚Æ‚¢‚Á‚½‚±‚Ƃłµ‚傤‚©�H
Ž„‚̃{ƒX‚Í�AƒR�[ƒh‘S‘Ì‚ð”cˆ¬‚µ‚ĂȂ¢‚̂Ȃç�A‚¢‚¶‚Á‚Ă͂¢‚¯‚È‚¢
‚Æ‚¢‚¤•û�j‚¾‚Á‚½‚̂ł·‚ª�A
‚»‚ê‚̓vƒ�ƒOƒ‰ƒ€‚ª�¬‚³‚©‚Á‚½‚©‚ç’Ê—p‚·‚é˜b‚Ȃ̂ł·‚©‚Ë�H
>>961 •Ï�”‚ÌŠÇ—��E”cˆ¬‚Æ‚¢‚¤‚Ì‚Í�F
‰½‚Æ‚¢‚¤–¼‘O�EŒ^‚Ì•Ï�”‚ª‰½ŒÂ‚ ‚è�A‚»‚ê‚͂ǂ±‚łǂ̂悤‚ÈŽg‚í‚ê�A‚Ç‚¤‚¢‚Á‚½ˆÓ–¡‚Ì�”’l‚ð‹L‰¯‚³‚¹‚é•Ï�”‚Ȃ̂©
‚ÆŒ¾‚Á‚½�A•Ï�”‚ÌŽd—l‚ð�lŠÔ‚ª”cˆ¬‚µŠÇ—�‚·‚±‚Æ�B
ÌßÛ¸Þ×Ñ‚ª‘å‚«‚‚È‚èƒXƒeƒbƒv�”‚ª‰½�\–œ‰½•S–œ‚ƂȂè�A•Ï�”‚ª”¼•S‰½�牽–œ‚ƂȂÁ‚Ä‚«‚½‚Æ‚«‚É�A
‚·‚ׂăOƒ��[ƒoƒ‹‚¾‚Æ‚»‚ê‚ç‚Ì”cˆ¬�EŠÇ—��l‚ÌŽè‚É•‰‚¦‚È‚‚È‚é�B
‚µ‚ ‚‹‚µ�^‚ɃOƒ��[ƒoƒ‹‚Å‚ ‚é‚ׂ«•¨‚¾‚¯‚ðƒOƒ��[ƒoƒ‹‚É‚µ�Aƒ��[ƒJƒ‹‚É‚·‚ׂ«•¨‚̓��[ƒJƒ‹‚É‚µ‚Ä‚¨‚‚Æ�A
‚ ‚éƒvƒ�ƒOƒ‰ƒ€‚̈ê“_‚©‚猩‚¦‚é•Ï�”‚âƒTƒuƒ‹�[ƒ`ƒ“‚Ì�”‚Í‘å•�‚ÉŒ¸‚è�A�lŠÔ‚ÌŽè‚É•‰‚¦‚郌ƒxƒ‹‚Ì•¡ŽG‚³‚É
‚Å‚«‚é�B‚»‚ê‚É‚æ‚Á‚đ傫‚¢ƒ\ƒtƒgƒEƒFƒA‚ª‚È‚ñ‚Æ‚©�ì‚ê‚邵�A
ƒ\�[ƒXƒR�[ƒh‚ÌŒ©‚â‚·‚³�A‰ü—Ç‚âŠg’£‚Ì‚µ‚â‚·‚³‚àŒü�ã‚·‚é�B
ƒ{ƒX‚ªŒ¾‚¤�uƒR�[ƒh‘S‘Ì‚ð”cˆ¬‚µ‚ĂȂ¢‚̂Ȃç�A‚¢‚¶‚Á‚Ă͂¢‚¯‚È‚¢�v‚Ì�^ˆÓ‚Í’¼�Ú•·‚¢‚Ä‚¢‚È‚¢‚̂őz‘œ‚ɂȂ邪�A
—Ç‚—�‰ð‚Å‚«‚Ä‚¢‚È‚¢ƒ\ƒtƒgƒEƒGƒA‚ª�³‚µ‚“®‚¢‚Ä‚¢‚é‚̂ł ‚ê‚΃wƒ^‚É‚¢‚¶‚Á‚Ä
ƒoƒO“ü‚ꂽ‚è—ò‰»‚³‚¹‚邿‚è‚à�A‚¢‚¶‚ç‚È‚¢•û‚ª‚Ü‚¾‚Ü‚µ‚Ý‚½‚¢‚ȈӖ¡‚¶‚á‚È‚¢‚©‚ÆŽv‚¤‚æ�B
ƒvƒ�ƒOƒ‰ƒ€‚ÌŠe•”•ª‚̈Ӗ¡‚ª•Ï�”–¼‚¾‚¯‚Å�i‚Ç‚¤‚É‚©�j•ª‚©‚é‚Ì‚¾‚Æ‚µ‚½‚ç �s�”‚Ȃǂ̌©‚½–ڂ͂ǂ¤‚ ‚ê�A�¬‹K–͂ŒP�ƒ‚ȃvƒ�ƒOƒ‰ƒ€‚Æ‚¢‚¤‚±‚ƂɂȂ邪 ƒvƒ�ƒOƒ‰ƒ~ƒ“ƒO‚¶‚á‚È‚‚Ä�”’lŒvŽZ‚ª–Ú“I‚È‚ñ‚¾‚낤‚µƒ{ƒX‚ª•t‚¢‚Ă邿‚¤‚¾‚µ Œ»ŽÀ–â‘è‚Æ‚µ‚Ä�A‹K–͂ƃvƒ�ƒOƒ‰ƒ~ƒ“ƒO‹³ˆç�ã‚Ì–â‘èˆÈŠO‚É‘åˆæ•Ï�”‚ðŽg‚Á‚Ä‚¢‚¯‚È‚¢—�—R‚͂Ȃ¢
‚ñ�H‘S•”ƒOƒ��[ƒoƒ‹‚É‚µ‚Ä‚¢‚¢‚©‚Á‚ĈӖ¡‚¶‚á‚È‚¢‚æ‚Ë�H
>>964 ˜b‚Ì”’[‚É�‘‚©‚ê‚Ä‚¢‚½‚悤‚È�A‘S•”ƒOƒ��[ƒoƒ‹‚Í‚³‚¯‚é�u‚ׂ«�v‚Å‚µ‚å
‚Å‚à‘S•”ƒOƒ��[ƒoƒ‹‚Å�·‚µ�á‚肪‚È‚¢‹K–͂̃vƒ�ƒOƒ‰ƒ€
‚½‚Æ‚¦‚Î�”•S�`1000�s‚‚ç‚¢‚܂łȂç
>>963 ‚ÌŒ¾‚¤‚Æ‚¨‚è‚©‚à‚Å‚µ‚å�B
>>962 Šù‘¶‚̃R�[ƒh‚ðŠg’£‚·‚é•K—v‚ª‚ ‚Á‚½‚̂ł·‚ª�A
‚»‚̂Ƃ«‚É�AƒR�[ƒh‚Ì�Å�‰‚©‚ç�ÅŒã‚܂œǂñ‚Å”cˆ¬‚µ‚È‚«‚áƒ_ƒ�‚¾‚æ�A
‚ÆŒ¾‚í‚ꂽ‚ñ‚Å‚·�B
>>963 Šm‚©‚É‚»‚¤‚È‚ñ‚Å‚·‚ª�A
‚»‚ê‚䂦‚É�AŽü‚è‚àƒvƒ�ƒOƒ‰ƒ~ƒ“ƒO‹Z�pŽ©‘̂ɂ͖³“Ú’…‚¾‚µ�A
‚Ü‚½�A‚¨Žè–{‚àfortran77‚Å�‘‚©‚ꂽŒÃ‚¢‚à‚Ì‚ª‘½‚¢‚ñ‚Å‚·�B
‚Å‚·‚ª�AŽ„‚͂܂¾‰@�¶‚Ȃ̂Å�A
�«—ˆ‚Ì‚±‚Æ‚ð�l‚¦‚邯�A‚à‚Á‚Æ�V‚µ‚¢‹Z�p‚ðŽæ‚è“ü‚ꂽ‚Ù‚¤‚ª‚¢‚¢‚Ì‚©‚È�H‚ÆŽv‚¢‚Ü‚µ‚Ä�B
(�Å�‰‚Í‚¨Žè–{’Ê‚è‚É�A‘S‚Ä‚ðCOMMON‚ŃOƒ��[ƒoƒ‹‚É‚µ‚Ä‚½‚̂ł·‚ª�A
‚»‚¤‚¢‚¤‚̂͌¢‚â‚è•û‚Á‚Ă̂ð’m‚è‚Ü‚µ‚Ä�E�E�E
ƒ‚ƒWƒ…�[ƒ‹‚Æ‚©�\‘¢‘̂Ƃ©Žg‚Á‚Ă݂悤‚©‚È�A‚Æ�B)
967 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2012/04/12(–Ø) 07:22:01.47
OpenMP Žg‚Á‚Ä‚½‚Æ‚«‚Í�Acommon ‚Å�¢‚邱‚Ƃ͂Ȃ©‚Á‚½�B MPI ‚ɈÚ�s‚·‚鎞�A‚¿‚å‚Á‚ƂƂ¢‚¤‚©‚¾‚¢‚ÔŽèŠÔŽæ‚Á‚½�B Œ‹‹Ç�A‚¢‚¿‚Ç‘S•Ï�”‚ðargument ‚Å“n‚·‚̂ɂµ‚Ä‚©‚ç Module ‰»�B Module Use ‚Á‚ătƒ@ƒCƒ‹“à‚Ì‘OŒãŠÖŒW‚É ‹C‚ðŽg‚¤‚Ì‚Å�AŒ™‚¢‚¾�B
COMMON‚Ì’�ˆÓ“_‚¾‚ª�A‹KŠi‚Ì�ã‚ł͖³–¼COMMON‚ÍSAVE‘®�«‚ª•t‚¢‚Ä‚¢‚邪�A–¼‘O•t‚«COMMON‚̓fƒtƒHƒ‹ƒg‚Å‚ÍSAVE‘®�«–³‚¢�B ‚½‚¾‚U‚UˆÈ—ˆ‚Ì—ðŽj“IŽ–�î‚ÅSAVE‚ª•t‚¢‚Ä‚¢‚邿‚¤‚Ɉµ‚í‚ê‚邱‚Æ‚ª‘½‚¢�B ‚»‚Ì‚¤‚¿‹KŠiŒ´—�Žå‹`‚Ý‚½‚¢‚Ȃ̂ª�o‚Ä‚‚邯‚ß‚ñ‚Ç‚‚È‚é�BƒRƒ“ƒpƒCƒ‰ƒIƒvƒVƒ‡ƒ“‚őΉž‚Å‚«‚邿‚¤‚É‚È‚é‚ÆŽv‚¤‚ª�B
969 �F
955 �F2012/04/12(–Ø) 19:39:46.64
955‚Å‚·�B‰½“x‚à‚·‚݂܂¹‚ñ�B �¡�A�‘‚¢‚Ä‚¢‚éƒvƒ�ƒOƒ‰ƒ€‚ɂ‚¢‚Ä‚Ì�î•ñ‚ð�‘‚‚Ì‚Å�A ‚݂Ȃ³‚ñ‚È‚ç‚Ç‚¤‚¢‚¤�\‘¢‚É‚·‚é‚©�A‹ï‘Ì“I‚ȃAƒhƒoƒCƒX‚ð‚¢‚½‚¾‚¯‚Ü‚¹‚ñ‚©�H �¡‚̃vƒ�ƒOƒ‰ƒ€‚Í�A100�`200�s’ö“x‚̃Tƒuƒ‹�[ƒ`ƒ“‚ª10ŒÂ‚Ù‚Ç‚ ‚è‚Ü‚·�B ƒ�ƒCƒ“ƒvƒ�ƒOƒ‰ƒ€‚É‚Í�AƒTƒuƒ‹�[ƒ`ƒ“‚̌ĂÑ�o‚µ‚ÆŠÈ’P‚Èdoƒ‹�[ƒv‚‚ç‚¢‚µ‚©‚È‚�A —¬‚ꂪ•ª‚©‚邿‚¤‚É‚µ‚Ä‚ ‚è‚Ü‚·�B ƒTƒuƒ‹�[ƒ`ƒ“‚ÍŠO•”•›ƒvƒ�ƒOƒ‰ƒ€‚Æ‚µ‚Ä�A�‘‚¢‚Ä‚ ‚è�A �‡ŽŸ�AŒp‚¬‘«‚µ‚Ä‚¢‚«‚Ü‚·�B�Å�I“I‚É‚Í�A�¡‚Ì2�A3”{‚‚ç‚¢‚É‚È‚é‚ÆŽv‚¢‚Ü‚·�B �Eƒvƒ�ƒOƒ‰ƒ€‚Ì“à—e‚Í�A—¬‘ÌŒvŽZ‚Å�A•¨—�—Ê‚ðŽžŠÔ”“W‚³‚¹‚½‚¢�B �Eƒvƒ�ƒOƒ‰ƒ€‘S‘̂ɂ킽‚Á‚Ä�o‚Ä‚‚镨—�—Ê‚Í15ŒÂ’ö“x�B �Eƒtƒ@ƒCƒ‹‚ªƒoƒ‰ƒoƒ‰‚ɂȂé‚Ì‚ªŒ™‚Ȃ̂Å�Aˆê‚‚̃tƒ@ƒCƒ‹‚É‘S‚Ä�‘‚«‚½‚¢�B ‚Å�A�Å�‰‚Í‘S•”ƒOƒ��[ƒoƒ‹‚É‚µ‚Ä‚¢‚½‚̂ł·‚ª�A ‚݂Ȃ³‚ñ‚̘b‚ð•·‚¢‚Ä�Aƒ��[ƒJƒ‹‚àŽæ‚è“ü‚ê‚Ă݂悤‚ÆŽv‚¢�A ƒpƒ‰ƒ��[ƒ^‚ÆŠî–{•¨—�—Ê‚¾‚¯‚ð•ʃtƒ@ƒCƒ‹‚Ƀ‚ƒWƒ…�[ƒ‹‚Æ‚µ‚Ä�‘‚¢‚Ă݂܂µ‚½�B ‚Å‚·‚Ì‚Å�A�¡‚̃vƒ�ƒOƒ‰ƒ€‚Í ƒvƒ�ƒOƒ‰ƒ€+ƒTƒuƒ‹�[ƒ`ƒ“ŒQ‚Æ•Ï�”�錾‚݂̂̃‚ƒWƒ…�[ƒ‹�A‚Ì2‚‚ł·�B –â‘è‚Í�A•Ï�”‚Ì�錾‚ɂ‚¢‚ĂȂ̂ł·‚ª —Ⴆ‚Î�AƒTƒuƒ‹�[ƒ`ƒ“A‚©‚çƒTƒuƒ‹�[ƒ`ƒ“B‚É•Ï�”‚ðˆø‚«“n‚·‚Æ‚«�A �錾‚ð�Aƒ�ƒCƒ“ƒvƒ�ƒOƒ‰ƒ€‚ÆA‚ÆB‚Ì3‚‚É�‘‚©‚È‚¯‚ê‚΂¢‚¯‚È‚¢‚Å‚·‚æ‚Ë�H ‚»‚ꂪ‚ƂĂà�ç’·‚ÉŠ´‚¶‚Ä‚µ‚Ü‚¢‚Ü‚·�B ‚Ü‚½�Aˆø�”‚Ì�”‚à10‚Æ‚©20‚Æ‚©‚ ‚è‚Ü‚·�B ƒ‚ƒWƒ…�[ƒ‹‚ɂ܂Ƃ߂ê‚΂悢‚Ì‚©‚à‚µ‚ê‚Ü‚¹‚ñ‚ª�A ‚»‚̂܂őå‹K–͂ȃvƒ�ƒOƒ‰ƒ€‚Å‚à‚È‚¢‚µ�A‚Æ‚¢‚¤Š´‚¶‚Å‚·�B ŠF‚³‚ñ‚È‚ç‚Ç‚¤‚·‚é‚©�AƒAƒhƒoƒCƒX‚¨Šè‚¢‚¢‚½‚µ‚Ü‚·�B
>>969 ˆê‚©‚玩•ª‚Å�‘‚‚킯‚¶‚á‚È‚¢‚È‚ç�AŒ©‚½–Ú‚ªˆ«‚‚Ȃ邩‚ç
‚±‚ê‚܂ł̂Í�l‚Æ“¯‚¶‚悤‚Écommon‚Å�‘‚
ˆê‚©‚ç�‘‚«’¼‚·‚È‚ç�\‘¢‘̂ŕÏ�”‚ð‚܂Ƃ߂Äcommon‚È‚µ‚Å�‘‚
�ç’·‚Æ‚¢‚Á‚Ä‚à�A‚»‚ÌŠO•”•›ƒvƒ�ƒOƒ‰ƒ€‚ª ‘åˆæ•Ï�”‚Ì‘¶�݂ƌ^‚ƃ�ƒ‚ƒŠ”z’u‚ð’m‚é‚É‚Í �‘‚¢‚Ä‚‚ê‚È‚¢‚Æ�¢‚é‚킯‚Å�B include •¶‚È‚è�AƒvƒŠƒvƒ�ƒZƒbƒT‚ªŽg‚¦‚éŠÂ‹«‚È‚ç #include ‚È‚è‚Å�A’è‹`‚ð‚Pƒtƒ@ƒCƒ‹‚É“Z‚߂邱‚Ƃ͂ł«‚é�B
‚¨“ñ�l‚Æ‚à�AƒAƒhƒoƒCƒX‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
>>970 1‚©‚ç�‘‚¢‚Ä‚¢‚Ü‚·�B
�ð“ú�Aƒpƒ‰ƒ��[ƒ^‚ÆŠî–{•¨—�—ʈȊO‚Í‘S‚ă��[ƒJƒ‹‚É’¼‚·‚±‚Æ‚É�¬Œ÷‚µ‚Ü‚µ‚½�B
‚ ‚Æ‚Í�AŠî–{•¨—�—Ê‚ðƒ��[ƒJƒ‹‚É‚·‚邾‚¯‚Å‚·�B
�\‘¢‘͎̂g‚Á‚½‚±‚Æ‚ª‚È‚¢‚̂ł·‚ª�A
‚¨‚Á‚µ‚á‚Á‚Ä‚¢‚邱‚Æ‚Í�A‚±‚̂悤‚ÈŠ´‚¶‚Ì‚±‚Ƃłµ‚傤‚©�H
3‚‚̗¬‘Ì•Ï�”‚ðŽžŠÔ”“W‚³‚¹‚Ä‚¢‚ƒTƒ“ƒvƒ‹ƒvƒ�ƒOƒ‰ƒ€‚Å‚·�B(Žáб�A’[�Ü‚Á‚Ä‚¢‚Ü‚·
�\‘¢‘̗̂v‘f‚Ì‘ã“ü•¶‚Ì‚¹‚¢‚Å�AƒTƒuƒ‹�[ƒ`ƒ“‚ª
’·‚‚È‚Á‚Ä‚µ‚Ü‚¤‚Ì‚Í�AŽd•û‚ª‚È‚¢‚Å‚·‚æ‚Ë�H
‚Ü‚¾�A�í‚ê‚邯‚±‚ë‚ ‚è‚Ü‚·‚©�H
program main implicit none type arg real(8) :: a(0:n),b(0:n),c(0:n) end type arg type(arg) :: old,new do i = 1, m call subevo(old,new) old = new end do end program main subroutine subevo(old,new) implicit none type arg real(8) :: a(0:n),b(0:n),c(0:n) end type arg type(arg),intent(in) :: old type(arg),intent(out) :: new old%a(0:n) = rho(0:n) old%b(0:n) = vel(0:n) old%c(0:n) = ene(0:n) ‚±‚±‚ÅŒvŽZ‚·‚é new%a(0:n) = rho_n(0:n) new%b(0:n) = vel_n(0:n) new%c(0:n) = ene_n(0:n) end subroutine subevo
974 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2012/04/13(‹à) 16:26:25.60
•Ö�æ‚Ì•M–₾‚¯‚Ç�A‚X‚V‚Q‚Ì—á‚Å new%a new%b new%c ‚Á‚ă�ƒ‚ƒŠ�ã‚͂ǂ¤‚¢‚¤�‡”Ô‚ÅŠi”[‚³‚ê‚é‚Ì‚©‚È�HŽÀ‘•‚µ‚¾‚¢�H ‚‚܂è new �\‘¢‘Ì‚Æ ‚È‚ñ‚©�A new(0:n,3) ‚Ý‚½‚¢‚É“Y‚¦Žš‚Å�ˆ—�(‚±‚ê‚ÍŒ^‚ª“¯‚¶‚łȂ¢‚Æ ‚¢‚¯‚È‚¢‚킯‚¾‚¯‚Ç)‚·‚é‚̂ƂŠŒvŽZ‚̂ςӂ§�[‚Ü‚ñ‚·‚Æ‚©•Ï‚í‚é‚Ì‚©‚È‚Ÿ�A‚ÆŽv‚Á‚½ŽŸ‘æ�B
>>974 ŽÀ‘•ŽŸ‘悾‚È�B
Fortran2003‚Å�AC‚Æ‚Ì‘ŠŒÝ‰^—p—p‚Ì–½—ß‚ª“±“ü‚³‚ê‚Ä‚»‚Ì’†‚É�ATYPE‚ÌSEQUENTCE‘®�«‚ª“±“ü‚³‚ê‚Ä�A
‚±‚ꂪ•t‚¢‚Ä‚¢‚邯ƒ�ƒ‚ƒŠ�[�ã‚Å�錾�‡‚É•À‚ׂĊ„‚è•t‚¯‚ç‚ê‚é�B
>>972 ƒTƒuƒ‹�[ƒ`ƒ“‚àmain‚Æ“¯‚¶ƒtƒ@ƒCƒ‹‚É�‘‚¢‚Ä‚¢‚é‚È‚ç
containsŽg‚Á‚½•û‚ª‚¢‚¢‚©‚È
�\‘¢‘Ì’è‹`‚à module ‚ÅŽ�‚Á‚Ä‚¢‚¯‚é subevo() “à‚Í old �¨ rho �¨�iŒvŽZ�j�¨ rho_n �¨ new ‚Á‚Û‚Œ©‚¦‚邯‚Ç ƒTƒuƒ‹�[ƒ`ƒ““à•”‚Ì”z—ñ‚Í–³‘Ê‚¶‚á‚È‚¢‚©�H module my_struct type arg real(8) :: rho(0:n),vel(0:n),ene(0:n) end type arg end module my_struct program main use my_struct implicit none type(arg) :: old,new !- ’†—ª - end program subroutine subevo(old,new) use my_struct implicit none type(arg),intent(in) :: old type(arg),intent(out) :: new !- ’†—ª - end subroutine subevo
ƒAƒhƒoƒCƒX‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B
>>976 ‚í‚©‚è‚Ü‚µ‚½�B
>>977 “ñ‚Â�AŽ¿–₪�B
‚»‚Ìmodule‚ÌŽg‚¢•û‚Í�Ainclude‚Æ“¯‚¶‚¾‚Æ�l‚¦‚Ă悢‚Å‚·‚©�H
�„subevo() “à‚Í old �¨ rho �¨�iŒvŽZ�j�¨ rho_n �¨ new ‚Á‚Û‚Œ©‚¦‚邯‚Ç
‚¦‚¦‚Æ�A‚±‚ê‚Í old �¨�iŒvŽZ �¨ new�@‚̂ق¤‚ª‚·‚Á‚«‚è‚·‚é�A‚Ä‚±‚Ƃł ‚Á‚Ă܂·‚©‚Ë�H
rho_n‚̂ق¤‚͂Ȃ‚¹‚é‚©‚à‚µ‚ê‚Ü‚¹‚ñ‚ª�A
•û’öŽ®‚ª
new = f(rho,vel,ene)‚Ý‚½‚¢‚ÈŠ´‚¶‚Ì”ñ�üŒ`˜A—§•û’öŽ®‚ɂȂÁ‚Ä‚¢‚é‚Ì‚Å
‰E•Ó‚É�o‚Ä‚‚é•Ï�”‚ð�Aarg%rho(0:n)‚Æ‚©arg%vel(0:n)‚Æ‚©‚Å�‘‚¢‚Ä‚¢‚‚Ì‚Í
‘å•Ï‚¶‚á‚È‚¢‚©‚È�H‚ÆŽv‚¢‚Ü‚µ‚½�B
‚Ȃ̂Å�Aˆø�”‚̂Ƃ«‚Í�\‘¢‘̂ňø‚«“n‚µ‚Ä
ŒvŽZ‚̂Ƃ«‚Í—v‘f‚Ƀoƒ‰‚µ‚½‚Ù‚¤‚ª‚¢‚¢‚̂łÍ�H‚Æ�B
‚·‚݂܂¹‚ñ �„old%a(0:n) = rho(0:n) �„old%b(0:n) = vel(0:n) �„old%c(0:n) = ene(0:n) ‚±‚±�A�¶•ӂƉE•Ó‚ª‹t‚Å‚µ‚½
�„‚í‚©‚è‚Ü‚µ‚½�B ‚¤�[‚ñ�A‚í‚©‚Á‚Ä‚à‚炦‚È‚©‚Á‚½‚Ý‚½‚¢‚¾‚È�B containsŽg‚Á‚Ä“à•”•›ƒvƒ�ƒOƒ‰ƒ€‚Æ‚µ‚Ä�‘‚¯‚Î�Aold‚¾‚Ìnew‚¾‚Ì‚ðˆø�”‚Å‚â‚èŽæ‚è‚·‚é•K—v‚ª‚È‚‚È‚é‚ñ‚¾‚¯‚Ç�B
>>978 > include ‚Æ use module
Œ‹‰Ê‚Æ‚µ‚Ă͓¯‚¶
‘åŽG”c‚ÈŒ¾Œê‰ðŽß‚ðŒ¾‚¤‚Æ include ‚ÍŽw’èƒtƒ@ƒCƒ‹‚Ì"‹L�Ú"‚ðˆø—p‚µ
use module ‚Í module ƒuƒ�ƒbƒN‚Å‹L�Ú‚³‚ꂽ"’è‹`"‚ðˆø—p‚·‚é
‚¿‚È‚Ý‚É module ‚ðŽg‚¤‚ƃRƒ“ƒpƒCƒ‰�[‚Ɉø�”‚ÌŒ^ˆê’v‚ª•Û�؂ł«‚é�A‚Í‚¸
> ƒTƒuƒ‹�[ƒ`ƒ““à”z—ñ
—�—R‚ª‚ ‚é‚È‚ç•Ê‚É�\‚í‚È‚¢
‚½‚¾�An ‚ª‘å‚«‚¢‚È‚ç‚΂»‚̂Ԃñƒ�ƒ‚ƒŠ�Á”ï‚Æ
ƒ�ƒ‚ƒŠƒRƒs�[‚Ì�ˆ—�ŽžŠÔ‚ª�ã�悹‚³‚ê‚邯Žv‚¤
�æ�i“I (Fortran 2003) ‚ÈŽè’i‚ªŽg‚¦‚é�•Žg‚Á‚Ä‚¢‚¢‚È‚ç
type ‚É procedure ‚ðŽ�‚½‚¹‚Ä call old%propagate(new) ‚Ý‚½‚¢‚É‚·‚邯‚©
>>980 contains‚ňø�”‚ª‚¢‚ç‚È‚‚È‚é‚Ì‚Í�A
ƒ‚ƒWƒ…�[ƒ‹‚ŃOƒ��[ƒoƒ‹•Ï�”‰»‚µ‚½‚Æ‚«‚¾‚¯‚¶‚á‚È‚¢‚ñ‚Å‚·‚©�H
Ž©•ª“I‚É‚Í�Acontrains‚̃�ƒŠƒbƒg‚Í
ˆø�”‚ÌŒ^‚ðƒ`ƒFƒbƒN‚µ‚Ä‚‚ê‚é‚Á‚Ä‚±‚Æ‚¾‚ÆŽv‚Á‚Ă܂µ‚½
983 �F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ �F2012/04/15(“ú) 05:30:24.59
ˆø�”Œ^ƒ`ƒFƒbƒN‚Í Interface ƒuƒ�ƒbƒN‚Å‚â‚Á‚Ä‚é�B •¡�”‚â‚è•û‚ª‚ ‚é‚Ì‚Í ‚¢‚¤‚±‚ƂȂñ‚¾‚낤‚¯‚Ç�A–Ê“|‚¾‚æ‚Ë
981 ‚¾‚ª > type ‚É procedure ‚ðŽ�‚½‚¹‚Ä call old%propagate(new) ‚Ý‚½‚¢‚É‚·‚邯‚© ‚±‚ê‰ðŒˆˆÄ‚ɂȂÁ‚ĂȂ©‚Á‚½ƒXƒ}ƒ“ Œ‹‹Ç new%rho = this%rho ‚Æ‚©�‘‚‚©‚çˆÓ–¡‚È‚¢ “à•”•›ƒvƒ�ƒOƒ‰ƒ€‚Í‚»‚Ì�e‚ɂȂéƒvƒ�ƒOƒ‰ƒ€‚Ì•Ï�”’è‹`‚ðŽQ�Ƃł«‚邪 �eˆÈŠO‚©‚ç‚͌ĂÑ�o‚¹‚È‚©‚Á‚½‚©‚È
985 �F
955 �F2012/04/15(“ú) 22:33:34.13
‚à‚¤‚·‚®1000‚¢‚«‚Ü‚·‚Ë�B ŠF‚³‚Ü�A’·‚•t‚«�‡‚Á‚Ä‚‚¾‚³‚è‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·�B �F‚ñ‚È‹@”\‚ð‹³‚¦‚Ä‚¢‚½‚¾‚«�A‚Ü‚¾‘S‘R—�‰ð‚µ‚Ä‚¢‚È‚¢‚̂ł·‚ª COMMON‚ðINCLUDE‚µ‚Ä‘S‚Ä‚ðƒOƒ��[ƒoƒ‹•Ï�”‚É‚µ‚Ä‚¢‚½ƒR�[ƒh‚Í �Eƒpƒ‰ƒ��[ƒ^‚݂̂ðƒOƒ��[ƒoƒ‹•Ï�”‚É‚µ�Aƒ‚ƒWƒ…�[ƒ‹‚Å’è‹` �EŠî–{•¨—�—Ê‚Í�\‘¢‘̂ɂ܂Ƃ߂é �Eintent•¶‚ð‚‚¯‚Ä�\‘¢‘Ì‚ðƒTƒuƒ‹�[ƒ`ƒ“ŠÔ‚ňø‚«“n‚· ‚Æ‚¢‚¤Š´‚¶‚ɂȂè‚Ü‚µ‚½�B contains‚Æinterface‚ɂ‚¢‚Ä‚Í�A‚Ü‚¾‚æ‚‚í‚©‚ç‚È‚¢‚̂Š‚±‚ê‚©‚ç’²‚ׂĂ݂܂·�B –{“–‚É�A‚¢‚ë‚¢‚ë‚â‚è•û‚ª‚ ‚Á‚Ä ‚ǂꂪ�Å‘P‚Ȃ̂©‚Í�A‚í‚©‚è‚Ü‚¹‚ñ‚Ë�E�E�E ƒ�ƒ‚ƒŠ�Á”ï‚Ì‚±‚Ƃ܂łÍ�A‚Ü‚¾“ª‚ª‰ñ‚Á‚ĂȂ¢‚Å‚· (�¬‹K–͂ȃvƒ�ƒOƒ‰ƒ€‚Ȃ̂Å�A‚Ü‚¾‘å�ä•v‚©‚È�E�E�E)
986 �F
955 �F2012/04/15(“ú) 22:55:46.34
‚·‚݂܂¹‚ñ�A‚±‚ñ‚Ȃ̌©‚‚¯‚½‚ñ‚Å‚·‚¯‚Ç�B
�„2)�eŽè‘±‚«’†‚ÅŽg‚í‚ê‚Ä‚¢‚é•Ï�”–¼�C”z—ñ–¼‚È‚Ç‚Í“à•”Žè‘±‚«’†‚Å‚à—LŒø‚Å�C‹¤’Ê
�„‚Ì’l‚ðŽ�‚Â�B
>>982 ‚ÍŠÔˆá‚Á‚Ă܂µ‚½
‚à‚µ�A
>>980 ‚³‚ñ‚Ì‚¢‚¤‚悤‚É�A‘S‚ẴTƒuƒ‹�[ƒ`ƒ“‚ðcontains‚Å
main program‚É“ü‚ꂽ‚ç�A‚»‚ê‚Á‚ÄŒ‹‹Ç
‘S‚Ă̕Ï�”‚ðƒOƒ��[ƒoƒ‹‰»‚·‚é‚̂Ɠ¯‚¶‚ɂȂè‚Ü‚¹‚ñ‚©‚Ë�H
‚æ‚‚í‚©‚ñ‚È‚‚È‚Á‚Ä‚«‚½�E�E�E
>>986 ‚»‚̂Ƃ¨‚è‚¶‚á�B
ƒ�ƒCƒ“ƒvƒ�ƒOƒ‰ƒ€‚Å‚ÌCONTAINS‚͊댯‚¾‚©‚çŽ~‚߂Ƃ¯‚Æ‚¢‚¤‚Ì‚ªŒ¾‚¢“`‚¦‚¶‚á�B
Module‚Å‚ÌCONTAINS‚Æ”ä‚ׂÄ�Aƒ‹�[ƒv•Ï�”‚Ìi,j‚Ì—Þ‚ð‹¤—L‚µ‚Ä‚µ‚Ü‚¤‚̂Ŋ댯‚ª‚¢‚Á‚Ï‚¢‚¨‚Á‚Ï‚¢�B
988 �F
955 �F2012/04/16(ŒŽ) 03:38:45.38
>>987 ‚³‚¢‚«‚ñ�Aƒlƒbƒg‚É‚ ‚é�F‚ñ‚È�ê–副‚ÌŽ‘—¿‚Æ‚©“Ç‚ñ‚ŕ׋‚µ‚Ä‚é‚ñ‚Å‚·‚¯‚Ç
ŠO•”ƒTƒuƒvƒ�ƒOƒ‰ƒ€‚Í”ñ�„�§�A‚Á‚Ä‚¢‚¤‹L�q‚ð—Ç‚Œ©‚©‚¯‚é‚ñ‚Å‚·‚æ‚Ë
—�—R‚͂悂킩‚è‚Ü‚¹‚ñ‚ª�Aˆø�”‚̎󂯓n‚µ‚Ì�ۂɃoƒO‚ª‹N‚«‚邱‚Æ‚ð
Šëœœ‚µ‚Ä‚¢‚é‚Ì‚©‚È�H
‚Å‚à�Acontrains‚ðŽg‚¤‚Æ�A•Ï�”‚Í�eŽqŒ‹�‡‚µ‚Ä‚µ‚Ü‚¤‚킯‚Å‚·‚æ‚Ë
‚»‚ê‚Á‚Ä�AƒOƒ��[ƒoƒ‹•Ï�”‚ƕςí‚ç‚È‚¢‚悤‚È�B
�l‚É‚æ‚Á‚ÄŒ¾‚Á‚Ă邱‚Æ‚ªˆá‚‚Ä�A‚킯‚ª‚í‚©‚ç‚È‚¢‚Á‚·�E�E�E
ŠO•”ƒTƒuƒvƒ�ƒOƒ‰ƒ€‚Æ‚¢‚¤‚Ì‚ª‰½‚ðŽw‚µ‚Ä‚¢‚é‚Ì‚©•s–¾‚¾‚ª�A‚½‚Ô‚ñMODULE‚Ì’†‚É“ü‚Á‚Ä‚¢‚È‚¢–ì—ǃ‹�[ƒ`ƒ“‚Ì‚±‚Æ‚¾‚ÆŽv‚¤�B ‚±‚ê‚Í•ªŠ„ƒRƒ“ƒpƒCƒ‹Žž‚̈ø�”‚̃`ƒFƒbƒN‚ª‚È‚³‚ê‚È‚¢‚̂łâ‚ß‚½‚Ù‚¤‚ª‚¢‚¢�B ƒ�ƒCƒ“‚ÌPROGRAM’†‚ÌCONTAINS’†‚̃Tƒuƒvƒ�ƒOƒ‰ƒ€‚à‚â‚ß‚½‚Ù‚¤‚ª‚¢‚¢�B ‚»‚ê‚̓�ƒCƒ“ƒvƒ�ƒOƒ‰ƒ€‚̃��[ƒJƒ‹•Ï�”�iDOLOOP‚̃Cƒ“ƒfƒbƒNƒX‚Æ‚©’†ŠÔ•Ï�”‚Æ‚©�j‚àƒOƒ��[ƒoƒ‹‚ɃTƒuƒvƒ�ƒOƒ‰ƒ€‚É‹¤—L‚³‚ê‚Ä ‚µ‚Ü‚¤‚©‚ç�BMUDULE‚Ì�ê�‡�A‚Ü‚³‚©i,j‚Æ‚©tmp‚Æ‚©‚ð‹¤—L•Ï�”‚ɂ͂µ‚Ü‚¢�B ‚â‚â�㋉ŽÒŒü‚¯‚¾‚ª�A�ŋ߂±‚¤‚¢‚¤–{‚ª�o‚Ä‚¢‚é�B�@Modern Fortran: Style and Usage�@Norman S. Clerman�A Walter Spector �‰‹‰Œü‚¯‚Í�A�¡‚Í”p‚ê‚Ä‚µ‚Ü‚Á‚½‚ª�A‚¢‚í‚ä‚é Essential Fortran / F ‚ƌĂ΂ê‚éFortran90‚©‚ç‰ß‹ŽŒÝŠ·�«‚ðŽÌ‚Ä‚½‹³ˆç—pFortran‚Ì ‹³‘¥–{‚ª—Ç‚©‚Á‚½�BEssential Fortran 90 & 95 Loren P. Meissner ”ƒ‚킸‚Æ‚àƒlƒbƒg‚ÅŠÖ˜A‚Ì•¶�‘‚ª“ǂ߂½‹C‚ª‚·‚é‚̂ł»‚Ì•Ó‚ðŒ©‚ÄŒ©‚Ă͂¢‚©‚ª‚©�B ‚킵‚Í‘å�Ì‚ÉLahey‚ÌELF90‚𔃂Á‚Ä‚»‚̃}ƒjƒ…ƒAƒ‹�A�i�¡‚ÍPDF‚µ‚©‚È‚¢‚ª�͎̂†”Å‚ª‚‚¢‚Ä‚«‚½‚Ì‚Å�j�A‚»‚ꂾ‚¯Œ©‚邿‚¤‚É‚µ‚ĕ׋‚µ‚½�B ‚½‚¾‚±‚ê‚ÍF90‚ÅF95�…�€‚Å‚·‚ç–³‚¢‚Ì‚Å�¡‚Í‚â‚₨‚·‚·‚߂ł«‚È‚¢�B
990 �F
955 �F2012/04/16(ŒŽ) 16:59:17.19
>>989 �„‚±‚ê‚Í•ªŠ„ƒRƒ“ƒpƒCƒ‹Žž‚̈ø�”‚̃`ƒFƒbƒN‚ª‚È‚³‚ê‚È‚¢‚̂łâ‚ß‚½‚Ù‚¤‚ª‚¢‚¢�B
‚±‚ꂾ‚¯‚ª–â‘è‚È‚ç�A
>>983 ‚³‚ñ‚Ì‚â‚è•û‚Å‰ðŒˆ‚µ‚»‚¤‚È‹C‚ª‚µ‚Ü‚·�B
ƒ‚ƒWƒ…�[ƒ‹‚̂Ȃ©‚É“ü‚ê‚ê‚Î�A‚·‚Á‚«‚肵‚»‚¤‚Å‚·
ƒ‚ƒWƒ…�[ƒ‹‚̂Ȃ©‚ÔƒTƒuƒ‹�[ƒ`ƒ“‚ðcontains‚·‚é‚Ì‚Í
ŒÂ�l“I‚É�D‚«‚¶‚á‚È‚¢‚Å‚·�E�E�E
’†�g‚ð�í‚ÉŒ©‚Ä‚¨‚«‚½‚¢‚Ì‚Å(ƒuƒ‰ƒbƒNƒ{ƒbƒNƒX‰»‚·‚é‚Ì‚ªƒIƒuƒWƒFƒNƒgŽwŒü�H)
�„MUDULE‚Ì�ê�‡�A‚Ü‚³‚©i,j‚Æ‚©tmp‚Æ‚©‚ð‹¤—L•Ï�”‚ɂ͂µ‚Ü‚¢�B
‚¦�A‚·‚݂܂¹‚ñ‚—
doloop‚Ìinteger‚ð•�’ʂɋ¤—L•Ï�”‚É‚µ‚Ă܂µ‚½
>>984 >“à•”•›ƒvƒ�ƒOƒ‰ƒ€‚Í‚»‚Ì�e‚ɂȂéƒvƒ�ƒOƒ‰ƒ€‚Ì•Ï�”’è‹`‚ðŽQ�Ƃł«‚邪
>�eˆÈŠO‚©‚ç‚͌ĂÑ�o‚¹‚È‚©‚Á‚½‚©‚È
F2008‚©‚ç“à•”ƒTƒuƒvƒ�ƒOƒ‰ƒ€‚ðˆø�”�iˆøŠÖ�”�H�j‚Æ‚µ‚Ä�A•ʂ̃Tƒuƒ‹�[ƒ`ƒ“
“™‚É“n‚¹‚邿‚¤‚ɂȂÁ‚½�BIntel‚͑Ήž‚µ‚Ä‚¢‚é–Í—l�B
‚µ‚©‚µŽõ–½‚ª�eƒ‹�[ƒ`ƒ“‚ª“®‚¢‚Ä‚¢‚éŠÔ‚Ȃ̂Å�Aƒ|ƒCƒ“ƒ^�[‚ð‚‚¯‚ĕԂè’l
�i•Ô‚èŠÖ�”�H�j‚Æ‚·‚邯NULL‚ɂȂÁ‚ÄŽ€‚Ê�B
Modern Fortran Explained 20.5.5�@p.370