亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? gsl-design.texi

?? 該文件為c++的數學函數庫!是一個非常有用的編程工具.它含有各種數學函數,為科學計算、工程應用等程序編寫提供方便!
?? TEXI
?? 第 1 頁 / 共 4 頁
字號:
@c @item Cellular automata@c @end itemize@node What routines are not implemented, Design of  Numerical Libraries, What routines are implemented, Design@section What routines are not implemented@itemize @bullet@item anything which already exists as a high-quality GPL'ed package.@item anything which is too big -- i.e. an application in its own right rather than a subroutineFor example, partial differential equation solvers are often huge andvery specialized applications (since there are so many types of PDEs,types of solution, types of grid, etc).  This sort of thing shouldremain separate.  It is better to point people to the good applicationswhich exist.@item anything which is independent and useful separately.Arguably functions for manipulating date and time, or financialfunctions might be included in a "scientific" library.  However, thesesorts of modules could equally well be used independently in otherprograms, so it makes sense for them to be separate libraries.@end itemize@node  Design of  Numerical Libraries, Code Reuse, What routines are not implemented, Design@section  Design of  Numerical LibrariesIn writing a numerical library there is a unavoidable conflict betweencompleteness and simplicity.  Completeness refers to the ability toperform operations on different objects so that the group is"closed". In mathematics objects can be combined and operated on in aninfinite number of ways.  For example, I can take the derivative of ascalar field wrt a vector and the derivative of a vector field wrt ascalar (along a path).There is a definite tendency to unconsciously try to reproduce all thesepossibilities in a numerical library, by adding new features one byone. After all, it is always easy enough to support just one morefeature.... so why not?Looking at the big picture, no-one would start out by saying "I want tobe able to represent every possible mathematical object and operationusing C structs" -- this is a strategy which is doomed to fail.  Thereis a limited amount of complexity which can be represented in aprogramming language like C.  Attempts to reproduce the complexity ofmathematics within such a language would just lead to a morass ofunmaintainable code.  However, it's easy to go down that road if youdon't think about it ahead of time.It is better to choose simplicity over completeness.  In designing newparts of the library keep modules independent where possible. Ifinterdependencies between modules are introduced be sure about where youare going to draw the line.Whenever possible choose algorithms which scale well and always rememberto handle asymptotic cases.  This is particularly relevant for functionswith integer arguments.  It is tempting to implement these using thesimple @math{O(n)} algorithms used to define the functions, such as themany recurrence relations found in Abramowitz and Stegun.  While suchmethods might be acceptable for @math{n=O(10-100)} they will not besatisfactory for a user who needs to compute the same function for@math{n=1000000}.@node Code Reuse, Standards and conventions, Design of  Numerical Libraries, Design@section Code ReuseIt is useful if people can grab a single source file and include it intheir own programs without needing the whole library.  Try to allowstandalone files like this whenever it is reasonable.  Obviously theuser might need to define a few macros, such as GSL_ERROR, to compilethe file but that is ok.  Examples where this can be done: grabbing asingle random number generator.@node Standards and conventions, Background and Preparation, Code Reuse, Design@section Standards and conventionsThe people who kick off this project should set the coding standards andconventions.  In order of precedence the  standards that we follow are,@itemize @bullet@item We follow the GNU Coding Standards.@item We follow the conventions of the ANSI Standard C Library.@item We follow the conventions of the GNU C Library.@item We follow the conventions of the glib GTK support Library.@end itemizeThe references for these standards are the @cite{GNU Coding Standards}document, Harbison and Steele @cite{C: A Reference Manual}, the@cite{GNU C Library Manual} (version 2), and the Glib source code.For mathematical formulas, always follow the conventions in Abramowitz &Stegun, the @cite{Handbook of Mathematical Functions}, since it is thedefinitive reference and also in the public domain.If the project has a philosophy it is to "Think in C".  Since we areworking in C we should only do what is natural in C, rather than tryingto simulate features of other languages.  If there is something which isunnatural in C and has to be simulated then we avoid using it. If thismeans leaving something out of the library, or only offering a limitedversion then so be it.  It is not worthwhile making the libraryover-complicated.  There are numerical libraries in other languages, andif people need the features of those languages it would be sensible forthem to use the corresponding libraries, rather than coercing a Clibrary into doing that job.  It should be borne in mind at all time that C is a macro-assembler.  Ifyou are in doubt about something being too complicated ask yourself thequestion "Would I try to write this in macro-assembler?" If the answeris obviously "No" then do not try to include it in GSL. [BJG]It will be useful to read the following paper,@itemize @asis@item Kiem-Phong Vo, ``The Discipline and Method Architecture for ReusableLibraries'', Software - Practice & Experience, v.30, pp.107-128, 2000.@end itemize@noindentIt is available from@url{http://www.research.att.com/sw/tools/sfio/dm-spe.ps} or the earliertechnical report Kiem-Phong Vo, "An Architecture for Reusable Libraries"@url{http://citeseer.nj.nec.com/48973.html}.There are associated papers on Vmalloc, SFIO, and CDT which are alsorelevant to the design of portable C libraries.@itemize @asis@itemKiem-Phong Vo, ``Vmalloc: A General and Efficient MemoryAllocator''. Software Practice & Experience, 26:1--18, 1996.@url{http://www.research.att.com/sw/tools/vmalloc/vmalloc.ps}@itemKiem-Phong Vo. ``Cdt: A Container Data Type Library''. Soft. Prac. &Exp., 27:1177--1197, 1997@url{http://www.research.att.com/sw/tools/cdt/cdt.ps}@itemDavid G. Korn and Kiem-Phong Vo, ``Sfio: Safe/Fast String/File IO'',Proceedings of the Summer '91 Usenix Conference, pp.  235-256, 1991.@url{http://citeseer.nj.nec.com/korn91sfio.html}@end itemizeSource code should be indented according to the GNU Coding Standards,with spaces not tabs. For example, by using the @code{indent} command:@exampleindent -gnu -nut *.c *.h@end example@noindentThe @code{-nut} option converts tabs into spaces.@node Background and Preparation, Documentation, Standards and conventions, Design@section Background and PreparationBefore implementing something be sure to research the subjectthoroughly!  This will save a lot of time in the long-run.  The two mostimportant steps are,@enumerate@itemto determine whether there is already a free library (GPL orGPL-compatible) which does the job.  If so, there is no need toreimplement it.  Carry out a search on Netlib, GAMs, na-net,sci.math.num-analysis and the web in general. This should also provideyou with a list of existing proprietary libraries which are relevant,keep a note of these for future reference in step 2.@item make a comparative survey of existing implementations in thecommercial/free libraries. Examine the typical APIs, methods ofcommunication between program and subroutine, and classify them so thatyou are familiar with the key concepts or features that animplementation may or may not have, depending on the relevant tradeoffschosen.  Be sure to review the documentation of existing libraries foruseful references.@itemread up on the subject and determine the state-of-the-art.  Find thelatest review papers.  A search of the following journals should beundertaken.@itemize @asis@item ACM Transactions on Mathematical Software@item Numerische Mathematik@item Journal of Computation and Applied Mathematics@item Computer Physics Communications@item SIAM Journal of Numerical Analysis@item SIAM Journal of Scientific Computing@end itemize@end enumerate@node Documentation, Namespace, Background and Preparation, Design@section DocumentationDocumentation: the project leaders should give examples of how thingsare to be documented.  High quality documentation is absolutelymandatory, so documentation should introduce the topic, and give carefulreference for the provided functions. The priority is to providereference documentation for each function. It is not necessary toprovide tutorial documentation.Use free software, such as GNU Plotutils, to produce the graphs in themanual.Some of the graphs have been made with gnuplot which is not truly free(or GNU) software, and some have been made with proprietaryprograms. These should be replaced with output from GNU plotutils.When citing references be sure to use the standard, definitive and bestreference books in the field, rather than lesser known text-books orintroductory books which happen to be available (e.g. from undergraduatestudies).  For example, references concerning algorithms should be toKnuth, references concerning statistics should be to Kendall & Stuart,references concerning special functions should be to Abramowitz & Stegun(Handbook of Mathematical Functions AMS-55), etc.The standard references have a better chance of being available in anaccessible library for the user.  If they are not available and the userdecides to buy a copy in order to look up the reference then this alsogives them the best quality book which should also cover the largestnumber of other references in the GSL Manual.  If many different bookswere to be referenced this would be an expensive and inefficient use ofresources for a user who needs to look up the details of the algorithms.Reference books also stay in print much longer than text books, whichare often out-of-print after a few years.Similarly, cite original papers wherever possible.  Be sure to keepcopies of these for your own reference (e.g. when dealing with bugreports) or to pass on to future maintainers.If you need help in tracking down references, ask on the@code{gsl-discuss} mailing list.  There is a group of volunteers withaccess to good libraries who have offered to help GSL developers getcopies of papers.[JT section: written by James TheilerAnd we furthermore promise to try as hard as possible to documentthe software: this will ideally involve discussion of why you might wantto use it, what precisely it does, how precisely to invoke it, how more-or-less it works, and where we learned about the algorithm,and (unless we wrote it from scratch) where we got the code.We do not plan to write this entire package from scratch, but to cannibalizeexisting mathematical freeware, just as we expect our own software tobe cannibalized.]@node Namespace, Header files, Documentation, Design@section NamespaceUse @code{gsl_} as a prefix for all exported functions and variables.Use @code{GSL_} as a prefix for all exported macros.All exported header files should have a filename with the prefix @code{gsl_}.All installed libraries should have a name like libgslhistogram.aAny installed executables (utility programs etc) should have the prefix@code{gsl-} (with a hyphen, not an underscore).All function names, variables, etc should be in lower case.  Macros andpreprocessor variables should be in upper case.@node Header files, Target system, Namespace, Design@section Header filesInstalled header files should be idempotent, i.e. surround them by thepreprocessor conditionals like the following,@example#ifndef __GSL_HISTOGRAM_H__#define __GSL_HISTOGRAM_H__...#endif /* __GSL_HISTOGRAM_H__ */@end example@node Target system, Function Names, Header files, Design@section Target systemThe target system is ANSI C, with a full Standard C Library, and IEEEarithmetic.@node Function Names, Object-orientation, Target system, Design@section Function NamesEach module has a name, which prefixes any function names in thatmodule, e.g. the module gsl_fft has function names likegsl_fft_init. The modules correspond to subdirectories of the librarysource tree.@node Object-orientation, Comments, Function Names, Design@section Object-orientationThe algorithms should be object oriented, but only to the extent that iseasy in portable ANSI C.  The use of casting or other tricks to simulateinheritance is not desirable, and the user should not have to be awareof anything like that.  This means many types of patterns are ruledout.  However, this is not considered a problem -- they are toocomplicated for the library.  Note: it is possible to define an abstract base class easily in C, usingfunction pointers.  See the rng directory for an example. When reimplementing public domain fortran code, please try to introducethe appropriate object concepts as structs, rather than translating thecode literally in terms of arrays.  The structs can be useful justwithin the file, you don't need to export them to the user.For example, if a fortran program repeatedly uses a subroutine like,@exampleSUBROUTINE  RESIZE (X, K, ND, K1)@end example@noindentwhere X(K,D) represents a grid to be resized to X(K1,D) you can makethis more readable by introducing a struct,@smallexamplestruct grid @{    int nd;  /* number of dimensions */    int k;   /* number of bins */    double * x;   /* partition of axes, array of size x[k][nd] */@}voidresize_grid (struct grid * g, int k_new)@{...@}@end smallexample@noindent

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产高清一区二区三区 | 国产欧美日韩不卡| 欧美日韩高清在线| 在线观看国产一区二区| 91丨porny丨国产入口| 成人综合婷婷国产精品久久蜜臀 | 欧美私人免费视频| 色激情天天射综合网| 91丝袜国产在线播放| 91同城在线观看| 91视频一区二区三区| 99r国产精品| 欧美在线综合视频| 在线成人免费观看| 91精品国产综合久久婷婷香蕉| 欧美精品日韩一区| 欧美一区二区三区啪啪| 欧美成人国产一区二区| 久久老女人爱爱| 国产精品免费视频观看| 中文字幕在线一区| 亚洲人成在线观看一区二区| 亚洲综合一二三区| 麻豆一区二区三| 成人网在线播放| 欧美视频精品在线观看| 日韩欧美中文字幕精品| 国产亚洲一区字幕| 一区二区三区四区视频精品免费| 亚洲国产精品久久一线不卡| 奇米影视在线99精品| 国产99久久久久| 在线观看日韩国产| 久久久午夜电影| 伊人色综合久久天天| 美女网站一区二区| 99精品黄色片免费大全| 日韩欧美在线123| 中文字幕一区二区三中文字幕| 亚洲大片在线观看| 国产精品69毛片高清亚洲| 在线观看免费视频综合| 亚洲精品在线电影| 偷拍一区二区三区四区| 成人深夜在线观看| 欧美一区午夜视频在线观看| 中文字幕在线观看一区二区| 蜜臀久久久久久久| 欧美在线观看一区| 国产色产综合色产在线视频| 天天色图综合网| 99久久久免费精品国产一区二区 | 精品日韩欧美在线| 一二三区精品福利视频| 国产精品 日产精品 欧美精品| 欧美中文字幕一区| 日韩毛片在线免费观看| 国产一区二区中文字幕| 91麻豆精品国产91久久久资源速度| 日本一区二区三区国色天香 | 懂色一区二区三区免费观看 | 久久久久久久性| 日韩中文欧美在线| 在线观看一区二区精品视频| 国产精品女主播av| 成人综合婷婷国产精品久久| 久久美女艺术照精彩视频福利播放 | 国产在线视频精品一区| 91.com视频| 丝袜亚洲另类欧美综合| 欧美精品99久久久**| 亚洲国产视频网站| 日韩欧美你懂的| 亚洲免费在线视频| 国产精品一区2区| 欧美三级中文字幕在线观看| 欧美精品一区二区三区久久久| 三级欧美韩日大片在线看| a在线欧美一区| 国产视频亚洲色图| 国产在线播放一区| 欧美一区二区大片| 首页综合国产亚洲丝袜| www.亚洲人| 亚洲一区二区中文在线| 成人激情黄色小说| 久久免费偷拍视频| 国产一区二区三区精品视频| 91精品久久久久久久久99蜜臂| 亚洲精品欧美二区三区中文字幕| 国产精品88av| 日本一区免费视频| 不卡一二三区首页| 国产精品不卡在线| 欧美在线一二三| 亚洲一本大道在线| 欧美性受xxxx| 亚洲bt欧美bt精品| 精品视频全国免费看| 亚洲一区在线观看视频| 欧美偷拍一区二区| 日韩成人免费在线| 日韩欧美色电影| 国产一区二区免费在线| 欧美精选在线播放| 国产成人免费xxxxxxxx| 国产欧美一区二区三区鸳鸯浴| 国产成人精品亚洲日本在线桃色| 欧美不卡123| 国产盗摄视频一区二区三区| 国产精品国产三级国产| 亚洲成av人片在www色猫咪| 在线一区二区视频| 青青草国产精品亚洲专区无| 精品999久久久| 精品一区二区免费| 一区二区三区在线不卡| 欧美福利视频导航| 狠狠色丁香久久婷婷综合丁香| 久久日韩粉嫩一区二区三区| 成人涩涩免费视频| 亚洲一线二线三线视频| 欧美韩日一区二区三区四区| 99re成人精品视频| 日本在线播放一区二区三区| 欧美精品一区二| 色妹子一区二区| 老司机一区二区| 亚洲丰满少妇videoshd| 久久久久久电影| 在线观看日韩一区| 国产乱国产乱300精品| 国产精品久久久久久久久免费桃花| 日本高清不卡视频| 日韩制服丝袜先锋影音| 亚洲综合在线电影| 久久久久久影视| 欧美一级精品大片| eeuss影院一区二区三区| 捆绑紧缚一区二区三区视频| 亚洲特黄一级片| 久久综合久久综合亚洲| 欧美午夜在线观看| 成人黄色在线网站| 成人在线综合网| 日韩 欧美一区二区三区| 久久久精品黄色| 日韩一区国产二区欧美三区| 91免费视频网| 国产99久久久国产精品免费看| 首页综合国产亚洲丝袜| 亚洲你懂的在线视频| 久久久久久久电影| 精品久久人人做人人爽| 日韩欧美国产综合| 欧美电影一区二区| 91福利视频久久久久| 国产不卡一区视频| 国产在线精品免费| 蜜桃精品视频在线观看| 亚洲成人免费视频| 亚洲一区中文日韩| 亚洲精品欧美综合四区| 亚洲欧洲成人自拍| 一区二区三区在线免费视频| 国产精品麻豆欧美日韩ww| 久久久久久99久久久精品网站| 91精品国产综合久久精品麻豆| 欧洲精品一区二区| 色综合久久久久久久久| 欧美日韩中文国产| jlzzjlzz亚洲日本少妇| av一二三不卡影片| 成人av资源在线观看| 91丨porny丨在线| 欧美日韩国产高清一区| 欧美伊人久久久久久久久影院 | 国产一区二区三区免费播放| 喷水一区二区三区| 久久99精品久久久久婷婷| 久久99国内精品| 久久99久久精品| 国产成人在线观看免费网站| 国产成人在线视频免费播放| 成人午夜电影网站| 99精品欧美一区| 欧美午夜免费电影| 91精品国产综合久久香蕉麻豆| 国产无遮挡一区二区三区毛片日本| 欧美精品一区二区在线播放| 亚洲国产精品黑人久久久| 国产精品久久一卡二卡| 亚洲精品久久久久久国产精华液| 一区二区三区在线不卡| 免费一区二区视频| 青青草成人在线观看| 色诱视频网站一区| 欧美理论电影在线| 国产免费成人在线视频| 亚洲乱码国产乱码精品精98午夜|