LSQ DOCùLSQF COM‡LSQF FOR‰1LSQW BASº?NBS3 DATRNDTEST5DAT ÿ À y(i) yc(i)', x ' dy(i)',a1) 180 format(1x,i3,1p4e15.7,a1) 190 formatP ,=LSQF1/R }+?Command error?File not found?Can't enter file~æÈÍô/#Ãõ+!Ä+Ã,!Ó+Ã,!ã+Íõ+Ã�,COMSCN,"U&,·Êe,:4,G:3,O*.¾Â[,# ÂM,Ãe, Â[,ÈÃD,¯2,*+ù++"«%*U&å:·%·Â2®%*«%ùÍt/:r+þ Ê�,¯2»%2²%2¹%2¸%2µ%2¶%2´%2º%<2³%2±%,ů2ª%Í .Øa&Íí-V&þ ÂÐ,>€2ª%å!¼%Íá-á> 2V&2^&¯2U&yÖ,·2´%Âú,:ª%î€2´%Í .Øg&:µ%·Ê-d&Íí-V&:U&2°%Ö 2¯%Â$-:ª%Æ@2ª%å!Ý%Íá-áyþ=7ÀÍ .þ 7ÀÍí-U&·úL-þ 7Èå!þ%Íá-á:ª%‡!¼%ÜÁ-‡!Ý%õ:µ%·Ê|-æ%d&>õ ñ=Âr-ñÜÁ-:²%·Â‘-:¯%·Â‘-:°%2²%Íõ Íñ_ͯ2€ÍŠ0Í+0ÍA0á*«%##:³%2®%GÉõU& ~·ÂÛ-·úÛ-w# ÂÑ-ñÉ #ÃÑ- w#Âä-É:­%·Èå!^&~þ Â.æw#Âþ-áÉÍS/þ:7>Â..x·Ê .ëÍÝ/Ox=yÂO.þ[ÐþAØÖ@ë2U&ÔS/xþ Ú<. ÅëÕV&ʘ.ÍÝ/ÃC.þTÂh.ÍÝ/þT7ÀÍÝ/þY7ÀŸë·Ã..þL‚.ÍÝ/þS7ÀÍÝ/þT7À>þë·Ã..þR7ÀÍÝ/þD7ÀþR7À>þë·Ã..áÁ> �Ú©.ë6 #=ò¡.ëyÖ.2­%ÌS/ëÕ^&xþÚÁ.ÊÎ.ÍÝ/ÃÂ.áyÖ/·yÀÍÝ/þLÂç.2²%ÍÝ/OÃÏ.þNÂò.2¹%Ãà.þOÂý.2¸%Ãà.þRÂ/2´%Ãà.þCÂ/2µ%2²%Ãà.þMÂ!/2º%Ãà.þIÂ,/2±%Ãà.þXÂ9/>ÿ2¶%Ãà.þZÂE/¯2±%Ãà.þP7À:³%<2³%Ãà.åÍÝ/þ[Òq/þ0Úq/þAÒm/þ:Òq/ÃV/OÑÉÅÕ!€~6·GÊ£/#~þ ÂŒ/Ã~/q+x+#Ê�/~Ã’/2·%ÃÃ/¯2·%:®%·Â¶/Í!0>*Íô/ p+Í> Íô/ÑÁ:q+!r+å"Â+…o>Œg6 #> wáÉ~#þ ÊÝ/þ ÊÝ/þ Â0#"Â+ÉñåÕÅõæ_ÍñÁÑá·Éå*Â++~æþ #Ìt/#"Â++~áþ7È·É> Íô/> Ãô/õÅÕån'!"l'!Ý%:²%ÃT0õÅÕål&!"j&!¼%:´%·Ê…0åÍá~·ú…0ͧ0ÕÍÑÕÍ<Ê ,áͧ0Í<Ê,áÑÁñÉõÅÕå!"n)p)Í!þ%~·ú…0Ãy0åÕ ¯w#°0wáÑÉõÕþ%·úÞ0ÅåÕp)ÍÑÅåÍáÁÑñÉõ:²%·ÊÙ-Õ:Ý%<ÊÞ0új1> Í|1> Í|1>Í|1å*l'n'ÅÝ%ÍT1n'ÍÁáÝ%ÃÕ0õ:´%·ÊÙ-Õ:¼%·úÞ0>Íã1å*j&l&ż%ÍT1l&ÍÁá¼%ÃÕ0|µÈ}æÊ_1Æ€æ)„`ió1> Í|1> Í|1> Í|1ÑñÉõ:²%·ÊÙ-:Ý%<Êó/ú[2ãåÕ*l'|þÌ«1#"l'm'ÑñõæwñáÉn'!Ý%>õÅÕåÍÑÕͷ§2ÑဠëÁñ=³1!Él&>!¼%ó1õ:´%·ÊÙ-:¼%·úó/ãåÕ*j&|=ÌØ1#"j&k&ÑñwáÉ:þ%<Ê0ú–2åÕ*n)|þÌ+2#"n)o)ÑÃ0p)>õÕÅÍþ%ÍÁÑ=ÊT2!€ëñ=Â02!Éñ>ÃP2ñåÕÅõæ_!»%þ Òy2Ö Êw2<Êw2~=w4{þ ÂŽ2> Í|1~æ€2Ñ2ÍñÁÑáÉåÕÅÍÁÑáþ7È·É!Ç2Íõ+ÑÆ@þ@¸2> Íô/!Í2Íõ+Í!0ÃDISK FULLåÕÅë!Ó2þ:>Â’3Ö@þÒö3w#2­%þ.ʽ3þ!Ú½3w#–32­%þ.ÊÄ3þ!Ò«3ÃÄ36 #½3:­%þ.ÊÑ3w#ÂÑ3p÷2ÍÓ2ÍþÿÊö3¯2ó22ô2ÁÑáÉåÕÅ:ô2=ò!4÷2ÍÓ2ÍÆÿÚ64!÷2"õ2>2ô2*õ2~þÂ147Ã64#"õ2·ÁÑáÉɆADD ÍÆADI‰¢ANA Ä£ANA ŦANA ÍæANI‰ÍCALL‰/CMÁ?CMøCMP ¾CMP ÍþCPI‰DAD Ä)DAD È+DCX È=DCR ÁMVI A¬.MVI L¬´ORA ȵORA ̶ORA ÍéPCHÌáPOP ÈåPUSH ÈRAÌRAÒÉREÔRLßSBB ÁœSBB ÈžSBI‰–SUB ÍÖSUI‰"SHLD‰2STA‰•SUB ÌëXCHǯXRA ÁªXRA Ä«XRA Å®XRA ÍîXRI‰Å>oÍ«G>Í«G>ŸÍ«G>gÍ«G¯ÁÉÍ¥U*®ÍaT͈>:éþÊ$7*¨ÍaT¯2é>Íæ9*¦ÍaT=©6>>Í«G:ÓÍàG>•Í«G>>Í«G:ÔÍàG>œÍ«GÃÑ6>ëÍ«G͈>:(·ÄA6>ëÍ«G>{Í«G>•Í«G>zÍ«G>œÍ«G>òõ*ª"]>2e=2!ÿÿñÍb?*¤ë*ÍudDMÕ!öÿå"¤Ñå*"áÑx±Ê7w# x±Â7ë"!"NÉ*¦ÍaT:=õ*¨ÍaT>2éñÂZ7>Íæ9>þÍ«G*¦ÍaT:Ó<ÍàG>úÃÓ6:=ʆ7>Íæ9>GÍ«G*¦ÍaT>2é͈>>¸Í«G>xÍ«GÃÑ6:Ó=Âa7*¦ÍaTÍW?>¾Í«G*¨ÍaT>2é=Íæ9>ÚÃÓ6ÍÚ!"Ìòá7ͳAÍ‘!:·Â×7*Ì" ""ß%Íó@¯2Ãê õ:·Êô7ͳAÍoG>ÊÍHñÂ8Í{%ÍxͳA>éÍ«G>2s:–þ,Ê+8:·ÊŸ%Ãê ͳA¯2sgo9"�õÍS>(Í-hÍ‘!:s·ÂK8Íf*Ìã$¯´Ê×8å:–þ,Ê38Ív\:s·Â8Í&hÍn%͈>:(·Ês8ÍA62(GCÍœ:¹%·Â�8Íc]ÍkÍ·O!Þ8ÍnñõÍàG*�+V+^+ãåëÍaT:¹%·Â»8Íc]ÍkÍ·O!Û8ÍnÍ/P̓?ñ=gã˜8*�ù°ùÂê 2—(1X,'Too Many Parameters !!!')9*Í: Ê9� (">/Í«G><Í«GÃW9*aÍ(1X,'Least Squares Polynomial'/' Double Precision'/' (c) 9/ 8/1986 R. H. Sherman'/' 50 points maximum'/)(' Is Data input from Keyborad (K) or File (F) ?')(11A1)(1X,'Input Degree of Polynomial to be fit = ')(I1)(' Data filename'/' 12345678901'/)('+Input drive ID - 0, 1, 2 :')(10A8)(I2)(2F12.0)(/1X,10A8)(1X,I3,' data points read'/)('+Input number of data points = ')(1X,'Enter Data:'/)('+ x(',I2,') = ')('+ y(',I2,') = ')(1X,'Data:')(1X,I3,1X,1P2G13.6)(/1X,'Matrix Coefficients:')(1X,I3,1X,1P6G14.6/18X,6G14.6)(/1X,'Inverse Matrix Coefficients:')(/1X,'Fitted Coefficients and std. deviations:')(1X,I3,2X,1PG20.10,2X,E15.7)(/' i x(i) y(i) yc(i)',' dy(i)')(1X,I3,1P4E15.7)(/1X,'Wvar, Standard Deviation of the fit = ',1P2E16.7)(1X,'Create an output file - Y/N ? ')(' Run another case - Y/N ?')þ†ÃB¯2IB!õÍ1,Í4«!õÍ1,Í4Ý!õÍ.,G!õ>Í»+Í4*G•ß}µæ´ÖŸ2ñ·ÊÖ!K "G*Gµß}µæ´ÖŸ2ñ·Âè!õÍ1,Í4Ý!õÍ.,K!ý>ÍÉ+Í4!KÍœ 7!õÍ1,Í4!õÍ.,ò!õ>Í»+Í4òK!ͽ?W!Í.,!>ÍÐ+Í4!"ôöa!Í,*ô)))"üK"þ*þë!õ>ÍÐ+*üÛ"*ë!õ>ÍÐ+Í4*ô#>3•>œò_*ô+"Ei!õÍ1,!>ÍÐ+Í4s!õÍ1,E!õ>Í»+Í4Ã¥�!õÍ1,Í4]!õÍ.,E!õ>Í»+Í4²!õÍ1,Í4!"ôÅ!õÍ1,ô!õ>Í»+Í4a!õÍ.,*ô)))K"ü*üë!õ>ÍÐ+Í4×!õÍ1,ô!õ>Í»+Í4a!õÍ.,*ô)))Û"ü*üë!õ>ÍÐ+Í4*ô#ë*Eë{•zœòã!õÍ1,Í4]!õÍ.,C!õ>Í»+Í4*C#"C*Eë*C{•ozœg}µæ´?Ÿ2ñ·Âû!õÍ1,Í4Ã¥!"ô*ô" *ô)))"ü* ë!PÍt+ë*ü "þ!ñͳ:Í©)*þÍË&!""*ô)))"ü* ë!PÍt+ë*ü "þ*")))K"* ++ë*ô"$$*ÍÈ!*þÍ#(*þÍË&*"#ë*Eë{•zœò8* )))"ü*ôë!PÍt+ë*ü "þ*ô)))"* ë!PÍt+ë* Íõ)*þÍË&* #ë*Cë{•zœò*ô#ë*Cë{•zœòþ!"ô*ô)))™"ü!ñͳ:Í©)*üÍË&!" *ô)))™"ü* )))"þÛ"*þK"$*ô+"&&*$ÍÈ!*Í+'*üÍ#(*üÍË&* #ë*Eë{•zœò"*ô#ë*Cë{•zœòé!õÍ1,Í4õ!õÍ1,!"ôô!õ>Í»+*ô)))"üK"þ*þë!õ>ÍÐ+*üÛ"*ë!õ>ÍÐ+*ô#ë*Eë{•zœò¦Í4!õÍ1,Í4!"ô$!õÍ1,ô!õ>Í»+*ô)))™"ü*üë!õ>ÍÐ+!" *ô)))"þ* ë!PÍt+ë*þ "*ë!õ>ÍÐ+* #ë*Cë{•zœò;Í4*ô#ë*Cë{•zœò*a!CÍWB!õÍ1,Í4!"ô$!õÍ1,ô!õ>Í»+!" *ô)))"ü* ë!PÍt+ë*ü) "þ*þë!õ>ÍÐ+* #ë*Cë{•zœòÁÍ4*ô#ë*Cë{•zœò§!"ô*ô)))‹"ü!ñͳ:Í©)*üÍË&!" *ô)))"ü‹"þ* ë!PÍt+ë*ü) "* )))™Íõ)*Í+'*þÍ#(*þÍË&* #ë*Cë{•zœò7*ô#ë*Cë{•zœò!ñͳ:Í©)!.ÍË&!"ô*ô)))"üû"þ*üK"“C*Íß *þÍË&*ük"$*üÛÍõ)*þÍ(ÍU**$ÍË&*ô)))k"üÍõ)*üÍ+'!.Í#(!.ÍË&*ô#ë*Eë{•zœò±*Eë*C{•ozœg}µæ´=ÖŸ2ñ·Âe!ñͳ:Í©)!3ÍË&Ç*Eë*C{•ozœg"ü!.Íõ)*üÍ=&!3ÍË&!3Íé%!;ÍË&!"ô*ô)))"üÛ"þ*ôë!PÍt+ë*ü) Íõ)!3Í+'!6ÍË&!6Íé%*þÍË&*ô#ë*Cë{•zœò–*Gµß}µæ´ÆÿŸ2ñ·Êi!õÍ1,!>ÍÐ+Í4f!õÍ1,Í4!"ô–!õÍ1,ô!õ>Í»+*ô)))"ü‹"þ*þë!õ>ÍÐ+*üÛ"*ë!õ>ÍÐ+Í4*ô#ë*Cë{•zœò$²!õÍ1,Í4!"ôö!õÍ1,ô!õ>Í»+*ô)))"üK"þ*þë!õ>ÍÐ+*üÛ"*ë!õ>ÍÐ+*üû"$*$ë!õ>ÍÐ+*ük"&*&ë!õ>ÍÐ+Í4*ô#ë*Eë{•zœò�!õÍ1,;3!õ>ÍÐ+Í4=!õÍ1,Í4Ý!õÍ.,>!õ>Í»+Í4*>‡ß}µæ´ÖŸ2ñ·Êq!Y ">*>§ß}µæ´ÖŸ2ñ·Ê‹Í�#b!õÍ1,Í4Ý!õÍ.,@!õ>Í»+Í4*@‡ß}µæ´ÖŸ2ñ·ÊË!Y "@*@§ß}µæ´ÖŸ2ñ·Â¥!Í¢3͵*  Íb>22¶ÍW>ÃÍe?*a|µÈÍaT:º%·ÂF:é·À*"](1X,'***** SINGULAR MATRIX *****')"ë">! Ít;!"!"*)))"*ë!PÍt+ë*¨ÿë* "!‹ ͳ:Í©)*ÍË&*ë*{•ozœg}µæ´ÆÿŸ2·Âõ*)))"*ë!PÍt+ë*¨ÿë* "!‡ ͳ:Í©)*ÍË&*#ë*~#foë{•zœòo*#ë*~#foë{•zœòi!"*"*)))"*ë!PÍt+ë*¨ÿë*Íõ)ÆÿŸ2·Â‚*#ë*~#foë{•zœò&5!� Í1,Í4!ÿÿë* s#rÉ!"*)))"*ë!PÍt+"ë*¨ÿ"!ë*"#Íõ)!ÍË&*)))"%*ë*%¨ÿë*Íõ)*#ÍË&*ë*%¨ÿë*"'!Íõ)*'ÍË&*!ë* Íõ)!ÍË&*!ë* ")*)))"+*ë!PÍt+ë*+¨ÿë* Íõ)*)ÍË&*)))"*ë!PÍt+ë*¨ÿë* "!Íõ)*ÍË&*#ë*~#foë{•zœò…*)))"*ë!PÍt+ë*¨ÿë*"!Í )*ÍK&!-ÍË&!"*)))"*ë!PÍt+ë*¨ÿë*"Íõ)!-Í+'*ÍË&*)))"*ë!PÍt+ë*¨ÿë* "Íõ)!-Í+'*ÍË&*#ë*~#foë{•zœòÁ!"*ë*{•ozœg}µæ´ÖŸ2·ÂT *)))"*ë!PÍt+ë*¨ÿë*Íõ)ÍU*!-ÍË&!"*)))"*ë!PÍt+"ë*¨ÿë*"!*)))"#*ë*#¨ÿë*Íõ)!-Í+'*!Í#(*!ÍË&*)))"*ë!PÍt+"ë*¨ÿë* "!*)))"#*ë*#¨ÿë* Íõ)!-Í+'*!Í#(*!ÍË&*#ë*~#foë{•zœò‘*#ë*~#foë{•zœòA*#ë*~#foë{•zœò !ë* s#rÉ�ger Quant"• !"˜ *˜ +ë*• "š *š Í©%*š w*˜ #> •>œò¢ ÉreferencåIllegal State"Ò ë"Ô `i"Ö *Ô ~#fo+}µæ´ÖŸ2Ø ·Â«!*Ô ~#fo)))øÿë*Ö Íõ)*Ò Í+'!Ê ÍË&*Ô ~#fo++}µæ´ÖŸ2Ø ·Â˜!*Ô ~#fo++"Ù !"Û *Ô ~#foë*Û {•ozœg"Ý *Ý )))øÿë*Ö Íõ)!Ê Í#(*Ò Í+'!Ê ÍË&*Û #ë*Ù ë{•zœòM!*Ö Íõ)!Ê Í#(!Ê ÍË&É*Ö Íõ)!Ê ÍË&ÉoîFunction Call "Á!ë"Ã!!/"ͳ:Í©)!¹!ÍË&*Ã!~#fo}µæ´ÖŸ2Å!·Êü!!¹!Íõ)É!"Æ!*Á!Íõ)!¹!Í+'!¹!ÍË&*Æ!#ë*Ã!~#foë{•zœòÿ!!¹!Íõ)É�unä€Duplicate Statement Labe(' Data filename'/' 12345678901'/)(11A1)('+Input drive ID - 0, 1, 2 :')(I1)(/1X,10A8,A1)(/1X,'Fitted Coefficients and std. deviations:',A1)(1X,I3,2X,1PG20.10,2X,E15.7,A1)(/' i x(i) y(i) yc(i)',' dy(i)',A1)(1X,I3,1P4E15.7,A1)(/1X,'Wvar, Standard Deviation of the fit = ',1P2E16.7,A1)h> 2?":I=ÖŸ2@"·Âú#O"!Œ%Í1,Í4q"!Œ%Í.,4"!�%>ÍÉ+Í4!4"Íœ w"!Œ%Í1,Í4—"!Œ%Í.,A"!Œ%>Í»+Í4A"4"!˜%ͽ?*Gµß}µæ´ÖŸ2@"·Â3$›"!˜%Í1,!”%>ÍÐ+?"!Œ%>ÍÉ+Í4¨"!˜%Í1,?"!Œ%>ÍÉ+Í4!"C"Û"!˜%Í1,C"!Œ%>Í»+*C")))"E"‹"G"*G"ë!Œ%>ÍÐ+*E"Û"I"*I"ë!Œ%>ÍÐ+?"!Œ%>ÍÉ+Í4*C"#ë*Cë{•zœòM$ú"!˜%Í1,?"!Œ%>ÍÉ+Í4!"C"A#!˜%Í1,C"!Œ%>Í»+*C")))"E"K"G"*G"ë!Œ%>ÍÐ+*E"Û"I"*I"ë!Œ%>ÍÐ+*E"û"K"*K"ë!Œ%>ÍÐ+*E"k"M"*M"ë!Œ%>ÍÐ+?"!Œ%>ÍÉ+Í4*C"#ë*Eë{•zœòÎ$T#!˜%Í1,;3!Œ%>ÍÐ+?"!Œ%>ÍÉ+Í4>2IÉ ÍsOáÁÉÅG:¸%·Â"¥%*¥%~2�%*¥%~Öz=Æ�Ÿ2§%*¥%~Öa?Ÿ!§%¦/2¨%·Âå%:�%oŸgë!àÿ}2�%:�%ÉÍõ)Èú+&!‘C~õ>@wÍÒ&>õÍì&Íæ&ÍH&Íý&Í0)!Ó'Í+'ÍÒ&Í'ñ=Âÿ%ñÆÀ!›C†wÃØ&ÍSA‹åÍÒ&áͳ:Í©)ÃE&åÍÒ&áÍ )͵&!”CÍÞ)ʱ&:‘C·Êã::›C/ÑF+N+Å=Âò&ëé!”CÃ'!ŠC>ÑÁq#p#= 'ëé!ŠCÃ+'á"œCÍý&Íì&ÍØ&*œCéÍÞ)ÊW::‘C·ÊW:!šCN#FÍÕ*ÍU)q·ÕÊh'ÅGÜš(͘)xÁ ÂQ'ÑÂH'ÃÓ(!�CÍt)Ã`'²jöô¢0 TeÂB׳]�Âh!¢ÚI�.›kÁ‘ €�åÍÒ&áͳ:Í©)ï'åÍÒ&áÍ )!”CÃ+'ÍSA!‘Cÿq#~æ€ö++w+qÂÊ'Ãã:€DNnƒù"~€‚`Þù3ó5�zÏÑ÷r1{ÏÑ÷r1€Àh!¢ÚI‚ÍÞ)Êã:yî€O2šCÃ)(ÍÞ)Êã::‘C·Êµ&�Ò;(/<õ͵&ñþ9Òã:õ:šCOÍ�+G¯2“Cñ!šCÍl):“C2‰Cx!”CŠC·òº(Í£(Òr(ë4͘):‰C·ü†(!’C~æ€++®wÃã:!ŠC4À#‹(4ʵ'+6€É!”CŠC¯Ž# £(ɯž# °(ÉͰ(ÒÓ(/!‰C¯Oyžw#ÂË(¯G:�C·Âü(!‰CVwz# Âá(xÖþÀÂÔ(ÃW:!‰CÍ)·òô(x·Êr(!‘C†wÒW:Ãr(~w# Â)ÉåÍÒ&áͳ:Í©)Ã0)åÍÒ&áÍ )!”CÃ#(åÍÒ&áͳ:Í©)ÃL)åÍÒ&áÍ )͵&!”CÃ(y2šC!�C£C~q+Âb)ÉqåÖÚƒ)áåNsY+Âx)Ãn)Æ W¯áÈå~w+Â�)Æ)!�CÊ)Í/+é)ͳ:¯!ŠCw#¯)Ãã:ÍÀ)}ÉÍõ)ÍÉ)Ãû)Íõ)Í�+!�CF#^#V#NÃ7:Íû)}É”C~#Âã)·G++NÈyÃë:ŠCÃá)!ŽCͳ:>�¸Ê8*Ò*ÍSA�ÍÜ:ÍF*ÍÊ:ëÊ4*ë!’C6€Íœ+g>˜�ÍP;|Ô]+ëÉ!É>€©²³Â *akÉͳ:ÈõüU*Íõ*ñúU*Ãã:!‘C~·È+>€®wÃã:Í“*> 2œC!PA"�C!US"ŸC!E "¡Cͤ**àB6 ÍñB*àB6 þTÊ@BÉáã£C~#š*ãé!œC Å~ÍâBÁ#©*ÉÍ“*> 2œC!ST"�C!OP"ŸC! "¡Cͤ*Ã@B!‘C~€G¨xòí*Æ€ÊV:wÍ�+w+É·áú&:ÃW:ÍÊ:xþ˜{Ò¿:!’C6€Íœ+wgú+z³Â+ >˜�ÍP;|ÔI:{õ>˜2‘CÍy9ñØ/<ÉLUX)!�€"‘CÜW+Ãy9ëͤ+ëÍ/+ÁÑÍk+ɯO“_yšWÉ!’C~/w¯o�G}›_}šW}™OÉͤ+Í¿:ÁÑÉ|µÈë|µÈDM!>)ë)ëÒŠ+ =‚+É!�C~7w?##wy7O®É*ŽCãå*�Cãéáã"�Cáã"ŽCÉÍaå!ÃÛ+å!ÃÛ+å!ÃÛ+å!ÃÛ+å!"hCá͆;Íš;~#fo"PCÍš;Ø"&C*PC"*C:‡C·Ê,͘-Ãì+Íé5Ãì+>þ¯2rC¯2sC<2TCÃG,>2rCÃ6,¯2rC<Ã6,>þ¯2rC¯2sC¯2TC~#fo"ˆC!œC"-Cë~#¶+ÂU,!"VC!9##"¹+:sC·Ây,go"XC"ZC"^C"\Cõ,!XC>Ít;*XC~#¶Â�,go"XC*ZC~#¶Â�,go"ZC*\C~#fo"\C*^C~#fo´Âµ,"^C¯2tC2…C2‡C2�C2cC2HCgo"`C"*CÍa:*VC|µÊí,Í^6*`C"uCþ(Ê´5ÍSAˆ21C22C2/C20C<2‡C:rC·È>ï3Í9Í]0ú-þ Â-> Í÷6wà -:JC/<ú0-Ê0-Í÷6=Â)-2JC:hCþÊû7:iC/Æ Êû7Í÷6=ÃA-Í9:JC·úf-Êf- õÍš4ñ=ÂZ-2JCõ:hCþÂx->Í÷6=Âq-:jCGÍš4Í÷6Ãx-!jC”C·Žw# ÂŽ-É:rC·ÊÀ-*1CDM*/C"�C*-C ë*&CÍß-å`i"1Cá"&CÉ*/CDM*/D"�C*&Cë*-C Íß-`i"/Cëü-:iCõå*�C+}‘|˜áÒ&.åÕ:rC·Â.*�C"/C>ͯ3Ñá*-CÃã->ͯ3*/C"�C*-CëááÃã-w#ñ=Ââ-å**C+"*C|µáÂß-É<þÚG.>G!3C60#åÅÍ9Á!JC4á:qCæÆ0wÍ:ÂM."fC~€þ:Ú�.Ö w+Ãq.wë!3C|ºÂ–.}»Â–.!JC4ëþ#"MC|/W}/_*fC"fCÉ>þ¯2HC:hCþÚ�1Í&8:ICG:�C·úÈ.€þx2GCÍ?.:�C·ò×.¯2LCÍL4:�C·òø.õ0Íš4!GC5Ê /ñ<Âæ.õ:GC·ú /Ê /Í'4Ãù.E:HC·Ê/DÍš4:JC!�C–2JCú)/+Ã0/-/<2JCÍš4:JC_! Í;ñå{Æ0GÍš4ã}Æ0GÍš4ñÉ:hCþÚ�1Í&8:ICG!JC:�C†w€·úq/Í?.¯2LC:IC2GC:JC·úŠ/2LC!GC†wÍL4õ:JC/·ú´/*fC"dC!ÿÿ"fCÍ'4!JC4¤/*dC"fCÍ'4ô/:hCþÚ�1Í&8:JC·ú».!IC/<†ú».FÅw!RC~õÖw2bC!�C~õ¯w<2cCÍ]/ñ2�Cñ2RCñ2IC¯2cC>2bCõ Íš4Ã0*`Cë*VCDM*CåÕÅÍŽ0ÁÑá+|µÂ0"Cë"`Cà 7*`Cë*VCFåÍš4*`C#"`C*C+"C|µá#Â@0à 7*1CDM!bC5Ê„0*/C+}‘|˜Ú‰0*-C ~2†C·`i"1CÉ>ÿÃz0> Ãz0Í]0Ê—0þ À!bC4ÃŽ0:UCþIÂò0:hC=ʹ0==ʹ0=ʹ0ÂÀ0:IC·ÊÄ0ÍSAš!nC¯¶ÊÕ0ÍSAÃÚ0#ÂÊ0:‚C·Êû7:hCþÊì0Íj9ÍK9Ãû7>À2,C:hCþÒ1ÍSAš!IC:KC·Â1:SC·Â1:OCw~/¸2qCÍ&8:JCÍ?.:JC2GC2LCÍL4!kC~·ò-2/W+~/_>2‚C¯2JC! Í;}Æ0oå!JC4{²Âù1!3C:JCG2GC2LC2fCÑs#Â2!3C"MCÍL4V+^Ãõ1ÍL3ÃC2ÍŽ0þ ÂC2>0þ0ÚT2þ:ÒT2Ö02†C·É>ÿ·É¯2IC2KC2SCÍL3þ-Âr2>2‚CÃw2þ+Âz2ÍL3·úû7*1C+"1C!bC4Í3:†Cþ.¢2>2KC2JCÍ3:†C·úž0þEʲ2þD·2ÍL3þ+ÊÆ2þ-ÂË2>2,CÍL3y2SC*1C+"1C!bC4ÅÍ32Áúü2Oxþ Úñ2ÍSA> ··€�GÃÜ2:,C·xÊ3/<2JCG!IC~�wÞ0Í92ø:qCæðÂ3Íø3Í :Í :Í…-Í ::†C!”Cw¯#wÂ83Í…-!IC:JC†wÃ3ÍŽ0þ ÊL3É:RC<2bCÍL3ú�1þFÊo3þTÂ�1>ÿþ¯2jCÍŽ0òs3Ãû7!jC~·Ê‡3>T>Fw> #w#w#w>2hC2iCÃK-> é3> é3>O}2ˆCþO!�::ˆC¾ÒMA·ÊMA=_^#Vë ^#VëÕ3ÕéÚå3È*ZC|µÂñ3ÍSA�*XC|µÂñ3ÍSA…ë*¹+ùëé!”CjCw#Â4É!jC”CÃþ3:‡C!,Cw·Ê…5:rC·À>ï3!GC5øÂ84:dC·*úš4!fC50úš4*MCF#"MCÚ4!RC~�!‚C–!GC–2dCÊj4ò‹4†2GC/ò†4:‚C·-Äš4!LC5ò€4.Íš4ÉÍ'4Ãs4ÍSAÉ Íš4!dC5‹4Ãj4*/Cë*1C{•zœÚ»4#"1Cë*-C+p!bC5Àÿ4ÍSAáá:cC·À:C·Ê 7ÃÍ5!tC~4·ÊÝ4ÍSA *fC"uC*C"{Cà 7!ÿ"bC*`Cë*VC:rC·Ê#5~þ'Ê5åÕÍŽ0Ñáw#Ã5#~þ'Ê5ë"`Cà 7~þ'Ê:5GåÍš4*`C#"`Cá#Ã#5ë*`C#"`Cë#~þ'Ê)5à 7:tC=òa5!…C4!"`CÃÚ52tC 7*{C+"{C|µÊ 7*uC"`C!tC4à 7!,C6:rC·Â©5:TC·Â©5*1Cëz³Â¢5*-C6 ë"/CÍÑ8:,C21C22C·È:rC·ÂÁ5*-D"/CÄP6!"1Cà 7!…C~·ÊÚ5¯wÃé5**C+"*C|·øµÈÃé5:…C·Â€5*C|µÊ 7+"C:OC2IC¯2‚C2JC2,Cgo"jC"lC"nC"pC:RC!bCw:rC·Ê-64*}Cé:iCG:hC*&CjCþÂB6nC~#ÂB6"&CÃ)6:TC·Ê¯3*-D"/Cɯ2,Cgo"jC*`Cë*VC~#þ Êo6þ-†6,C îÃo6ë"`C2†CGÖ0ú¨6þ Ò¨6*jCT])))_Ãd6*jC|µÂ³6#xÉ:,C·ÊÄ6¯•o>œg"jC|µxÉ·!qC~w+ ÂÎ6ÂÈ6É!qC·~w+Âá6É!›CÍÞ6Âì6ÉõkC!jCw#Â76 ñÉÍ^6"CÂ)7þ,Ê 7þ/Ê€5þ)ÊM5þ'Êì4þPÂ77:jC2�Cà 7õ|·òG7ÍSA!"Cñ2UCG!É7¾Êb7# yþ xÂQ7ÍSA€yO!ç7:rC·Êt7!Ó7 ^#Vë"}CyþÒ‘7ë*`C"fC!ÿ"bCëéÍ^6›7ÍSA�}2RC¯2OCyþ Ú»7:†Cþ.ÂÅ7Í^6*jC}2OC*`C+"`CÃÍ5ÍSA‚XH(AILEFGDÖ80Ð4-X2U3X2X2X2X2ü880Ð4K-�1|3¬.R/º/©.:iCG*&CjC:hCþÂ8nCw#Â8"&C*C|µÊ 7ÃÍ5!qC~·Ê¾8Öx2,C¯w:hC=ÊT8==ÊT8=ÊW8+>€¦2‚C>€¶wÃf8Íj9:mC·ò«8ÍK9>2‚C7Ôó:Í–9!,C~�wÈòg8Æò‚8Í9Ãj8£8!ŠCjCÍþ3Í9Òj8!jCŠCÍþ3!JC4¯/ÆGÍÈ6É!jC~#¶±8·Âf8Âf82,C!jCw#ÂÆ8!JC4É>ï3*Cë*1C"1Cå*-DDMáy•xœÒ 7ÍSA */C"1Cà 7å Íš4*C+"C|µÂý8áà 7:iCG:RC�2JCÉ!,C>†w!JC5ÍÈ6Íø3ÍÈ6Ã…-!jC~/G#~/ÂG9õ·Ã7;õå Ò6;ñ7>á{_zW}o|gñ=Â-;|·g}oÉÖÚ_;CZQÃR;Æ o¯-ÈyOzW{_xGÃb;ë`iN#F#ëq#p#ë=Âw;É2"C"wCë"yC`i"#C¯2%CÉåÕ:%CþÒ¯;!wC‡_ÃÃ;õ:"Cþ*#CÚÈ;ñÖ‡_~#foõñ:%C<2%CW:"CºÑÒÛ;áÉãáÉhÍ: Ú3fåÅÍ¥U*aë*²Í: ÊÏeDMááæe:­·ÊÚeͧͳA:·Êf*g|µÊf"]1DFORTDATÃ>…>i>@>>MA >ÍSAžÍSAŸÍSA ÍSA¡!Ý;:ˆC_~ÉÅÕÍ_<ÍÑÁÉ:ˆC‡_!ð;^#VÉ!ç;:ˆC_~É!<:ˆC‡_^#VÉÍz<ÅÍF<·ôM=Áæ@̯=͉ #w##<ͧ<á>€wÉÅÍnB%>|’ÂÄ=}“ÊÇ="<ë">BÍ–<ÍR<ÁÅyæ Êå=ÕÍÑÕÍ÷=ÑÍ<Ê6<ÍF<ÁyöÀwÉÍ<Ê:<ÉÍF<æ@Ä >¯ÉÍF<‡ò >6€‡üb?Íz<ÍR<ͯÉ!Ý;~‡Õ{2ˆCü >Ñ:�:»Â(>É0Ͱ<*-Cåë*/C&ë¯ú\>w#ÃS>ÑÍͧ?·È7ÉͰ<*-CëÍ>€2/CÍ�?·Èþ?É Ͱ<¯2<:/C·È:/C·ò >ÍSA>Í ?*-Cõ~ÍH?#ñ=¦>> ÍH?ÍF<öw:<·È7ÉͰ<¯2/C2<Í ?Í?Úþ>þÊ?*/C&ë*-Cwë"/Cþ Êþ>}þ€ÚÒ>ÍSA¯É:<·Èþ?É·ÉõÍF<æÊ?Ín<6ñÉÍn<·Ì4?Ø5!ð;/Æ�†_#>ŽW·ÉåÕÍR<Í�?2<·Ñá>€wÈ7ÉåõÍn<·ü‡?4!ð;†_#>ŽWñáɇúk?>ÍH?Ín<·6ÈõÍ_<ño&·ú†?6#<Ã{?+åÕÍR<ͧ?2<ÍF<æ÷wÑá¯wÉÍz<:BOî?Íz<:BOÍõ͉<4»?#4ñÉ:�:=¾Ú><~2ˆCÕÅÍa:ÍF<·ôM=ÁÍz<ëÑ w ·Êë?#wÂß?:ˆC‡_!�:( Í—@ͬ@¯2ý?É:ý?·*þ?åÈ> Í—@> ×@*>B"@|’ÂE@}“ÊH@"þ?ë">BÉÃMA:ý?·Ì¤@:/C·È*-C=õ> Í—@~þ+ʉ@þ1Ây@> Í—@É@> Í—@~þ0‰@> Í—@ñ#Èõ~#Í—@ñ=Ë@åõæ_ÍñáÉ>2ý?Í5@ÉÀ@ï@½@½@»@»@»@¯ÉÃMA¯2/CÍñBæþ ÊÄ@õ*/C&ë*-Cñwë"/Cþ È}þ€ÚÄ@ÍSA¯É:/C·È*-C=õ> ÍâB~þ+Ê&Aþ1ÂA> ÍâBÃ&A> ÍâB~þ Ê&Aþ0Â&A> ÍâBñ#Èõ~#ÍâBñ=Ã(A **** at address ** ÍSA™¯É!4AÍ�Aá~æþ"~ÚeA>¢#å·õO!ÈA ~ÍâB#~ÍâB:B<2BþÒŠAñÒšA!9AÍ�AáͧAÍšAÃ@B!HA~·ÈÍâB#Ã�A|Í´A}Í´A> ÃâBõͽAñæÆ�'Î:'ÃâBIDF0MPIRFWITEXDOMLDZLGSQIBTLOBDEISBEINOVCNGLGSSNA2IODTBIRCEFFNDFUNOM??DFUNO¯2B2B!=B">B*+ùÅ ÍÖŸ2B!Â:B!!""BÉUB!HBå*>Bé> ÍâB> ÍâBÃÉP BÃÉP :BÅÕåõ_ÍñáÑÁÉå*ÂB~þ ÌäB#~"XBÅÕåõ_ÍñáÑÁÉå*àB~þ ÌC#~"àBáÉÅÕ VBÍ!WB^ë#6 #> ÍâBwëÑÁÉÍêBwëÑÁÉÉ„€Í–'ÃëmÍnÚnÍnÔ+nÜ„€ program lspoly c Double Precision Least squares Polynomial c with input and output files c 9/08/1986 c (c) Robert H. Sherman c 1931 Camino Manzana, Los Alamos, New Mexico 87544 c byte fnmi(11), fnmo(11), iopn implicit double precision(a-h,o-z) dimension x(50),y(50),dy(50),yc(50),xtitle(10) dimension a(10,10),b(10,10),c(10),r(10),sdc(10) common xtitle,x,y,dy,yc,c,sdc,wvar,sd,n,np,ipath,iopn c iopn=0 write(1,300) write(1,310) read(1,320)ipath if (ipath .eq. 1hk) ipath=1hK if (ipath .eq. 1hK ) go to 20 write (1,350) read (1,320) fnmi call upper (fnmi) write (1,360) read (1,340) id call open (10,fnmi,id) read(10,365)xtitle do 10 i=1,51 10 read (10,380,end=15) x(i),y(i) 15 np=i-1 write(1,381)xtitle write(1,382)np go to 40 20 write(1,390) read(1,370)np write(1,400) do 30 i=1,np write(1,410)i read(1,380)x(i) write(1,420)i 30 read(1,380)y(i) 40 write(1,330) read(1,370)n n=n+1 if (np .ge. n ) go to 45 write(1,421) 421 format(1x,'Too Many Parameters !!!') go to 40 45 do 60 i=1,n do 60 j=i,n a(i,j)=0. do 50 k=1,np 50 a(i,j)=a(i,j)+pwr(x(k),i+j-2) 60 a(j,i)=a(i,j) do 70 i=1,n r(i)=0. do 70 j=1,np 70 r(i)=r(i)+y(j)*pwr(x(j),i-1) write(1,430) write(1,440)(i,x(i),y(i),i=1,np) write(1,450) do 80 i=1,n 80 write(1,460)i,r(i),(a(i,j),j=1,n) c call matinv(n,a,b,ierr) c write(1,470) do 90 i=1,n 90 write(1,460)i,(b(i,j),j=1,n) do 100 i=1,n c(i)=0. do 100 j=1,n 100 c(i)=c(i)+b(i,j)*r(j) sumd=0. do 110 i=1,np yc(i)=poly(x(i),n,c) dy(i)=yc(i)-y(i) 110 sumd=sumd+dy(i)*dy(i) if (np .gt. n) go to 112 wvar=0. go to 113 112 wvar=sumd/(np-n) 113 sd=dsqrt(wvar) do 120 i=1,n 120 sdc(i)=dsqrt(wvar*b(i,i)) if (ipath .ne. 1hK ) write(1,381)xtitle write(1,480) do 130 i=1,n 130 write(1,490)i,c(i),sdc(i) write(1,500) do 140 i=1,np 140 write(1,510)i,x(i),y(i),yc(i),dy(i) write(1,520)wvar,sd c write(1,530) read(1,320)iprint if (iprint .eq. 1hy ) iprint=1hY if (iprint .eq. 1hY ) call output c write(1,540) read(1,320)iagain if (iagain .eq. 1hy) iagain=1hY if (iagain .eq. 1hY ) go to 40 endfile 6 stop c 300 format(1x,'Least Squares Polynomial'/' Double Precision'/ 1 ' (c) 9/ 8/1986 R. H. Sherman'/' 50 points maximum'/) 310 format(' Is Data input from Keyborad (K) or File (F) ?') 320 format (11a1) 330 format(1x,'Input Degree of Polynomial to be fit = ') 340 format (i1) 350 format (' Data filename'/' 12345678901'/) 360 format ('+Input drive ID - 0, 1, 2 :') 365 format(10a8) 370 format (i2) 380 format (2f12.0) 381 format(/1x,10a8) 382 format(1x,i3,' data points read'/) 390 format('+Input number of data points = ') 400 format(1x,'Enter Data:'/) 410 format('+ x(',i2,') = ') 420 format('+ y(',i2,') = ') 430 format(1x,'Data:') 440 format(1x,i3,1x,1p2g13.6) 450 format(/1x,'Matrix Coefficients:') 460 format(1x,i3,1x,1p6g14.6/18x,6g14.6) 470 format(/1x,'Inverse Matrix Coefficients:') 480 format(/1x,'Fitted Coefficients and std. deviations:') 490 format(1x,i3,2x,1pg20.10,2x,e15.7) 500 format(/' i x(i) y(i) yc(i)', x ' dy(i)') 510 format(1x,i3,1p4e15.7) 520 format(/1x,'Wvar, Standard Deviation of the fit = ',1p2e16.7) 530 format(1x,'Create an output file - Y/N ? ') 540 format(' Run another case - Y/N ?') c end subroutine matinv(n,a,b,ierr) c c Invert matrix c implicit double precision(a-h,o-z) dimension a(10,10),b(10,10) c do 10 i=1,n do 10 j=1,n b(i,j)=0. if ( i .ne. j ) go to 10 b(i,j)=1. 10 continue do 70 j=1,n do 20 i=j,n 20 if ( a(i,j) .ne. 0. ) go to 30 write(1,200) ierr=-1 return 30 do 40 k=1,n s=a(j,k) a(j,k)=a(i,k) a(i,k)=s s=b(j,k) b(j,k)=b(k,j) 40 b(i,k)=s t=1/a(j,j) do 50 k=1,n a(j,k)=t*a(j,k) 50 b(j,k)=t*b(j,k) do 70 i=1,n if ( i .eq. j ) go to 70 t=-a(i,j) do 60 k=1,n a(i,k)=a(i,k)+t*a(j,k) 60 b(i,k)=b(i,k)+t*b(j,k) 70 continue ierr=1 return c 200 format(1x,'***** SINGULAR MATRIX *****') c end subroutine upper (x) c c comvert filename to upper case c byte x(11), cupper do 10 i=1,11 10 x(i)=cupper(x(i)) return end function poly(x,n,c) c c evaluate polynomial (double precision) c implicit double precision(a-h,o-z) dimension c(10) if (n .eq. 1) go to 30 poly=c(n)*x if ( n .eq. 2 ) go to 20 nm2=n-2 do 10 i=1,nm2 j=n-i 10 poly=(poly+c(j))*x 20 poly=poly+c(1) return 30 poly=c(1) return end function pwr(x,n) c c x**n by multiplication (for double precision) c implicit double precision(a-h,o-z) pwr=1. if (n .eq. 0 ) return do 10 i=1,n 10 pwr=pwr*x return end subroutine output c byte fnmo(11),lf,iopn implicit double precision(a-h,o-z) dimension x(50),y(50),dy(50),yc(50),xtitle(10),c(10),sdc(10) common xtitle,x,y,dy,yc,c,sdc,wvar,sd,n,np,ipath,iopn c lf=x'0A' if (iopn .eq. 1 ) go to 10 write (1,100) read (1,110) fnmo call upper (fnmo) write (1,120) read (1,130) id call open (6,fnmo,id) 10 if (ipath.eq. 1hK ) go to 20 write(6,140)xtitle,lf 20 write(6,150)lf do 30 i=1,n 30 write(6,160)i,c(i),sdc(i),lf write(6,170)lf do 40 i=1,np 40 write(6,180)i,x(i),y(i),yc(i),dy(i),lf write(6,190)wvar,sd,lf iopn=1 return c 100 format (' Data filename'/' 12345678901'/) 110 format (11a1) 120 format ('+Input drive ID - 0, 1, 2 :') 130 format (i1) 140 format(/1x,10a8,a1) 150 format(/1x,'Fitted Coefficients and std. deviations:',a1) 160 format(1x,i3,2x,1pg20.10,2x,e15.7,a1) 170 format(/' i x(i) y(i) yc(i)', x ' dy(i)',a1) 180 format(1x,i3,1p4e15.7,a1) 190 format(/1x,'Wvar, Standard Deviation of the fit = ',1p2e16.7,a1) end  dy(i)',a1) 180 format(1x,i3,1p4e15.7,a1) 190 formatÿÇad� LSQW.BAS 9/9/1986bn� Weighted Least Squares Data Reduction using Gaussian Elimination4bx� Tested with NBS Test PolynomialMb‚� Robert H. Sherman†bŒ� 1931 Camino Manzana, Los Alamos, New Mexico 87544œb–° AóH,OóZ : ® IóN¾b MXð2 : EFðç : MDð : ¡ xûbªPR$ð" +#.#####^^^^" : PR1$ð"##" : PR2$ð" +#.#######^^^^"@c´PR3$ð" +#.###^^^^" : PR4$ð" +#.######^^^^" : PR5$ð" +#.####^^^^"xc¾† X(MX),Y(MX),XP(MX),WT(MX),DEV(MX),YC(MX),PCTD(MX)ŽcÈWVOLDð : SDOLDð¿cÒQðMDò : † A(Q,Q),R(Q),V(Q),AINV(Q,Q),SDV(Q)ÓcÜQðMDô : † P(Q)êcæ‘ ÿ–()"9/9/1986"/dð‘ "Weighted Least Squares Polynomial, Y= a + b*X + c*X^2 + ..."Mdú‘ "(c) 1986 R.H. Sherman"„d‘ "Currently set to accept ";MX;" data pairs." : ‘²d… "Create a Data File? Y/N =N ";QCR$Ôd‹ QCR$ð"Y" ø QCR$ð"y" Ï � à e"¡ d : Æ "*.DAT" : ¡ x : ‘ : ± … "Input Date :";DT$e,� T/e6Jð : Æ "*.DAT" : ‘fe@… "Input Data Filename FNM (.DAT) :",XFNM$ : � ²€eJ¿ "i",#,XFNM$ò".DAT"™eT± … #,HDR$ : ‘ HDR$Íe^… "Input Data Order : X,Y ( Y/N/Other=Y ) ";QD$fh… "Are Weights included - (Y/N/Other=N) ";QW$ : ‹ QW$ð"y" Ï QW$ð"Y"-fr‹ QD$ð"n" Ï QD$ð"N"ff|… "Do you wish to scale the X's ( Y/N =N )";QSX$Ÿf†… "Do you wish to scale the Y's ( Y/N =N )";QSY$¹f�‹ QSX$ð"y" Ï QSX$ð"Y"Ófš‹ QSY$ð"y" Ï QSY$ð"Y"g¤‹ QSX$ð"Y" Ï … "X Scale Factor =",SCFTRX7g®‹ QSY$ð"Y" Ï … "Y Scale Factor (Y=Y/scf)=",SCFTRYAg¸JðJòVg‹ QW$ ð"Y" ‰ àˆgÌ‹ QD$ñï"N" Ï … #,X(J),Y(J) :¢ … #,Y(J),X(J) gÖWT(J)ð� : ‰ êÞgà‹ QD$ñï"N" Ï … #,X(J),Y(J),WT(J) :¢ … #,Y(J),X(J),WT(J)ügê‹ X(J)ðEF Ï JðJó : ‰ &0hô‹ JðMX Ï ‘ "** No More Data Allowed **" : ‰ &Rhþ‹ QSX$ð"Y" Ï X(J)ðX(J)ôSCFTRXvh‹ QSY$ð"Y" Ï Y(J)ðõY(J)ôSCFTRYŠh‹ ÿ¯() Ï ‰ &”h‰ ¸žh&NPðJ §h0à #Ûh:‹ NPð Ï ‘"**FATAL ERROR** No Data Entered" : �ûhD‘ NP;" data points entered")iN… "Degree of polynomial to be fitted ";D _iX‹ Dñ Ï ‘ "**ERROR** Degree must be => 0" : ‰ NzibDðÿ…(D) : ‹ DñNP Ï v£il‘ "**ERROR** Not enough data": ‰ N®ivD2ðôDài€‹ DïMD Ï ‘ "**ERROR** degree too high": ‰ NêiŠNðDòj”‚ Ið Î NP : XP(I)ð� : ƒ I1jž‚ Ið Î D2ò : ‹ Iï N Ï ²�k*ž Ð );HDR$;" ";DT$ : žÓk4ž : ž Ð );"X POWER COEFFICIENT SD OF COEFFICIENT" : ž"l>‚ Jð Î N : ‘" ";Jó, : ‘ Ù PR2$;V(J); : ‘ Ô); : ‘ Ù PR2$;SDV(J) : ƒ : ‘9lH‹ QP$ñï"Y" Ï ‰ fGlR‚ Jð Î N�l\ž Ð );Jó;Ð) : ž Ù PR2$;V(J); : ž Ô); : ž Ù PR2$;SDV(J) : ƒ : žžlf‚ Jð Î NPßlp‘ Ù PR1$;J; : ‘ Ù PR$;ÿ�(WT(J));ÿ�(X(J)),ÿ�(Y(J)),ÿ�(YC(J)),÷lz‘ Ù PR3$;ÿ�(DEV(J)) m„‹ QP$ñï"Y" ‰ ˜OmŽž Ð ); : ž Ù PR1$;J; : ž Ù PR4$;WT(J);X(J),Y(J),YC(J),DEV(J)Um˜ƒ�m¢‘ : ‘ "Weighted Variance, SD ="; : ‘ Ù PR5$;WVAR,SD°m¬‘ Ð); : ‘ Ù PR5$;WVOLD,SDOLDÊm¶SDOLDðSD : WVOLDðWVARàmÀ‹ QP$ñï"Y" ‰ ÞnÊž : ž Ð );"Weighted Variance, SD ="; : ž Ù PR5$;WVAR,SD+nÔž : ž : žPnÞ‘ : … "Hit To Continue";QC$qnè‘ : ‘ "Continuation Options"˜nò‘" 1 - Determine Specific Points"Ínü‘" 2 - Fit another polynomial to the same data"òn‘" 3 - Fit another set of data"o‘" 4 - TERMINATE program",o‘" 5 - Unity Weights"Oo$‘" 6 - Weights as 1/(Dev)**2"qo.‘" 7 - Set Specific Weights"Šo8‘" 8 - Plot Errors"«oB‘" 81 - Plot Percent Errors"ÅoL‘" 9 - Reprint Data"ëoV‘" 10 - Output Fitted Parameters"p`‘" 11 - Restart Program"$pj‘" 99 - Return to CP/M"Qpt…"What Next";Q : Qðÿ…(Q) : ‹ Qð Ï ‰ cp~‹ Qð Ï � rupˆ‹ Qð Ï � †‡p’‹ Qð Ï �  pœ‹ Qð ø QðQ Ï � Ú²p¦‹ Qð Ï ‰  Åp°‹ Qð Ï � ¢Øpº‹ Qð Ï ‰ æèpÄ‹ Qð Ï ,q΋ Qð Ï � T : ‰ NqØ‹ Qð Ï !qâ‹ Qðc Ï ½2qì‹ Qñï Ï è for YES ";QQ$–q ‹ QQ$ñï"" Ï ‰ è :¢ ‰ hÂq‘ : ‘ "Enter ";EF;" to leave this mode"ãq‘ :… "X=";XV : ‹ XVðEF Ï èýq(YVð : ‚ KðN Î  Ñ ó,r2YVðYVôXVòV(K) : ƒ : ‘ "y= "; : ‘ Ù PR2$;YV6r<‰ erF� Matrix Inversion by Gaussian EliminationorPLðDò¨rZ‚ Ið Î L : ‚ Jð Î L : ‹ IðJ Ï B(I,J)ð :¢ B(I,J)ð²rdƒ J,IÑrn‘ : ‘ "Coefficient Matrix" sx‚ Ið Î L : ‚ Jð Î L : ‘ ÿ�(A(I,J)), : ƒ J : ‘ : ƒ I.s‚‘ : ‚ Ið Î L : ‘ I,R(I) : ƒ I\sŒ‚ Jð Î L : ‚ IðJ Î L : ‹ A(I,J)ñï Ï ´ds–ƒ I|s ‘ "Singular Matrix"†sª‰ Jºs´‚ Kð Î L : SðA(J,K) : A(J,K)ðA(I,K) : A(I,K)ðSès¾SðB(J,K) : B(J,K)ðB(I,K) : B(I,K)ðS : ƒ K÷sÈTðõA(J,J)/tÒ‚ Kð Î L : A(J,K)ðTôA(J,K) : B(J,K)ðTôB(J,K) : ƒ KMtÜ‚ L1ð Î L : ‹ L1ðJ Ï htæTðóA(L1,J) : ‚ Kð Î L…tðA(L1,K)ðA(L1,K)òTôA(J,K)¨túB(L1,K)ðB(L1,K)òTôB(J,K) : ƒ K³tƒ L1,JÄt‘ : ‘ "|A|'"þt‚ Ið Î L : ‚ Jð Î L : ‘ ÿ�(B(I,J)), : ƒ J : ‘ : ƒ Iu"‘Ku,‚ Ið Î L : V(I)ð : ‚ Jð Î L : V(I)ðV(I)òB(I,J)ôR(J) : ƒ J : ƒ Iju6‚ Ið Î L : ‘ I,V(I) : ƒ Išu@… "Press any character to continue ...",CH$ uJŽáuT… "Printed Output ( Y/N =N )";QP$ : ‹ QP$ð"y" Ï QP$ð"Y"çu^Žíuh� vr� Set all weights to unity/v|‚ Ið Î NP : WT(I)ð : ƒ I : ŽRv†� Set weights to inverse of SDzv�‚ Ið Î NP : WT(I)ðõDEV(I)ö : ƒ I²všWMAXðWT() : ‚ Ið Î NP : ‹ WT(I)ïWMAX Ï WMAXðWT(I)ºv¤ƒ IÏv®‹ WMAXñH‡ Ï Žw¸‚ Ið Î NP : WT(I)ðWT(I)ôH‡õWMAX : ƒ I : Ž wÂ� Input individual weightsNwÌ… "Input Index of Weight to be set : ";IW‹wÖ‘ "Input Value for weight, W(";IW;") = "; : … WT(IW) : ŽÀwà� Create Least Squares Data File for Program LSQÛwê� R.H. Sherman 5/14/84)xô‘ : ‘ "Create a WEIGHTED Data File for Least Squares Regression Analysis"exþ‘ Ð ); : … "Input File Name Xfnm(.DAT) ";XFNM$ : � ²x¿ "O",#,XFNM$ò".DAT"¤x± … "HEADER : ";HDR$ : ‘ #,HDR$Êx‘ "Input Data as X,Y,Wt triplets"êx&‘ "Input 999,999 when done"òx0Ið"y:‘ "i= ";I; : … " x,y,w = ",X(I),Y(I),WT(I)DyD‹ X(I)ðç ÷ Y(I)ðç Ï ‰ XVyNIðIò : ‰ :�yX‚ Nð Î Ió : ‘ N;Ð);X(N);Ð);Y(N);Ð);WT(N) : ƒ NÔyb… "Data OK? (Y/N) =Y ";Q$ : ‹ Q$ð"Y" ø Q$ð"y" ø Q$ð"" Ï €zl… "Index of Data to be Corrected, i=",J:zv‘" Input Data as X,Y,Wt " : … X(J),Y(J),WT(J) : ‰ Xhz€‚ Nð Î Ió : ‘ #, X(N),Y(N),WT(N) : ƒ NqzŠà #½z”‘ "Finished with Data Input and File ( ";XFNM$;".DAT ) Written to Disk"ÃzžŽÉz¨�äz²LONGðÿ’(XFNM$) : T$ð""{¼‚ Ið Î LONG : C$ðÿƒ(XFNM$,I,)3{Æ‹ C$ïð"a" ÷ C$ñð"z" Ï C$ðÿ–(ÿ•(C$)ó )U{ÐT$ðT$òC$ : ƒ I : XFNM$ðT$ : Žv{Ú‘ ÿ–()Ð)"ERROR PLOT" : ‘¦{äEMINðO¡Lü : EMAX ð óEMIN :�ÛINITIAL VALUESè{î‚ Ið Î NP : ‹ Qð Ï PCTD(I)ðDEV(I) :¢ PCTD(I)ðdôDEV(I)õY(I) |ø‹ PCTD(I)ïEMAX Ï EMAXðPCTD(I),|‹ PCTD(I)ñEMIN Ï EMINðPCTD(I)4| ƒ I•|‹ ÿ†(EMIN)ïEMAX Ï EMAXðÿ†(EMIN) :¢ EMINðóEMAX :�Û MAKE ERROR LIMITS SYMMETRICAL FOR GRAPHING¹| MASK$ð"* | *"õ|*F$ð"###. +#.#######^^^^ +#.#######^^^^ +#.#####^^^^"X}4M1$ðÿ“(ÿ�(EMIN)):M2$ðÿ“(ÿ�(EMAX)):Lðÿ’(M1$)òÿ’(M2$):LðLõ:‹ Lñÿ’(MASK$) Ï Lðÿ’(MASK$)óL :¢ Lð›}>M1$ðÿ˜( óÿ’(M1$)õ)òM1$òÿ˜(L)òM2$:‘ M1$ :�ÛMIN AND MAX VALUES·}H‘ Ð ) Ø(ÿ’(MASK$),"*")Æ}R‚ Ið Î NP~\M$ðMASK$:ÿƒ(M$,ÿœ((PCTD(I)óEMIN)ô(ÿ’(MASK$)ó)õ(EMAXóEMIN))ò,)ð"+"~f‘ Ð ) M$%~pƒ IA~z‘ Ð ) Ø(ÿ’(MASK$),"*")O~„‘ M1$ : ‘v~Ž‘ "Hit any key to continue ... ";–~˜PL$ðÝ : ‹ PL$ð"" Ï ˜ :¢ ޵~¢� Output Fitted ParametersÀ~¬‘ HDR$Ë~¶‘ XFN$À… "Input Filename for PARAMETER OUTPUT FNM (.PAR) :",XFNM$ : � ²,Ê¿ "O",#,XFNM$ò".PAR":Ô‘ #,HDR$wÞ‚ Ið Î N : ‘ #,Ù PR2$;V(I) : ‘ I,V(I) : ƒ I : à # : ޏè� Compute Standard Deviation of fit and of fitted parameters×ò‚ Jð Î NP : YC(J)ð : ƒ J€üQð : ‚ Jð Î NP : QðQòY(J) : ƒ : XMðQõNP : Tð : GðV€ ‚ Jð Î NP : YC(J)ð : ‚ KðN Î  Ñ ó: YC(J)ðYC(J)ôX(J)òV(K) : ƒl€ DEV(J)ðY(J)óYC(J)›€ TðTòWT(J)ô(DEV(J))ö : GðGò(Y(J)óXM)ö : ƒ¯€$ WVARðTõ(NPóDó)È€. ‹ Gð Ï Tðd : ‰ L Ø€8 SDðÿ‡(WVAR)�B ‚ Ið Î N : SDV(I)ðSDôÿ‡(B(I,I)) : ƒ I �L ŽY(J)óXM)ö : ƒ¯€$ WVARðTõ(NPóDó)Date: 9/11/1986 This library contains the source code for two least squares programs for fitting polynomials to data. There are some serious defects in most of the similar programs previously available in the library. The solution of the least squares problem requires the inversion of a matrix which is generally ill-conditioned. There are many terms whose absolute values are large, but whose sums are nearly zero. Therefore it is vitally important that every precaution be taken to see that the simple arithmetic is performed in a manner to preserve as much accuracy as is possible. For example, X(i)^n is usually performed by exp(n*log(X(i))) which is not as accurate as X(i)*X(i)*... since we are dealing with integer values of n. The codes presented here use double precision arithmetic. The programs may be tested by means of data generated from known polynomials of the type suggested several years ago in a paper from the National Bureau of Standards. Two such sets of data are included. NBS1.DAT is a set of numbers generated from a simple polynomial together with weights (unity). For data set RNDNRM5.DAT each value of Y(i) was perturbed by the addition of a value taken from a set of random normal deviates with mean of zero and a standard distribution of 1 ( and divided by 10000 to give s.d.=1.e-4). If a least squares code performs well it should reproduce the coefficients of the polynomial from which the data were generated with high accuracy. In the case of RNDNRM5.DAT the "standard deviation of the fit" should be close to the value of the built in "error". Both codes contained here pass these tests. LSQW.BAS is designed on a core culled from various other codes, but with modifications for accuracy and incorporating features which I find useful in my work. The console messages should be self explanitory. Code is included to permit the construction of a data file. If generated by an editor the format is: 1) a single title line 2) multiple data lines in the form X(i),Y(i),Weight(i) The code will sense an end-of-file condition and count the number of data items in the file. LSQF.FOR and LSQF.COM are the source and object codes for a somewhat faster and slightly more accurate least squares polynomial fit, but without many of the bells and whistles of LSQW.BAS. The format for the data file is: 2F12.0, preceeded by a single title line (10A8). The code will detect and end-of-filecondition for counting the number of data entries. If one chooses to use to use keyboard entry, the format is F12.0 ( which will permit properly justified exponential format. A file name may be in either case as conversion to upper case is included. Filename entry is a string of 11 legal filename characters as follows: 12345678901 filenameext ---> filename.ext It is hoped that you will find these programs useful. If you have any comments, corrections, upgrades, etc. I would be pleased to hear from you. Robert H. Sherman 1931 Camino Manzana Los Alamos, New Mexico 87544 . I would be pleased to hear from you. Robert H. Sherman 1931 NBS Polynomial w/ Random Normal Deviations, sd=1.e-4, # coef. = 6 (n=5) 1. 1001.110967 1.0 2. 1002.499328 1.0 3. 1004.275362 1.0 4. 1006.598470 1.0 5. 1009.687510 1.0 6. 1013.833462 1.0 7. 1019.411643 1.0 8. 1026.892810 1.0 9. 1036.856039 1.0 10. 1050.000125 1.0 11. 1067.156176 1.0 12. 1089.299114 1.0 13. 1117.560222 1.0 14. 1153.238404 1.0 15. 1197.812762 1.0 16. 1252.953558 1.0 17. 1320.536805 1.0 18. 1402.652900 1.0 19. 1501.620917 1.0 20. 1620.000039 1.0 21. 1760.601070 1.0 22. 1926.499168 1.0 23. 2121.045490 1.0 24. 2347.878322 1.0 25. 2610.937562 1.0 26. 2914.473447 1.0 27. 3263.061727 1.0 28. 3661.612898 1.0 29. 4115.385777 1.0 30. 4629.999974 1.0 31. 5211.446124 1.0 32. 5866.099171 1.0 33. 6600.730250 1.0 34. 7422.518440 1.0 35. 8339.062440 1.0 36. 9358.393736 1.0 37. 10488.986748 1.0 38. 11739.772797 1.0 39. 13120.150752 1.0 40. 14639.999874 1.0  10488.986748 1.0 38. 11739.772797 1.0 39. 13120.150752 1.0 40. NBS Polynomial with 4 Coefficients, n=3 (weights no included) 1. 0.0 2. -5.0 3. -20. 4. -51. 5. -104. 6. -185. 7. -300. 8. -455. 9. -656. 10. -909.