diff --git a/search-index.json b/search-index.json index ae210b4..cd8c8cd 100644 --- a/search-index.json +++ b/search-index.json @@ -1 +1 @@ -[{"documents":[{"i":1,"t":"Parsing command-line arguments","u":"/fortran/arg-parsing","b":["Coding practice"]},{"i":3,"t":"Function: Get absolute path","u":"/fortran/abs-path","b":["Coding practice"]},{"i":5,"t":"Basics","u":"/fortran/basics","b":[]},{"i":27,"t":"Array and Matrix","u":"/fortran/array","b":[]},{"i":29,"t":"Coarray","u":"/fortran/coarray","b":[]},{"i":32,"t":"Basic Linear Algebra Subprograms","u":"/fortran/blas","b":["Coding practice"]},{"i":40,"t":"Complex number","u":"/fortran/complex","b":[]},{"i":42,"t":"Execute system/external command","u":"/fortran/exec-command","b":["Coding practice"]},{"i":44,"t":"Logical expression and control","u":"/fortran/control","b":[]},{"i":52,"t":"File Input / Output","u":"/fortran/file","b":[]},{"i":54,"t":"Inner product: dynamic array allocation","u":"/fortran/inner-product","b":["Coding practice"]},{"i":56,"t":"Haversine formula","u":"/fortran/haversine","b":["Coding practice"]},{"i":58,"t":"Calculate hypotenuse: example of subroutine","u":"/fortran/hypotenuse","b":["Coding practice"]},{"i":60,"t":"License","u":"/fortran/license","b":[]},{"i":62,"t":"Numerical integration: Trapezoidal method","u":"/fortran/integration","b":["Coding practice"]},{"i":66,"t":"Loop","u":"/fortran/loop","b":[]},{"i":71,"t":"Modules","u":"/fortran/modules","b":[]},{"i":75,"t":"Area under the curve by Monte Carlo method","u":"/fortran/monte-carlo-integration","b":["Coding practice"]},{"i":77,"t":"Determine value of pi by Monte Carlo method","u":"/fortran/monte-carlo-pi","b":["Coding practice"]},{"i":79,"t":"Message Passing Interface (MPI) Basics","u":"/fortran/mpi","b":["Coding practice"]},{"i":84,"t":"Procedures","u":"/fortran/procedures","b":[]},{"i":94,"t":"Recursion","u":"/fortran/recursion","b":[]},{"i":100,"t":"Resources","u":"/fortran/resources","b":[]},{"i":102,"t":"Pointer","u":"/fortran/pointer","b":[]},{"i":104,"t":"Swap two numbers","u":"/fortran/swap","b":["Coding practice"]},{"i":106,"t":"Time","u":"/fortran/time","b":["Coding practice"]},{"i":108,"t":"Custom types","u":"/fortran/types","b":[]},{"i":113,"t":"Setting up Fortran","u":"/fortran/","b":[]}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/1",[0,2.464,1,2.039,2,2.464,3,2.464]],["t/3",[4,2.823,5,2.823,6,2.823]],["t/5",[7,2.844]],["t/27",[8,2.734,9,3.304]],["t/29",[10,3.983]],["t/32",[7,1.759,11,2.464,12,2.464,13,2.464]],["t/40",[14,3.304,15,2.734]],["t/42",[1,2.336,16,2.823,17,2.823]],["t/44",[18,2.823,19,2.823,20,2.823]],["t/52",[21,2.464,22,2.464,23,2.464,24,2.464]],["t/54",[8,1.809,25,2.187,26,2.187,27,2.187,28,2.187]],["t/56",[29,3.304,30,3.304]],["t/58",[31,2.464,32,2.464,33,2.464,34,2.464]],["t/60",[35,3.983]],["t/62",[36,2.464,37,2.464,38,2.464,39,1.759]],["t/66",[40,3.983]],["t/71",[41,3.983]],["t/75",[39,1.403,42,1.965,43,1.965,44,1.965,45,1.626,46,1.626]],["t/77",[39,1.403,45,1.626,46,1.626,47,1.965,48,1.965,49,1.965]],["t/79",[7,1.561,50,2.187,51,2.187,52,2.187,53,2.187]],["t/84",[54,3.983]],["t/94",[55,3.983]],["t/100",[56,3.983]],["t/102",[57,3.983]],["t/104",[15,2.336,58,2.823,59,2.823]],["t/106",[60,3.983]],["t/108",[61,3.304,62,3.304]],["t/113",[63,2.823,64,2.823,65,2.823]]],"invertedIndex":[["",{"_index":23,"t":{"52":{"position":[[11,1]]}}}],["absolut",{"_index":5,"t":{"3":{"position":[[14,8]]}}}],["algebra",{"_index":12,"t":{"32":{"position":[[13,7]]}}}],["alloc",{"_index":28,"t":{"54":{"position":[[29,10]]}}}],["area",{"_index":42,"t":{"75":{"position":[[0,4]]}}}],["argument",{"_index":3,"t":{"1":{"position":[[21,9]]}}}],["array",{"_index":8,"t":{"27":{"position":[[0,5]]},"54":{"position":[[23,5]]}}}],["basic",{"_index":7,"t":{"5":{"position":[[0,6]]},"32":{"position":[[0,5]]},"79":{"position":[[32,6]]}}}],["calcul",{"_index":31,"t":{"58":{"position":[[0,9]]}}}],["carlo",{"_index":46,"t":{"75":{"position":[[30,5]]},"77":{"position":[[31,5]]}}}],["coarray",{"_index":10,"t":{"29":{"position":[[0,7]]}}}],["command",{"_index":1,"t":{"1":{"position":[[8,7]]},"42":{"position":[[24,7]]}}}],["complex",{"_index":14,"t":{"40":{"position":[[0,7]]}}}],["control",{"_index":20,"t":{"44":{"position":[[23,7]]}}}],["curv",{"_index":44,"t":{"75":{"position":[[15,5]]}}}],["custom",{"_index":61,"t":{"108":{"position":[[0,6]]}}}],["determin",{"_index":47,"t":{"77":{"position":[[0,9]]}}}],["dynam",{"_index":27,"t":{"54":{"position":[[15,7]]}}}],["exampl",{"_index":33,"t":{"58":{"position":[[22,7]]}}}],["execut",{"_index":16,"t":{"42":{"position":[[0,7]]}}}],["express",{"_index":19,"t":{"44":{"position":[[8,10]]}}}],["file",{"_index":21,"t":{"52":{"position":[[0,4]]}}}],["formula",{"_index":30,"t":{"56":{"position":[[10,7]]}}}],["fortran",{"_index":65,"t":{"113":{"position":[[11,7]]}}}],["function",{"_index":4,"t":{"3":{"position":[[0,9]]}}}],["haversin",{"_index":29,"t":{"56":{"position":[[0,9]]}}}],["hypotenus",{"_index":32,"t":{"58":{"position":[[10,11]]}}}],["inner",{"_index":25,"t":{"54":{"position":[[0,5]]}}}],["input",{"_index":22,"t":{"52":{"position":[[5,5]]}}}],["integr",{"_index":37,"t":{"62":{"position":[[10,12]]}}}],["interfac",{"_index":52,"t":{"79":{"position":[[16,9]]}}}],["licens",{"_index":35,"t":{"60":{"position":[[0,7]]}}}],["line",{"_index":2,"t":{"1":{"position":[[16,4]]}}}],["linear",{"_index":11,"t":{"32":{"position":[[6,6]]}}}],["logic",{"_index":18,"t":{"44":{"position":[[0,7]]}}}],["loop",{"_index":40,"t":{"66":{"position":[[0,4]]}}}],["matrix",{"_index":9,"t":{"27":{"position":[[10,6]]}}}],["messag",{"_index":50,"t":{"79":{"position":[[0,7]]}}}],["method",{"_index":39,"t":{"62":{"position":[[35,6]]},"75":{"position":[[36,6]]},"77":{"position":[[37,6]]}}}],["modul",{"_index":41,"t":{"71":{"position":[[0,7]]}}}],["mont",{"_index":45,"t":{"75":{"position":[[24,5]]},"77":{"position":[[25,5]]}}}],["mpi",{"_index":53,"t":{"79":{"position":[[26,5]]}}}],["number",{"_index":15,"t":{"40":{"position":[[8,6]]},"104":{"position":[[9,7]]}}}],["numer",{"_index":36,"t":{"62":{"position":[[0,9]]}}}],["output",{"_index":24,"t":{"52":{"position":[[13,6]]}}}],["pars",{"_index":0,"t":{"1":{"position":[[0,7]]}}}],["pass",{"_index":51,"t":{"79":{"position":[[8,7]]}}}],["path",{"_index":6,"t":{"3":{"position":[[23,4]]}}}],["pi",{"_index":49,"t":{"77":{"position":[[19,2]]}}}],["pointer",{"_index":57,"t":{"102":{"position":[[0,7]]}}}],["procedur",{"_index":54,"t":{"84":{"position":[[0,10]]}}}],["product",{"_index":26,"t":{"54":{"position":[[6,8]]}}}],["recurs",{"_index":55,"t":{"94":{"position":[[0,9]]}}}],["resourc",{"_index":56,"t":{"100":{"position":[[0,9]]}}}],["set",{"_index":63,"t":{"113":{"position":[[0,7]]}}}],["subprogram",{"_index":13,"t":{"32":{"position":[[21,11]]}}}],["subroutin",{"_index":34,"t":{"58":{"position":[[33,10]]}}}],["swap",{"_index":58,"t":{"104":{"position":[[0,4]]}}}],["system/extern",{"_index":17,"t":{"42":{"position":[[8,15]]}}}],["time",{"_index":60,"t":{"106":{"position":[[0,4]]}}}],["trapezoid",{"_index":38,"t":{"62":{"position":[[23,11]]}}}],["two",{"_index":59,"t":{"104":{"position":[[5,3]]}}}],["type",{"_index":62,"t":{"108":{"position":[[7,5]]}}}],["under",{"_index":43,"t":{"75":{"position":[[5,5]]}}}],["up",{"_index":64,"t":{"113":{"position":[[8,2]]}}}],["valu",{"_index":48,"t":{"77":{"position":[[10,5]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":7,"t":"Names","u":"/fortran/basics","h":"#names","p":5},{"i":9,"t":"Types","u":"/fortran/basics","h":"#types","p":5},{"i":11,"t":"Variables","u":"/fortran/basics","h":"#variables","p":5},{"i":13,"t":"Constants","u":"/fortran/basics","h":"#constants","p":5},{"i":15,"t":"KIND type parameter","u":"/fortran/basics","h":"#kind-type-parameter","p":5},{"i":17,"t":"Implicit typing","u":"/fortran/basics","h":"#implicit-typing","p":5},{"i":19,"t":"Intrinsic functions","u":"/fortran/basics","h":"#intrinsic-functions","p":5},{"i":21,"t":"Mathematical functions","u":"/fortran/basics","h":"#mathematical-functions","p":5},{"i":23,"t":"Reading multiple inputs","u":"/fortran/basics","h":"#reading-multiple-inputs","p":5},{"i":25,"t":"Formatting output","u":"/fortran/basics","h":"#formatting-output","p":5},{"i":30,"t":"Resouces","u":"/fortran/coarray","h":"#resouces","p":29},{"i":34,"t":"Scaler product (SDOT)","u":"/fortran/blas","h":"#scaler-product-sdot","p":32},{"i":36,"t":"Matrix multiplication (DGEMM)","u":"/fortran/blas","h":"#matrix-multiplication-dgemm","p":32},{"i":38,"t":"Resources","u":"/fortran/blas","h":"#resources","p":32},{"i":46,"t":"IF condition","u":"/fortran/control","h":"#if-condition","p":44},{"i":48,"t":"Multi-way IFs","u":"/fortran/control","h":"#multi-way-ifs","p":44},{"i":50,"t":"Select case","u":"/fortran/control","h":"#select-case","p":44},{"i":64,"t":"Numerical integration II","u":"/fortran/integration","h":"#numerical-integration-ii","p":62},{"i":67,"t":"DO Loop","u":"/fortran/loop","h":"#do-loop","p":66},{"i":69,"t":"DO WHILE","u":"/fortran/loop","h":"#do-while","p":66},{"i":73,"t":"USE keyword","u":"/fortran/modules","h":"#use-keyword","p":71},{"i":80,"t":"MPI Hello World","u":"/fortran/mpi","h":"#mpi-hello-world","p":79},{"i":82,"t":"Resources","u":"/fortran/mpi","h":"#resources","p":79},{"i":86,"t":"Subroutine","u":"/fortran/procedures","h":"#subroutine","p":84},{"i":88,"t":"Function","u":"/fortran/procedures","h":"#function","p":84},{"i":90,"t":"Pure procedures and side effects","u":"/fortran/procedures","h":"#pure-procedures-and-side-effects","p":84},{"i":92,"t":"Interface blocks","u":"/fortran/procedures","h":"#interface-blocks","p":84},{"i":96,"t":"Recursive subroutine","u":"/fortran/recursion","h":"#recursive-subroutine","p":94},{"i":98,"t":"Recursive function","u":"/fortran/recursion","h":"#recursive-function","p":94},{"i":109,"t":"Custom data types","u":"/fortran/types","h":"#custom-data-types","p":108},{"i":111,"t":"Polymorphism","u":"/fortran/types","h":"#polymorphism","p":108}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/7",[0,3.78]],["t/9",[1,2.423]],["t/11",[2,3.78]],["t/13",[3,3.78]],["t/15",[1,1.573,4,2.454,5,2.454]],["t/17",[1,1.908,6,2.976]],["t/19",[7,2.976,8,1.908]],["t/21",[8,1.908,9,2.976]],["t/23",[10,2.454,11,2.045,12,2.454]],["t/25",[13,2.976,14,2.976]],["t/30",[15,3.78]],["t/34",[16,2.454,17,2.454,18,2.454]],["t/36",[11,2.045,19,2.454,20,2.454]],["t/38",[21,3.149]],["t/46",[22,3.78]],["t/48",[23,2.454,24,2.454,25,2.454]],["t/50",[26,2.976,27,2.976]],["t/64",[28,2.454,29,2.454,30,2.454]],["t/67",[31,3.78]],["t/69",[]],["t/73",[32,2.976,33,2.976]],["t/80",[34,2.454,35,2.454,36,2.454]],["t/82",[21,3.149]],["t/86",[37,3.149]],["t/88",[8,2.423]],["t/90",[38,2.088,39,2.088,40,2.088,41,2.088]],["t/92",[42,2.976,43,2.976]],["t/96",[37,2.479,44,2.479]],["t/98",[8,1.908,44,2.479]],["t/109",[1,1.573,45,2.454,46,2.454]],["t/111",[47,3.78]]],"invertedIndex":[["block",{"_index":43,"t":{"92":{"position":[[10,6]]}}}],["case",{"_index":27,"t":{"50":{"position":[[7,4]]}}}],["condit",{"_index":22,"t":{"46":{"position":[[3,9]]}}}],["constant",{"_index":3,"t":{"13":{"position":[[0,9]]}}}],["custom",{"_index":45,"t":{"109":{"position":[[0,6]]}}}],["data",{"_index":46,"t":{"109":{"position":[[7,4]]}}}],["dgemm",{"_index":20,"t":{"36":{"position":[[22,7]]}}}],["effect",{"_index":41,"t":{"90":{"position":[[25,7]]}}}],["format",{"_index":13,"t":{"25":{"position":[[0,10]]}}}],["function",{"_index":8,"t":{"19":{"position":[[10,9]]},"21":{"position":[[13,9]]},"88":{"position":[[0,8]]},"98":{"position":[[10,8]]}}}],["hello",{"_index":35,"t":{"80":{"position":[[4,5]]}}}],["if",{"_index":25,"t":{"48":{"position":[[10,3]]}}}],["ii",{"_index":30,"t":{"64":{"position":[[22,2]]}}}],["implicit",{"_index":6,"t":{"17":{"position":[[0,8]]}}}],["input",{"_index":12,"t":{"23":{"position":[[17,6]]}}}],["integr",{"_index":29,"t":{"64":{"position":[[10,11]]}}}],["interfac",{"_index":42,"t":{"92":{"position":[[0,9]]}}}],["intrins",{"_index":7,"t":{"19":{"position":[[0,9]]}}}],["keyword",{"_index":33,"t":{"73":{"position":[[4,7]]}}}],["kind",{"_index":4,"t":{"15":{"position":[[0,4]]}}}],["loop",{"_index":31,"t":{"67":{"position":[[3,4]]}}}],["mathemat",{"_index":9,"t":{"21":{"position":[[0,12]]}}}],["matrix",{"_index":19,"t":{"36":{"position":[[0,6]]}}}],["mpi",{"_index":34,"t":{"80":{"position":[[0,3]]}}}],["multi",{"_index":23,"t":{"48":{"position":[[0,5]]}}}],["multipl",{"_index":11,"t":{"23":{"position":[[8,8]]},"36":{"position":[[7,14]]}}}],["name",{"_index":0,"t":{"7":{"position":[[0,5]]}}}],["numer",{"_index":28,"t":{"64":{"position":[[0,9]]}}}],["output",{"_index":14,"t":{"25":{"position":[[11,6]]}}}],["paramet",{"_index":5,"t":{"15":{"position":[[10,9]]}}}],["polymorph",{"_index":47,"t":{"111":{"position":[[0,12]]}}}],["procedur",{"_index":39,"t":{"90":{"position":[[5,10]]}}}],["product",{"_index":17,"t":{"34":{"position":[[7,7]]}}}],["pure",{"_index":38,"t":{"90":{"position":[[0,4]]}}}],["read",{"_index":10,"t":{"23":{"position":[[0,7]]}}}],["recurs",{"_index":44,"t":{"96":{"position":[[0,9]]},"98":{"position":[[0,9]]}}}],["resouc",{"_index":15,"t":{"30":{"position":[[0,8]]}}}],["resourc",{"_index":21,"t":{"38":{"position":[[0,9]]},"82":{"position":[[0,9]]}}}],["scaler",{"_index":16,"t":{"34":{"position":[[0,6]]}}}],["sdot",{"_index":18,"t":{"34":{"position":[[15,6]]}}}],["select",{"_index":26,"t":{"50":{"position":[[0,6]]}}}],["side",{"_index":40,"t":{"90":{"position":[[20,4]]}}}],["subroutin",{"_index":37,"t":{"86":{"position":[[0,10]]},"96":{"position":[[10,10]]}}}],["type",{"_index":1,"t":{"9":{"position":[[0,5]]},"15":{"position":[[5,4]]},"17":{"position":[[9,6]]},"109":{"position":[[12,5]]}}}],["us",{"_index":32,"t":{"73":{"position":[[0,3]]}}}],["variabl",{"_index":2,"t":{"11":{"position":[[0,9]]}}}],["way",{"_index":24,"t":{"48":{"position":[[6,3]]}}}],["world",{"_index":36,"t":{"80":{"position":[[10,5]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":1,"t":"We will use commandargumentcount and getcommandargument to parse command","s":"Parsing command-line arguments","u":"/fortran/arg-parsing","p":1},{"i":3,"t":"Here is a function to convert filenames to their absolute path:","s":"Function: Get absolute path","u":"/fortran/abs-path","p":3},{"i":5,"t":"We will learn by doing. Let us start by writing a simple program that asks for","s":"Basics","u":"/fortran/basics","p":5},{"i":27,"t":"There is intrinsic SIZE function to determine the length of a vector, SIZE(vec).","s":"Array and Matrix","u":"/fortran/array","p":27},{"i":29,"t":"Resouces","s":"Coarray","u":"/fortran/coarray","p":29},{"i":32,"t":"Install BLAS and [LAPACK](","s":"Basic Linear Algebra Subprograms","u":"/fortran/blas","p":32},{"i":40,"t":"Basic usage of complex number in FORTRAN program.","s":"Complex number","u":"/fortran/complex","p":40},{"i":42,"t":"We can call executecommandline to execute external commands in a FORTRAN","s":"Execute system/external command","u":"/fortran/exec-command","p":42},{"i":44,"t":"Operators | Meaning","s":"Logical expression and control","u":"/fortran/control","p":44},{"i":52,"t":"Here we will generate some data and write it to a file:","s":"File Input / Output","u":"/fortran/file","p":52},{"i":54,"t":"Example of dynamic array allocation:","s":"Inner product: dynamic array allocation","u":"/fortran/inner-product","p":54},{"i":56,"t":"Determine the distance between two places on earth given latitude and longitude.","s":"Haversine formula","u":"/fortran/haversine","p":56},{"i":58,"t":"Hypotenuse can be calculated using following formula:","s":"Calculate hypotenuse: example of subroutine","u":"/fortran/hypotenuse","p":58},{"i":60,"t":"CC-BY","s":"License","u":"/fortran/license","p":60},{"i":62,"t":"We will calculate the area under the curve $f(x)$ within the bounds $x=a$ and","s":"Numerical integration: Trapezoidal method","u":"/fortran/integration","p":62},{"i":66,"t":"DO Loop","s":"Loop","u":"/fortran/loop","p":66},{"i":71,"t":"Large programs can be organized in separate modules and procedures. Here is an","s":"Modules","u":"/fortran/modules","p":71},{"i":77,"t":"We will approximate value of $\\pi$ by Monte Carlo method. We will generate","s":"Determine value of pi by Monte Carlo method","u":"/fortran/monte-carlo-pi","p":77},{"i":79,"t":"MPI Hello World","s":"Message Passing Interface (MPI) Basics","u":"/fortran/mpi","p":79},{"i":84,"t":"There are two types of procedures in Fortran: subroutines and functions. All","s":"Procedures","u":"/fortran/procedures","p":84},{"i":94,"t":"Ordinary FORTRAN procedures (subroutine and function) are not recursive, i.e.,","s":"Recursion","u":"/fortran/recursion","p":94},{"i":100,"t":"- Fortran Programming Manual by Tanja van Mourik","s":"Resources","u":"/fortran/resources","p":100},{"i":102,"t":"Pointer in FORTRAN is an alias to a variable or procedure.","s":"Pointer","u":"/fortran/pointer","p":102},{"i":104,"t":"Subroutine to swap two integers:","s":"Swap two numbers","u":"/fortran/swap","p":104},{"i":106,"t":"Following example uses dateandtime and cup_time to find current date and","s":"Time","u":"/fortran/time","p":106},{"i":108,"t":"Custom data types","s":"Custom types","u":"/fortran/types","p":108},{"i":113,"t":"FORTRAN is optimized for high performance scientific computing. I will be","s":"Setting up Fortran","u":"/fortran/","p":113}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/1",[0,2.104,1,2.962,2,2.962,3,2.962,4,2.445]],["t/3",[5,1.948,6,1.712,7,2.741,8,2.741,9,2.741,10,2.741]],["t/5",[11,2.551,12,2.551,13,2.551,14,2.106,15,2.551,16,1.594,17,2.551]],["t/27",[6,1.594,18,2.551,19,2.551,20,2.106,21,2.551,22,2.551,23,2.551]],["t/29",[24,4.366]],["t/32",[25,3.529,26,3.529,27,3.529]],["t/40",[16,1.712,28,2.741,29,2.741,30,2.741,31,2.741,32,1.234]],["t/42",[4,2.263,32,1.234,33,2.741,34,2.741,35,2.741,36,2.741]],["t/44",[37,3.529,38,3.529,39,3.529]],["t/52",[5,2.104,14,2.445,40,2.445,41,2.445,42,2.962]],["t/54",[43,2.658,44,3.221,45,3.221,46,3.221]],["t/56",[20,1.85,47,2.241,48,2.241,49,1.592,50,2.241,51,2.241,52,2.241,53,2.241,54,2.241]],["t/58",[0,2.104,55,2.962,56,2.445,57,2.445,58,2.962]],["t/60",[59,4.366]],["t/62",[56,1.97,60,2.386,61,2.386,62,2.386,63,2.386,64,2.386,65,2.386,66,2.386]],["t/66",[67,4.366]],["t/71",[5,1.813,16,1.594,68,2.551,69,2.551,70,2.551,71,2.551,72,1.594]],["t/77",[40,2.106,73,2.551,74,2.551,75,2.551,76,2.551,77,2.551,78,2.551]],["t/79",[79,3.529,80,3.529,81,3.529]],["t/84",[6,1.712,32,1.234,49,1.948,72,1.712,82,2.263,83,1.948]],["t/94",[6,1.594,32,1.148,72,1.594,83,1.813,84,2.551,85,2.551,86,2.551]],["t/100",[16,1.712,32,1.234,87,2.741,88,2.741,89,2.741,90,2.741]],["t/102",[32,1.333,72,1.85,91,2.962,92,2.962,93,2.962]],["t/104",[49,2.288,83,2.288,94,3.221,95,3.221]],["t/106",[0,1.695,43,1.97,57,1.97,96,2.386,97,2.386,98,2.386,99,2.386,100,2.386]],["t/108",[41,2.913,82,2.913,101,3.529]],["t/113",[32,1.234,102,2.741,103,2.741,104,2.741,105,2.741,106,2.741]]],"invertedIndex":[["",{"_index":38,"t":{"44":{"position":[[10,1]]}}}],["absolut",{"_index":9,"t":{"3":{"position":[[49,8]]}}}],["alia",{"_index":92,"t":{"102":{"position":[[25,5]]}}}],["alloc",{"_index":46,"t":{"54":{"position":[[25,11]]}}}],["approxim",{"_index":73,"t":{"77":{"position":[[8,11]]}}}],["area",{"_index":60,"t":{"62":{"position":[[22,4]]}}}],["array",{"_index":45,"t":{"54":{"position":[[19,5]]}}}],["ask",{"_index":17,"t":{"5":{"position":[[70,4]]}}}],["basic",{"_index":28,"t":{"40":{"position":[[0,5]]}}}],["between",{"_index":48,"t":{"56":{"position":[[23,7]]}}}],["bla",{"_index":26,"t":{"32":{"position":[[8,4]]}}}],["bound",{"_index":65,"t":{"62":{"position":[[61,6]]}}}],["calcul",{"_index":56,"t":{"58":{"position":[[18,10]]},"62":{"position":[[8,9]]}}}],["call",{"_index":33,"t":{"42":{"position":[[7,4]]}}}],["carlo",{"_index":77,"t":{"77":{"position":[[44,5]]}}}],["cc",{"_index":59,"t":{"60":{"position":[[0,2]]}}}],["command",{"_index":4,"t":{"1":{"position":[[65,7]]},"42":{"position":[[51,8]]}}}],["commandargumentcount",{"_index":1,"t":{"1":{"position":[[12,20]]}}}],["complex",{"_index":30,"t":{"40":{"position":[[15,7]]}}}],["comput",{"_index":106,"t":{"113":{"position":[[53,10]]}}}],["convert",{"_index":7,"t":{"3":{"position":[[22,7]]}}}],["cup_tim",{"_index":97,"t":{"106":{"position":[[39,8]]}}}],["current",{"_index":99,"t":{"106":{"position":[[56,7]]}}}],["curv",{"_index":62,"t":{"62":{"position":[[37,5]]}}}],["custom",{"_index":101,"t":{"108":{"position":[[0,6]]}}}],["data",{"_index":41,"t":{"52":{"position":[[27,4]]},"108":{"position":[[7,4]]}}}],["date",{"_index":100,"t":{"106":{"position":[[64,4]]}}}],["dateandtim",{"_index":96,"t":{"106":{"position":[[23,11]]}}}],["determin",{"_index":20,"t":{"27":{"position":[[36,9]]},"56":{"position":[[0,9]]}}}],["distanc",{"_index":47,"t":{"56":{"position":[[14,8]]}}}],["do",{"_index":12,"t":{"5":{"position":[[17,6]]}}}],["dynam",{"_index":44,"t":{"54":{"position":[[11,7]]}}}],["earth",{"_index":51,"t":{"56":{"position":[[45,5]]}}}],["exampl",{"_index":43,"t":{"54":{"position":[[0,7]]},"106":{"position":[[10,7]]}}}],["execut",{"_index":35,"t":{"42":{"position":[[34,7]]}}}],["executecommandlin",{"_index":34,"t":{"42":{"position":[[12,18]]}}}],["extern",{"_index":36,"t":{"42":{"position":[[42,8]]}}}],["f(x",{"_index":63,"t":{"62":{"position":[[43,6]]}}}],["file",{"_index":42,"t":{"52":{"position":[[50,5]]}}}],["filenam",{"_index":8,"t":{"3":{"position":[[30,9]]}}}],["find",{"_index":98,"t":{"106":{"position":[[51,4]]}}}],["follow",{"_index":57,"t":{"58":{"position":[[35,9]]},"106":{"position":[[0,9]]}}}],["formula",{"_index":58,"t":{"58":{"position":[[45,8]]}}}],["fortran",{"_index":32,"t":{"40":{"position":[[33,7]]},"42":{"position":[[65,7]]},"84":{"position":[[37,8]]},"94":{"position":[[9,7]]},"100":{"position":[[3,7]]},"102":{"position":[[11,7]]},"113":{"position":[[0,7]]}}}],["function",{"_index":6,"t":{"3":{"position":[[10,8]]},"27":{"position":[[24,8]]},"84":{"position":[[62,10]]},"94":{"position":[[44,9]]}}}],["gener",{"_index":40,"t":{"52":{"position":[[13,8]]},"77":{"position":[[66,8]]}}}],["getcommandargu",{"_index":2,"t":{"1":{"position":[[37,18]]}}}],["given",{"_index":52,"t":{"56":{"position":[[51,5]]}}}],["hello",{"_index":80,"t":{"79":{"position":[[4,5]]}}}],["here",{"_index":5,"t":{"3":{"position":[[0,4]]},"52":{"position":[[0,4]]},"71":{"position":[[68,4]]}}}],["high",{"_index":103,"t":{"113":{"position":[[25,4]]}}}],["hypotenus",{"_index":55,"t":{"58":{"position":[[0,10]]}}}],["i.",{"_index":86,"t":{"94":{"position":[[73,5]]}}}],["instal",{"_index":25,"t":{"32":{"position":[[0,7]]}}}],["integ",{"_index":95,"t":{"104":{"position":[[23,9]]}}}],["intrins",{"_index":18,"t":{"27":{"position":[[9,9]]}}}],["lapack",{"_index":27,"t":{"32":{"position":[[17,9]]}}}],["larg",{"_index":68,"t":{"71":{"position":[[0,5]]}}}],["latitud",{"_index":53,"t":{"56":{"position":[[57,8]]}}}],["learn",{"_index":11,"t":{"5":{"position":[[8,5]]}}}],["length",{"_index":21,"t":{"27":{"position":[[50,6]]}}}],["longitud",{"_index":54,"t":{"56":{"position":[[70,10]]}}}],["loop",{"_index":67,"t":{"66":{"position":[[3,4]]}}}],["manual",{"_index":87,"t":{"100":{"position":[[23,6]]}}}],["mean",{"_index":39,"t":{"44":{"position":[[12,7]]}}}],["method",{"_index":78,"t":{"77":{"position":[[50,7]]}}}],["modul",{"_index":71,"t":{"71":{"position":[[44,7]]}}}],["mont",{"_index":76,"t":{"77":{"position":[[38,5]]}}}],["mourik",{"_index":90,"t":{"100":{"position":[[43,6]]}}}],["mpi",{"_index":79,"t":{"79":{"position":[[0,3]]}}}],["number",{"_index":31,"t":{"40":{"position":[[23,6]]}}}],["oper",{"_index":37,"t":{"44":{"position":[[0,9]]}}}],["optim",{"_index":102,"t":{"113":{"position":[[11,9]]}}}],["ordinari",{"_index":84,"t":{"94":{"position":[[0,8]]}}}],["organ",{"_index":69,"t":{"71":{"position":[[22,9]]}}}],["pars",{"_index":3,"t":{"1":{"position":[[59,5]]}}}],["path",{"_index":10,"t":{"3":{"position":[[58,5]]}}}],["perform",{"_index":104,"t":{"113":{"position":[[30,11]]}}}],["pi",{"_index":75,"t":{"77":{"position":[[29,5]]}}}],["place",{"_index":50,"t":{"56":{"position":[[35,6]]}}}],["pointer",{"_index":91,"t":{"102":{"position":[[0,7]]}}}],["procedur",{"_index":72,"t":{"71":{"position":[[56,11]]},"84":{"position":[[23,10]]},"94":{"position":[[17,10]]},"102":{"position":[[48,10]]}}}],["program",{"_index":16,"t":{"5":{"position":[[57,7]]},"40":{"position":[[41,8]]},"71":{"position":[[6,8]]},"100":{"position":[[11,11]]}}}],["recurs",{"_index":85,"t":{"94":{"position":[[62,10]]}}}],["resouc",{"_index":24,"t":{"29":{"position":[[0,8]]}}}],["scientif",{"_index":105,"t":{"113":{"position":[[42,10]]}}}],["separ",{"_index":70,"t":{"71":{"position":[[35,8]]}}}],["simpl",{"_index":15,"t":{"5":{"position":[[50,6]]}}}],["size",{"_index":19,"t":{"27":{"position":[[19,4]]}}}],["size(vec",{"_index":23,"t":{"27":{"position":[[70,10]]}}}],["start",{"_index":13,"t":{"5":{"position":[[31,5]]}}}],["subroutin",{"_index":83,"t":{"84":{"position":[[46,11]]},"94":{"position":[[28,11]]},"104":{"position":[[0,10]]}}}],["swap",{"_index":94,"t":{"104":{"position":[[14,4]]}}}],["tanja",{"_index":88,"t":{"100":{"position":[[33,5]]}}}],["two",{"_index":49,"t":{"56":{"position":[[31,3]]},"84":{"position":[[10,3]]},"104":{"position":[[19,3]]}}}],["type",{"_index":82,"t":{"84":{"position":[[14,5]]},"108":{"position":[[12,5]]}}}],["under",{"_index":61,"t":{"62":{"position":[[27,5]]}}}],["us",{"_index":0,"t":{"1":{"position":[[8,3]]},"58":{"position":[[29,5]]},"106":{"position":[[18,4]]}}}],["usag",{"_index":29,"t":{"40":{"position":[[6,5]]}}}],["valu",{"_index":74,"t":{"77":{"position":[[20,5]]}}}],["van",{"_index":89,"t":{"100":{"position":[[39,3]]}}}],["variabl",{"_index":93,"t":{"102":{"position":[[36,8]]}}}],["vector",{"_index":22,"t":{"27":{"position":[[62,7]]}}}],["within",{"_index":64,"t":{"62":{"position":[[50,6]]}}}],["world",{"_index":81,"t":{"79":{"position":[[10,5]]}}}],["write",{"_index":14,"t":{"5":{"position":[[40,7]]},"52":{"position":[[36,5]]}}}],["x=a",{"_index":66,"t":{"62":{"position":[[68,5]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":113,"t":"fortran programming,scientific programming,numerical programming,numerical integration","s":"Setting up Fortran","u":"/fortran/","p":113}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/113",[0,0.288,1,0.288,2,0.396,3,0.288]]],"invertedIndex":[["fortran",{"_index":0,"t":{"113":{"position":[[0,7]]}}}],["integr",{"_index":3,"t":{"113":{"position":[[75,11]]}}}],["programming,numer",{"_index":2,"t":{"113":{"position":[[31,21],[53,21]]}}}],["programming,scientif",{"_index":1,"t":{"113":{"position":[[8,22]]}}}]],"pipeline":["stemmer"]}},{"documents":[{"i":2,"t":"We will use command_argument_count and get_command_argument to parse command line arguments: src/26_arg_parsing.f90 PROGRAM MAIN IMPLICIT NONE INTEGER no_of_commands, i CHARACTER(LEN=32) :: arg REAL :: sum = 0.0, tmp no_of_commands = command_argument_count() PRINT *, \"Number of arguments = \", no_of_commands IF (no_of_commands < 2) THEN PRINT \"(a,/,a)\", \"This program needs at least 2 arguments.\", & \"Usage: program 4 3\" STOP END IF DO i = 1, no_of_commands CALL get_command_argument(i, arg) ! if single argument is expected, use get_command(arg) ! IF (LEN_TRIM(arg) == 0) EXIT ! not required here arg = TRIM(arg) READ(arg,*) tmp ! read strings as real sum = sum + tmp END DO PRINT *, \"Total = \", sum END","s":"Parsing command-line arguments","u":"/fortran/arg-parsing","h":"","p":1},{"i":4,"t":"Here is a function to convert filenames to their absolute path: src/15_get_abs_path.f90 PROGRAM print_abs_path IMPLICIT NONE CHARACTER(LEN=128) :: input_path, abs_path, get_abs_path PRINT \"(a,$)\", 'Enter file name: ' READ (*,\"(a128)\") input_path abs_path = get_abs_path(input_path) PRINT *, 'Absolute PATH: ', abs_path END PROGRAM print_abs_path CHARACTER(LEN=128) FUNCTION get_abs_path(input_path) IMPLICIT NONE CHARACTER(LEN=128), INTENT(IN) :: input_path CHARACTER(LEN=128) :: PREFIX IF (input_path(1:1) == '/' ) THEN get_abs_path = input_path ELSE IF (input_path(1:2) == '~/' ) THEN CALL GETENV('HOME', PREFIX) get_abs_path = PREFIX(:LNBLNK(PREFIX)) // input_path(2:LNBLNK(input_path)) ELSE CALL GETCWD(PREFIX) get_abs_path = PREFIX(:LNBLNK(PREFIX)) // '/' // input_path(:LNBLNK(input_path)) ENDIF RETURN END FUNCTION get_abs_path","s":"Function: Get absolute path","u":"/fortran/abs-path","h":"","p":3},{"i":6,"t":"We will learn by doing. Let us start by writing a simple program that asks for some user input, performs some arithmetic operations, and returns a result. src/01_add.f90 ! Program : Add two integer numbers PROGRAM add IMPLICIT NONE INTEGER :: a, b, output PRINT *, \"Input a =\" READ *, a PRINT *, \"Input b =\" READ *, b output = a + b PRINT*, \"Output: \", a, \"+\", b, \"=\", output END PROGRAM add info Variable names and keywords in FORTRAN are not case sensitive. You can write keywords in both lowercase or uppercase. For example, implicit and IMPLICIT are the same. Older, f77 specification only allowed uppercase letters. PROGRAM name and file name are not related. We store the above code in a file named: 01_add.f90. We compile and execute the code as follows: gfortran 01_add.f90 ./a.out Now let's write another simple program that converts centimeter to inches: src/02_cm2inch.f90 ! Program : Converting centimeter to inches PROGRAM cm2inch IMPLICIT NONE REAL :: cm, inch PRINT \"(a,$)\", \"Enter length in centimeter = \" READ *, cm inch = cm / 2.54 PRINT *, \"Length in inches = \", inch END PROGRAM cm2inch Calculate the circumference of a circle given the diameter: src/03_circ.f90 ! Program : Calculate the circumference of a circle given the radius. PROGRAM circ IMPLICIT NONE REAL :: r, circum REAL, PARAMETER :: pi = 3.14159 WRITE(*, \"(a)\", advance='NO') \"Enter radius of the circle: \" READ *, r circum = 2 * pi * r PRINT *, \"Circumference of the circle = \", circum END PROGRAM circ Formatting output: src/04_format.f90 ! Program : Formatting output in Fortran PROGRAM format IMPLICIT NONE INTEGER :: no_of_students = 25 REAL :: result1, result2 result1 = SIN(1.23) result2 = 1.234728 * EXP(12.0) PRINT '(i4)', no_of_students ! Interger with 4 spaces for it PRINT '(f6.4)', result1 ! Real number with 6 spaces of ! which 4 for the decimal part PRINT '(e8.2)', result2 ! exponential with 2 spaces for ! decimal part END PROGRAM format Example outputs: WRITE(*, \"(I4)\") 1234 1234 WRITE(*, \"(I8)\") 1234 1234 WRITE(*, \"(I8.6)\") 1234 001234 WRITE(*, \"(F8.4)\") pi 3.1416 WRITE(*, \"(E12.4)\") pi 0.3142E+01 note A comment starts with !. The continuation of a single statement to the next line is done by & at the end of previous line. If you need to break a very long character string, use the concatenation operator //. PRINT *, \"My name is \" // & \"Pranab.\" A single statement can be at max 256 lines long. Also, you can separate multiple statements in a line with semicolon (;).","s":"Basics","u":"/fortran/basics","h":"","p":5},{"i":8,"t":"The names must not be longer than 63 characters, must be composed of alphanumeric characters and underscores, first character must be a letter. Names are case insensitive.","s":"Names","u":"/fortran/basics","h":"#names","p":5},{"i":10,"t":"Integer (example: -2, 0, 10) Real (example: 3.14, 1.2E2, 2.3D-2. D indicates double precision.) Complex (example: 2.0 - 1.5i) Logical (.true., .false.) Character: The length of a string can be specified by len.","s":"Types","u":"/fortran/basics","h":"#types","p":5},{"i":12,"t":"integer :: no_of_students real :: radius, circumference complex :: cx logical :: done character(len=20) :: name","s":"Variables","u":"/fortran/basics","h":"#variables","p":5},{"i":14,"t":"real, parameter :: pi = 3.14159","s":"Constants","u":"/fortran/basics","h":"#constants","p":5},{"i":16,"t":"The KIND type parameters supported by GNU Fortran for the primitive data types are: INTEGER: 1, 2, 4, 8†, 16† (default 4‡) LOGICAL: 1, 2, 4, 8†, 16† (default 4‡) REAL: 4, 8, 10†, 16† (default 4§) COMPLEX: 4, 8, 10†, 16† (default 4§) DOUBLE PRECISION: 4, 8, 10†, 16† (default 8§) CHARACTER: 1, 4 (default 1) † not available on all systems ‡ unless -fdefault-integer-8 is used § unless -fdefault-real-8 is used The KIND value matches the storage size in bytes, except for COMPLEX where the storage size is twice as much (or both real and imaginary part are a real value of the given size). It is recommended to use the SELECTED_CHAR_KIND, SELECTED_INT_KIND and SELECTED_REAL_KIND intrinsics or the INT8, INT16, INT32, INT64, REAL32, REAL64, and REAL128 parameters. Examples of setting double precision: REAL(KIND=KIND(0.0D0)), PARAMETER :: pi = 4 * ATAN(1.0D0) ! or specify decimal precision and exponent range REAL(KIND=SELECTED_REAL_KIND(12, 200)), PARAMETER :: pi = 4 * ATAN(1.0D0) PRINT *, PRECISION(pi), RANGE(pi) ! type conversion REAL(KIND=KIND(0.0D0)) :: x INTEGER :: y y = 1 x = REAL(y, KIND=KIND(0.0D0)) ! integer with range -10^(12) to 10^(12) INTEGER(KIND=SELECTED_INT_KIND(12)) :: large_int","s":"KIND type parameter","u":"/fortran/basics","h":"#kind-type-parameter","p":5},{"i":18,"t":"In Fortran variables need not to be declared beforehand, but this practice should be avoided by IMPLICIT NONE at the top of program. If a variable is not declared, the first letter of its name determines its type. If the name starts with i, j, k, l, m, n, it is considered integer, otherwise real.","s":"Implicit typing","u":"/fortran/basics","h":"#implicit-typing","p":5},{"i":20,"t":"Functions Description abs(x) absolute value of a numerical argument complx(x, y) converts to complex floor(x) greatest integer ≤ x floor(3.2)=3, floor(-4.9)=-5 int(x) converts to integer. int(-4.9)=-4, int(0.2)=0, int(3.3)=3 nint(x [, ikind]) rounds to nearest integer. Optional ikind for precision real(x [, ikind]) converts to real mod(a, p) a - int(a/p)*p modulo(a,p) a - floor(a/p)*p","s":"Intrinsic functions","u":"/fortran/basics","h":"#intrinsic-functions","p":5},{"i":22,"t":"Functions Description sin sine function asin inverse sine sinh sine hyperbolic cos cosine function acos inverse cosine cosh cos hyperbolic tan tangent function atan inverse tan atan2 inverse tangent for complex numbers tanh tan hyperbolic sqrt square root exp exponential log natural logarithm log10 common logarithm","s":"Mathematical functions","u":"/fortran/basics","h":"#mathematical-functions","p":5},{"i":24,"t":"INTEGER :: M, N PRINT '(A,$)', \"Enter matrix dimensions: \" ! inputs must be separated by at least one blank character or comma READ *, M, N","s":"Reading multiple inputs","u":"/fortran/basics","h":"#reading-multiple-inputs","p":5},{"i":26,"t":"PRINT \"(f5.1, es9.1, a, i4)\", 3.5, 1.4e4, \" and \", 12 PRINT \"(2(i4))\", 12, 8 ! same as \"(i4, i4)\" or \"(2i4)\" ! line breaks PRINT \"(a, /, a)\", \"first line\", \"second line\" ! two line breaks: 2/ ! tab editor, second number will be printed in the position 10-13 PRINT \"(i4, t10, i4)\", 3, 5","s":"Formatting output","u":"/fortran/basics","h":"#formatting-output","p":5},{"i":28,"t":"src/05_array.f90 ! Program : Array PROGRAM array IMPLICIT NONE INTEGER :: vec(10) INTEGER :: ii OUTER_LOOP : DO ii = 1, 10 vec(ii) = ii ENDDO OUTER_LOOP DO ii = 1, 10 PRINT '(i2)', vec(ii) ENDDO END PROGRAM array There is intrinsic SIZE function to determine the length of a vector, SIZE(vec). Another example where we use implied DO loop to assign an array: src/05_array2.f90 PROGRAM array2 IMPLICIT NONE INTEGER, DIMENSION(10) :: vec INTEGER :: ii vec = [(ii, ii = 1, 10)] DO ii = 1, SIZE(vec) PRINT '(i2)', vec(ii) ENDDO END PROGRAM array2 Dynamic array allocation with ALLOCATABLE: INTEGER, DIMENSION(:), ALLOCATABLE :: a INTEGER i a = [(i, i = 1, 10)] DEALLOCATE(a) See dynamic array allocation in this example. Assign high dimensional array with RESHAPE: a = RESHAPE([1, 2, 3, 4, 5, 6], [2, 3]) ! will produce ! 1 3 5 ! 2 4 6 a = RESHAPE([1, 2, 3, 4, 5, 6], [2, 3], order=[2, 1]) ! will produce ! 1 2 3 ! 4 5 6 Matrix multiplication: src/05_matrix_mult.f90 ! Program : Matrix multiplication PROGRAM matrix_mult IMPLICIT NONE INTEGER, DIMENSION(2, 3) :: A = RESHAPE([1, 2, 3, & 4, 5, 6], & shape(A), & order=[2, 1]) INTEGER, DIMENSION(3, 2) :: B = RESHAPE([1, 2, & 3, 4, & 5, 6], & shape(B), & order=[2, 1]) INTEGER, DIMENSION(2, 2) :: output INTEGER :: ii output = MATMUL(A, B) DO ii = 1, 2 PRINT *, output(ii, :) END DO END PROGRAM matrix_mult You can assign all the array element same value by assigning it a scaler value: INTEGER, DIMENSION(2, 2) :: a a = 1 ! will produce ! 1 1 ! 1 1","s":"Array and Matrix","u":"/fortran/array","h":"","p":27},{"i":31,"t":"https://annefou.github.io/Fortran/coarrays/coarrays.html","s":"Resouces","u":"/fortran/coarray","h":"#resouces","p":29},{"i":33,"t":"Install BLAS and LAPACK libraries: apt install blaslib-dev lapacklib-dev # compile program gfortran filename.f90 -lblas # in case libs are not in system path gfortran filename.f90 -L/usr/lib -lblas","s":"Basic Linear Algebra Subprograms","u":"/fortran/blas","h":"","p":32},{"i":35,"t":"src/22_blas_sdot.f90 ! SDOT: This function performs a vector-vector operation of computing a scalar ! product of two single-precision real vectors x and y. ! https://netlib.org/blas/#_level_1 ! Compile: gfortran filename.f90 -lblas ! If BLAS is not in system path: gfortran filename.f90 -L/usr/lib -lblas PROGRAM MAIN IMPLICIT NONE INTEGER :: n = 3 ! length of vectors REAL, DIMENSION(:), ALLOCATABLE :: x REAL, DIMENSION(:), ALLOCATABLE :: y INTEGER :: incx = 1, incy = 1 ! incx and incy can be used to manipulate data when both x and y are stored ! in the same array. See the alternate array z REAL z(6) INTEGER :: incxz= 2, incyz = 1 REAL res, SDOT EXTERNAL SDOT ALLOCATE(x(n)) ALLOCATE(y(n)) x(1) = 2.0 x(2) = 1.0 x(3) = 0.0 y(1) = 1.0 y(2) = 3.0 y(3) = 5.0 z(1) = x(1) z(2) = y(1) z(3) = x(2) z(4) = y(2) z(5) = x(3) z(6) = y(3) res = SDOT(n, x, incx, y, incy) PRINT *, \"Result = \", res PRINT *, \"Alt. result = \", SDOT(n, z, incxz, z, incyz) DEALLOCATE(x) DEALLOCATE(y) END","s":"Scaler product (SDOT)","u":"/fortran/blas","h":"#scaler-product-sdot","p":32},{"i":37,"t":"DGEMM calculates the product of double precision matrices: C⇐αA∗B+βCC \\Leftarrow \\alpha A \\ast B + \\beta CC⇐αA∗B+βC src/22_blas_dgemm.f90 PROGRAM MAIN IMPLICIT NONE DOUBLE PRECISION ALPHA, BETA INTEGER M, K, N, I, J PARAMETER (M=2, K=3, N=2) DOUBLE PRECISION A(M,K), B(K,N), C(M,N) ALPHA = 1.0 BETA = 0.0 ! initialize matrices A(1,1) = 2.0 A(1,2) = 3.0 A(1,3) = 9.0 A(2,1) = 0.0 A(2,2) = 4.0 A(2,3) = 1.0 B(1,1) = 4.0 B(1,2) = 1.0 B(2,1) = 4.0 B(2,2) = 5.0 B(3,1) = 9.0 B(3,2) = 6.0 ! optionally initialize C matrix with zeros DO I = 1, M DO J = 1, N C(I,J) = 0.0 END DO END DO CALL DGEMM('N','N', M, N, K, ALPHA, A, M, B, K, BETA, C, M) ! print matrix C DO I = 1, M DO J = 1, N PRINT *, \"C(\", I, \",\", J, \") =\", C(I,J) END DO END DO END","s":"Matrix multiplication (DGEMM)","u":"/fortran/blas","h":"#matrix-multiplication-dgemm","p":32},{"i":39,"t":"Multiplying matrices: Intel MKL example","s":"Resources","u":"/fortran/blas","h":"#resources","p":32},{"i":41,"t":"Basic usage of complex number in FORTRAN program. src/17_complex_number.f90 PROGRAM complex_number IMPLICIT NONE COMPLEX :: z = (2.0, 3.0) COMPLEX :: z1, z2 WRITE (*,*) \"z = \", z WRITE (*,*) \"abs = \", CABS(z) z1 = (1.0, 5.0) WRITE (*,*) \"z1 = \", z1 z2 = CMPLX(1.0, 3.14159) ! double precision: z2 = DCMPLX(1.0, 3.14159) ! arithmetic operations WRITE (*,*) \"z1 + z2 = \", z1 + z2 WRITE (*,*) \"z1 * z2 = \", z1 * z2 ! real and imaginary parts (if real part is integer, use int(z2) instead) WRITE (*,*) \"Real part = \", real(z2) WRITE (*,*) \"Imaginary part = \", imag(z2) ! complex conjugate WRITE (*,*) \"Complex conjugate: \", conjg(z2) END PROGRAM complex_number","s":"Complex number","u":"/fortran/complex","h":"","p":40},{"i":43,"t":"We can call execute_command_line to execute external commands in a FORTRAN program: src/27_exec_command.f90 PROGRAM MAIN IMPLICIT NONE INTEGER exit_code ! Execute system command PRINT *, \"Executing: ls\" CALL execute_command_line(\"ls\") PRINT *, \"Executing: du -hs .\" CALL execute_command_line(\"du -hs .\", exitstat=exit_code) PRINT *, \"Exit code: \", exit_code END","s":"Execute system/external command","u":"/fortran/exec-command","h":"","p":42},{"i":45,"t":"Operators Meaning .lt. less than .gt. greater than .le. less than or equal to .ge. greater than or equal to .eq. equals .ne. not equal to .and. and .or. or .not. not .xor. \"exclusive\" or .eqv. equivalent .neqv. not equivalent F90 introduced following simplified notation for the relational operators: Operators Meaning < less than > greater than <= less than or equal to >= greater than or equal to == equal to /= not equal to","s":"Logical expression and control","u":"/fortran/control","h":"","p":44},{"i":47,"t":"Calculate square root of real positive numbers: src/06_sq_root.f90 ! Program : Calculate square root PROGRAM sq_root IMPLICIT NONE REAL :: input, output PRINT *, \"Input = \" READ *, input IF (input > 0) THEN output = SQRT(input) PRINT *, \"Square root of \", input, \"= \", output ELSE PRINT *, \"Input must be positive real.\" ENDIF END PROGRAM sq_root","s":"IF condition","u":"/fortran/control","h":"#if-condition","p":44},{"i":49,"t":"src/06_multi_way_if.f90 PROGRAM age_group IMPLICIT NONE INTEGER :: age PRINT \"(a,$)\", \"Enter your age: \" READ *, age IF (age <= 0) THEN PRINT *, \"Error: please enter a positive integer age.\" STOP ELSE IF (age < 18) THEN PRINT *, \"You are not adult.\" ELSE IF (age >= 18 .AND. age < 65) THEN PRINT *, \"You are adult.\" ELSE PRINT *, \"You are senior.\" END IF END PROGRAM age_group Notice also the STOP keyword in above example.","s":"Multi-way IFs","u":"/fortran/control","h":"#multi-way-ifs","p":44},{"i":51,"t":"src/06_select_case.f90 PROGRAM age_select IMPLICIT NONE INTEGER :: age PRINT \"(a,$)\", \"Enter your age: \" READ *, age SELECT CASE (age) CASE DEFAULT PRINT *, \"You are not adult.\" CASE(18:64) PRINT *, \"You are adult.\" CASE(65:) PRINT *, \"You are senior.\" END SELECT END PROGRAM age_select","s":"Select case","u":"/fortran/control","h":"#select-case","p":44},{"i":53,"t":"Here we will generate some data and write it to a file: src/08_file_write.f90 ! Program : Write output to a file PROGRAM file_write IMPLICIT NONE INTEGER :: ii OPEN(unit=1, file='output.dat', status='new') DO ii = 1, 10 WRITE(1, '(i4)') ii*ii ENDDO CLOSE(unit=1) END PROGRAM file_write info Note that unit=0, 5, and 6 are reserved. Do not use them to identify files in your programs. Reading from file: we will read the data from file that is generated in the above example. src/09_file_read.f90 ! Program : Read data from file PROGRAM file_read IMPLICIT NONE INTEGER :: ii, data(10) OPEN(unit=1, file='output.dat', status='old') DO ii = 1, 10 READ(1, '(i4)') data(ii) END DO CLOSE(unit=1) DO ii = 1, 10 PRINT '(i3)', data(ii) END DO END PROGRAM file_read","s":"File Input / Output","u":"/fortran/file","h":"","p":52},{"i":55,"t":"Example of dynamic array allocation: src/19_inner_product.f90 PROGRAM inner_product IMPLICIT NONE INTEGER length REAL, DIMENSION(:), ALLOCATABLE :: a REAL, DIMENSION(:), ALLOCATABLE :: b INTEGER i REAL :: sum = 0.0 PRINT \"(a,$)\", \"Enter length of vectors: \" READ *, length IF ( length < 1 ) then PRINT *, \"Stopping: length must be positive definite.\" STOP END IF ALLOCATE(a(length)) ALLOCATE(b(length)) PRINT *, \"Enter first array components:\" DO i = 1, length PRINT '(A,I4,A,$)', 'a[', i,'] = ' READ *, a(i) END DO PRINT *, \"Enter second array components:\" DO i = 1, length PRINT '(A,I4,A,$)', 'a[', i,'] = ' READ *, b(i) END DO DO i = 1, length sum = sum + a(i) * b(i) END DO PRINT '(A,F8.4)', 'Inner product = ', sum ! we can use in-built dot_product as well PRINT '(A,F8.4)', \"Result using in-built dot_product = \", dot_product(a, b) DEALLOCATE(a) DEALLOCATE(b) END PROGRAM inner_product","s":"Inner product: dynamic array allocation","u":"/fortran/inner-product","h":"","p":54},{"i":57,"t":"Determine the distance between two places on earth given latitude and longitude. Read more about haversine formula in wikipedia page. src/18_haversine_formula.f90 ! calculate the distance between two points on earch/sphere given latitude ! and longitude ! haversine is defined as: hav(theta) = sin^2(theta/2) = (1 - cos(theta))/2 ! test: BNA(36.12,-86.67), LAX(33.94,-118.40), Distance 2889.6612 km PROGRAM haversine_formula IMPLICIT NONE INTEGER, PARAMETER :: DP = KIND(1.0D0) REAL(DP), PARAMETER :: RADIUS_OF_EARTH = 6.3781D6 REAL(DP) :: lat1 = 0.0_DP REAL(DP) :: lon1 = 0.0_DP REAL(DP) :: lat2 = 0.0_DP REAL(DP) :: lon2 = 0.0_DP REAL(DP) :: a, dist PRINT \"(a,$)\", \"Latitude of point A = \" READ *, lat1 PRINT \"(a,$)\", \"Longitude of point A = \" READ *, lon1 PRINT \"(a,$)\", \"Latitude of point B = \" READ *, lat2 PRINT \"(a,$)\", \"Longitude of point B = \" READ *, lon2 lat1 = deg2rad(lat1) lon1 = deg2rad(lon1) lat2 = deg2rad(lat2) lon2 = deg2rad(lon2) a = (SIN((lat1 - lat2)/2))**2 + COS(lat1) * COS(lat2) * & (SIN((lon1 - lon2)/2))**2 dist = 2 * RADIUS_OF_EARTH * ASIN(SQRT(a)) PRINT '(A,F12.4,A)', 'Distance: ', dist / 1000,' km' CONTAINS FUNCTION deg2rad(degree) RESULT(rad) ! degrees to radians REAL(KIND=KIND(0.0D0)), INTENT(IN) :: degree REAL(KIND=KIND(0.0D0)), PARAMETER :: deg_to_rad = ATAN(1.0) / 45 REAL(KIND=KIND(0.0D0)) :: rad rad = degree * deg_to_rad END FUNCTION deg2rad END PROGRAM haversine_formula","s":"Haversine formula","u":"/fortran/haversine","h":"","p":56},{"i":59,"t":"Hypotenuse can be calculated using following formula: c=a2+b2c = \\sqrt{a^2 + b^2}c=a2+b2​ src/16_hypotenuse_subroutine.f90 ! Compile the subroutine: gfortran -c 16_hypotenuse_subroutine.f90 SUBROUTINE calculate_hypotenuse(side_a, side_b, hypotenuse) IMPLICIT NONE ! declare the intent of dummy variables REAL, INTENT(IN) :: side_a REAL, INTENT(IN) :: side_b REAL, INTENT(OUT) :: hypotenuse REAL :: temp temp = side_a * side_a + side_b * side_b hypotenuse = SQRT(temp) END SUBROUTINE calculate_hypotenuse Compile the subroutine: gfortran -c 16_hypotenuse_subroutine.f90 src/16_hypotenuse_program.f90 ! subroutine without module ! gfortran -c 16_hypotenuse_subroutine.f90 ! gfortran 16_hypotenuse_program.f90 16_hypotenuse_subroutine.o PROGRAM hypotenuse IMPLICIT NONE REAL :: s1, s2, output WRITE (*, *) 'Program to calculate hypotenuse of a right triangle' WRITE (*, *) 'Enter length of side 1:' READ (*, *) s1 WRITE (*, *) 'Enter length of side 2:' READ (*, *) s2 ! notice subroutine call can update values in the calling environment CALL calculate_hypotenuse(s1, s2, output) WRITE (*, 99) output 99 FORMAT('Hypotenuse = ', F10.4) END PROGRAM hypotenuse Compile main program: gfortran 16_hypotenuse_program.f90 16_hypotenuse_subroutine.o","s":"Calculate hypotenuse: example of subroutine","u":"/fortran/hypotenuse","h":"","p":58},{"i":61,"t":"This work is licensed under a Creative Commons Attribution 4.0 International License. Any third party materials in this work are not included in the article’s Creative Commons license, and users will need to obtain permission from the respective license holder to reproduce such materials. You are free to: Share — copy and redistribute the material in any medium or format. Adapt — remix, transform, and build upon the material for any purpose, even commercially. Under the following terms: Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use. Notices: No warranties are given. The license may not give you all of the permissions necessary for your intended use. For example, other rights such as publicity, privacy, or moral rights may limit how you use the material. To view full copy of this license, visit http://creativecommons.org/licenses/by/4.0/","s":"License","u":"/fortran/license","h":"","p":60},{"i":63,"t":"We will calculate the area under the curve f(x)f(x)f(x) within the bounds x=ax=ax=a and x=bx=bx=b. We will divide the curve into nnn trapezoids with width h=(b−a)/nh=(b-a)/nh=(b−a)/n. Area under the curve: An=h[f(a)2+f(a+h)+f(a+2h)+⋯+f(b)2]A_n = h \\left[\\frac{f(a)}{2} + f(a+h) + f(a+2h) + \\cdots + \\frac{f(b)}{2}\\right]An​=h[2f(a)​+f(a+h)+f(a+2h)+⋯+2f(b)​] src/10_trapezoid.f90 ! Caculate the area of sine curve using trapezoidal method PROGRAM trapezoid IMPLICIT none INTRINSIC :: sin REAL :: a, b, h, area INTEGER :: i, n n = 100 a = 0 b = 3.14 h = (b - a) / n area = 0.5 * (sin(a) + sin(b)) DO i = 1, n-1 area = area + sin(a + i*h) END DO area = h * area PRINT *, \"Area = \", area END PROGRAM trapezoid","s":"Numerical integration: Trapezoidal method","u":"/fortran/integration","h":"","p":62},{"i":65,"t":"We will try to improve above numerical integration code. Previously we had the integration function hard coded, now we will pass it as argument from the calling program and use separate module for the calculation. First we write our executable code in a module: src/14_integration_module.f90 MODULE integration_module IMPLICIT NONE PRIVATE PUBLIC :: integral CONTAINS FUNCTION integral(f, a, b, n) RESULT(integral_result) INTERFACE FUNCTION f(x) RESULT(f_result) REAL, INTENT(IN) :: x REAL :: f_result END FUNCTION f END INTERFACE REAL, INTENT(IN) :: a, b INTEGER, INTENT(IN) :: n REAL :: integral_result REAL :: h, area INTEGER :: i h = (b - a) / n area = 0.5 * (f(a) + f(b)) DO i = 1, n-1 area = area + f(a + i*h) END DO integral_result = h * area END FUNCTION integral END MODULE integration_module src/14_integration.f90 PROGRAM integration USE integration_module IMPLICIT NONE INTRINSIC :: sin PRINT *, integral(sin, a=0.0, b=3.14159, n=1000) END PROGRAM integration","s":"Numerical integration II","u":"/fortran/integration","h":"#numerical-integration-ii","p":62},{"i":68,"t":"Calculate factorial: src/07_factorial.f90 ! Program : Find factorial PROGRAM factorial IMPLICIT NONE INTEGER :: input, ii, output = 1 PRINT *, \"Input = \" READ *, input DO ii = 1, input output = output * ii ENDDO PRINT *, input, \"! = \", output END PROGRAM factorial We can have a step size in a DO loop with a third parameter: DO i = 1, 100, 10 ! do something END DO Exit a loop based on condition: DO i = 1, 10 CALL random_number(x) IF (x > 0.5) EXIT END DO Skip rest of current iteration with cycle: DO i = 1, 10 IF (iseven(i)) CYCLE ! do something with the odd numbers END DO Implied DO loops: PRINT *, (i, i = 1, 10) You can iterate multiple expressions: PRINT *, (i, i**2, i = 0, 10) With nested loops: PRINT *, ((i*j, i = 1, 10), j = 1, 10) DO concurrent: if the iterations of a DO loop are independent, we can use the CONCURRENT keyword to indicate, the loop can be iterated in parallel: DO CONCURRENT (i = 1, 10) ! do something END DO","s":"DO Loop","u":"/fortran/loop","h":"#do-loop","p":66},{"i":70,"t":"src/07_print_even_numbers.f90 PROGRAM even_numbers IMPLICIT NONE INTEGER :: num num = 1 DO WHILE (num <= 10) IF (MODULO(num, 2) == 0) THEN PRINT *, num END IF num = num + 1 END DO END PROGRAM even_numbers","s":"DO WHILE","u":"/fortran/loop","h":"#do-while","p":66},{"i":72,"t":"Large programs can be organized in separate modules and procedures. Here is an example. We store various mathematical and physical constants in a module named constants_module. src/11_const_module.f90 MODULE const_module IMPLICIT none PRIVATE REAL, PUBLIC, PARAMETER :: pi = 3.14159265 REAL, PUBLIC, PARAMETER :: e = 2.71828182 END MODULE const_module Now we write a program that uses the above module: src/11_circ_area.f90 PROGRAM circ_area USE const_module IMPLICIT none REAL :: rad = 5.0, area area = pi*rad**2 PRINT *, \"Area = \", area END PROGRAM circ_area The PRIVATE keyword makes sure everything is private otherwise declared as PUBLIC. Private variables are accessible only to the module, while public variables are accessible to the programs that uses it. There is also PROTECTED keyword, which allows the variable to be accessible but the value cannot be modified. Compile and run our module and program: gfortran -c 11_const_module.f90 gfortran 11_circ_area.f90 11_const_module.o ./a.out note Modules need to be compiled before the program that uses it. If both are placed in the same source file, the module should come before the program. Once the module is compiled, it will create .o and .mod files. When we compile the program, we only need to provide the .o file for linking, the compiler will find the .mod files. If the files are on a different directory, specify via -I option. gfortran -I./ 11_circ_area.f90","s":"Modules","u":"/fortran/modules","h":"","p":71},{"i":74,"t":"Rename a variable: use const_module, math_pi => pi Use only certain variables: use const_module, only : pi use const_module, only : pi, e Last command is same as: use const_module, only : pi use const_module, only : e Use pi and rename e: use const_module, only : pi, log_base => e","s":"USE keyword","u":"/fortran/modules","h":"#use-keyword","p":71},{"i":76,"t":"src/20_monte_carlo_integration.f90 ! Monte carlo method of integration ! calculate area under the curve y = x^2 within x limits [1, 3] PROGRAM area_under_curve IMPLICIT NONE INTEGER, PARAMETER :: iteration = 1000000 REAL :: x_lo = 1.0 REAL :: x_hi = 3.0 REAL :: x, y, y_lo = 0.0, y_hi, area, area_rect INTEGER :: i, monte_area = 0 y_hi = x_hi ** 2 area_rect = y_hi * (x_hi - x_lo) DO i = 1, iteration CALL random_number(x) CALL random_number(y) x = x_lo + x * (x_hi - x_lo); y = y * (y_hi - y_lo); IF (y < x ** 2) THEN monte_area = monte_area + 1; END IF END DO area = area_rect * monte_area / iteration PRINT *, \"Area = \", area PRINT *, \"Analytical result = \", (27.0 - 1) / 3 END PROGRAM area_under_curve","s":"Area under the curve by Monte Carlo method","u":"/fortran/monte-carlo-integration","h":"","p":75},{"i":78,"t":"We will approximate value of π\\piπ by Monte Carlo method. We will generate random number in a square of radius 2 unit; x = (-1, 1) and y = (-1, 1). We will count how many points are inside the circle of radius 1 unit. Area of the square = 4 square unit, while the are of circle is π\\piπ (unit radius circle). Use this ratio to approximate the value of π\\piπ. src/20_monte_carlo_pi.f90 PROGRAM pi IMPLICIT NONE INTEGER, PARAMETER :: iteration = 1000000 REAL :: x, y REAL :: x_lo = -1.0 REAL :: x_hi = 1.0 REAL :: y_lo = -1.0 REAL :: y_hi = 1.0 INTEGER :: i, monte_area = 0 DO i = 1, iteration CALL random_number(x) CALL random_number(y) x = x_lo + x * (x_hi - x_lo); y = y_lo + y * (y_hi - y_lo); IF (x * x + y * y < 1) THEN monte_area = monte_area + 1; END IF END DO PRINT *, \"pi = \", 4.0 * monte_area / iteration PRINT *, \"relative error = \", abs(1.0 * monte_area / iteration & - ATAN(1.0D0)) / ATAN(1.0D0) END PROGRAM pi","s":"Determine value of pi by Monte Carlo method","u":"/fortran/monte-carlo-pi","h":"","p":77},{"i":81,"t":"src/29_MPI_hello_world.f90 PROGRAM hello_world_mpi INCLUDE 'mpif.h' INTEGER process_rank, size_of_cluster, ierror CHARACTER* (MPI_MAX_PROCESSOR_NAME) processor_name CALL MPI_INIT(ierror) CALL MPI_COMM_SIZE(MPI_COMM_WORLD, size_of_cluster, ierror) CALL MPI_COMM_RANK(MPI_COMM_WORLD, process_rank, ierror) CALL MPI_GET_PROCESSOR_NAME(processor_name, namelen, ierr) WRITE(*, 10) process_rank, size_of_cluster, processor_name 10 FORMAT('Hello from process: ', I2, ' of', I2, ' on ', 20A) CALL MPI_FINALIZE(ierror) END PROGRAM Compile the code: mpif90 29_MPI_hello_world.f90 -o 29_MPI_hello_world.out # if you are using intel compiler mpiifort 29_MPI_hello_world.f90 -o 29_MPI_hello_world.out Let's run on 4 processors: mpirun -np 4 ./29_MPI_hello_world.out","s":"MPI Hello World","u":"/fortran/mpi","h":"#mpi-hello-world","p":79},{"i":83,"t":"https://curc.readthedocs.io/en/latest/programming/MPI-Fortran.html","s":"Resources","u":"/fortran/mpi","h":"#resources","p":79},{"i":85,"t":"There are two types of procedures in Fortran: subroutines and functions. All procedures should be placed in a module or after the contains keyword in a main program.","s":"Procedures","u":"/fortran/procedures","h":"","p":84},{"i":87,"t":"First we write the subroutines in a module: src/12_add_module.f90 MODULE add_module IMPLICIT none PRIVATE REAL :: input1, input2, total PUBLIC :: read_inputs, add_numbers, print_result CONTAINS SUBROUTINE read_inputs() PRINT \"(a,$)\", \"Input1 = \" READ *, input1 PRINT \"(a,$)\", \"Input2 = \" READ *, input2 END SUBROUTINE read_inputs SUBROUTINE add_numbers() total = input1 + input2 END SUBROUTINE add_numbers SUBROUTINE print_result PRINT *, input1, \" + \", input2, \" = \", total END SUBROUTINE print_result END MODULE add_module Now write our program: src/12_add.f90 PROGRAM add USE add_module IMPLICIT none CALL read_inputs() CALL add_numbers() CALL print_result() END PROGRAM add Compile and execute: gfortran -c 12_add_module.f90 gfortran 12_add.f90 12_add_module.o ./a.out","s":"Subroutine","u":"/fortran/procedures","h":"#subroutine","p":84},{"i":89,"t":"We want to print a table of xxx vs f(x)f(x)f(x) where: f(x)=(1+1x)xf(x) = \\left(1 + \\frac{1}{x}\\right)^xf(x)=(1+x1​)x src/13_function_module.f90 MODULE function_module IMPLICIT NONE PRIVATE INTEGER, PARAMETER, PUBLIC :: power = 5 PUBLIC :: f CONTAINS FUNCTION f(x) RESULT(f_result) REAL, INTENT(IN) :: x REAL :: f_result ! SELECTED_REAL_KIND(precision [, range]) INTEGER, PARAMETER :: kind_needed = selected_real_kind(power + 1) f_result = (1 + 1 / REAL(x, kind_needed)) ** x END FUNCTION f END MODULE function_module src/13_function_table.f90 PROGRAM function_table USE function_module IMPLICIT NONE REAL :: x INTEGER :: i DO i = 0, power x = 10**i PRINT \"(f8.1, f8.4)\", x, f(x) END DO END PROGRAM function_table Sample output: 1.0 2.0000 10.0 2.5937 100.0 2.7048 1000.0 2.7171 10000.0 2.7186 100000.0 2.7220 In contrast to subroutines, functions must provide a return value.","s":"Function","u":"/fortran/procedures","h":"#function","p":84},{"i":91,"t":"Side effects are the change in status of a program when a procedure is executed other than computing a value to return, such as changing a variable declared in the program or module above the contains statement. One can indicate whether a function or subroutine is pure or has side effects by using the keywords pure and impure, respectively.","s":"Pure procedures and side effects","u":"/fortran/procedures","h":"#pure-procedures-and-side-effects","p":84},{"i":93,"t":"Interface block is used to provide necessary information to the calling program whether the call is correct. It basically consists of the procedure without the executable code, and declaration of local variables.","s":"Interface blocks","u":"/fortran/procedures","h":"#interface-blocks","p":84},{"i":95,"t":"Ordinary FORTRAN procedures (subroutine and function) are not recursive, i.e., they cannot invoke themselves in their body. We can use the RECURSIVE keyword to implement recursive procedures.","s":"Recursion","u":"/fortran/recursion","h":"","p":94},{"i":97,"t":"Calculate factorial using recursive subroutine: src/21_recursive_subroutine.f90 ! Calculate factorial ! | n(n -1) n >= 1 ! n! = | ! | 1 n = 0 PROGRAM recursive_subroutine IMPLICIT NONE INTEGER :: input, output PRINT *, \"This program calculates factorial:\" PRINT '(a,$)', \"Input = \" READ *, input CALL factorial(input, output) PRINT *, input, \"! = \", output CONTAINS RECURSIVE SUBROUTINE factorial(n, result) INTEGER, INTENT(IN) :: n INTEGER, INTENT(OUT) :: result INTEGER :: tmp IF (n >= 1) THEN CALL factorial(n-1, tmp) result = n * tmp ELSE result = 1 END IF END SUBROUTINE factorial END PROGRAM recursive_subroutine","s":"Recursive subroutine","u":"/fortran/recursion","h":"#recursive-subroutine","p":94},{"i":99,"t":"Calculate fibonacci series using recursive function: src/21_recursive_function.f90 ! Fibonacci series ! F(0) = 0 ! F(1) = 1 ! F(n) = F(n-1) + F(n-2) for n > 1 PROGRAM recursive_function IMPLICIT NONE INTEGER :: lim, i PRINT *, \"This program calculates fibonacci series:\" PRINT '(a,$)', \"Limit = \" READ *, lim DO i = 0, lim PRINT *, \"Fib(\", i, \") = \", fibonacci(i) END DO CONTAINS RECURSIVE FUNCTION fibonacci(n) RESULT(output) INTEGER, INTENT(IN) :: n INTEGER :: output IF (n > 1) THEN output = fibonacci(n - 1) + fibonacci(n - 2) ELSE IF (n == 1) THEN output = 1 ELSE output = 0 END IF END FUNCTION fibonacci END PROGRAM recursive_function","s":"Recursive function","u":"/fortran/recursion","h":"#recursive-function","p":94},{"i":101,"t":"Fortran Programming Manual by Tanja van Mourik Guide to Fortran 2008 Programming by Walter S Brainerd Introduction to modern FORTRAN Fortran Programming Guide from Oracle https://people.math.sc.edu/Burkardt/f_src/f_src.html https://github.com/SourangshuGhosh/AwesomeFortranLibraries","s":"Resources","u":"/fortran/resources","h":"","p":100},{"i":103,"t":"Pointer in FORTRAN is an alias to a variable or procedure. src/28_pointer.f90 PROGRAM MAIN IMPLICIT NONE REAL, POINTER :: p1, p2 REAL, TARGET :: r1 INTEGER, DIMENSION(:), POINTER :: ptr_arr INTEGER, DIMENSION(2), TARGET :: arr r1 = 1.0 ! set p1 to point to r1 p1 => r1 ALLOCATE(p2) ! creates a storage space without a variable name ! allocate (p1, stat=allocation_status) p2 = 2.2 ! this value has no name arr(1) = 5 arr(2) = 8 ptr_arr => arr ! below two are the same PRINT *, \"r1 = \", r1 PRINT *, \"p1 = \", p1 PRINT *, \"p2 = \", p2 ! check association PRINT *, \"Is p1 and r1 associated? \", ASSOCIATED(p1, r1) PRINT *, \"Is p1 and p2 point to same object? \", ASSOCIATED(p1, p2) ! associated returns false if both pointers point to null PRINT \"(2i4)\", arr DEALLOCATE(p2) ! now p2 is a dangling pointer ! it can be set to point to null p2 => NULL() END","s":"Pointer","u":"/fortran/pointer","h":"","p":102},{"i":105,"t":"Subroutine to swap two integers: src/24_swap.f90 PROGRAM MAIN IMPLICIT NONE INTEGER a, b PRINT \"(a,$)\", \"Enter two integers (separated by space or comma): \" READ *, a, b CALL swap(a, b) PRINT *, \"After swap: \", a, b CONTAINS SUBROUTINE swap(a, b) INTEGER, INTENT(IN OUT) :: a, b INTEGER tmp tmp = a a = b b = tmp END SUBROUTINE swap END","s":"Swap two numbers","u":"/fortran/swap","h":"","p":104},{"i":107,"t":"Following example uses date_and_time and cup_time to find current date and time, and determine program execution time. src/25_time.f90 PROGRAM MAIN IMPLICIT NONE INTEGER, PARAMETER :: n = 10000000 CHARACTER(LEN=8) :: date REAL start_time, end_time REAL(KIND=KIND(1.0D0)) :: test = 0.0D0 INTEGER i CALL date_and_time(date=date) PRINT *, \"Timing report dated: \", date(1:4), \"-\", date(5:6), \"-\", date(7:8) CALL cpu_time(start_time) ! savage benchmark DO i = 1, n test = tan(atan(exp(log(sqrt(test * test))))) + 1.0D0; END DO CALL cpu_time(end_time) PRINT *, \"Time taken = \", end_time - start_time, \"sec.\" PRINT *, \"Test = \", test PRINT *, \"Relative accuracy = \", (test - (n + 1)) / (n + 1) END ! Sample output: ! Timing report dated: 2022-10-09 ! Time taken = 0.939146996 sec. ! Test = 9999816.5167837571 ! Relative accuracy = -1.8448319779454493E-005","s":"Time","u":"/fortran/time","h":"","p":106},{"i":110,"t":"src/23_custom_type.f90 PROGRAM MAIN IMPLICIT NONE TYPE user ! if defined in external MODULE, use PUBLIC: TYPE, PUBLIC :: user INTEGER id ! parameters can be initialized CHARACTER(LEN=64) name REAL age END TYPE ! extending type TYPE, EXTENDS(user) :: user_extended real :: salary END TYPE user_extended TYPE(user) new_user ! declare an array of user TYPE(user) user_catalog(10) TYPE(user_extended) user_with_salary new_user%id = 1; new_user%name = \"Albert Einstein\" new_user%age = 76.0 ! alternatively, new_user = user(1, \"Albert Einstein\", 76.0) user_catalog(1) = new_user PRINT *, \"User ID: \", user_catalog(1)%id PRINT *, \"User name: \", user_catalog(1)%name PRINT *, \"Age: \", user_catalog(1)%age user_with_salary = user_extended(1, \"Albert Einstein\", 76.0, 50000.0) PRINT *, \"Salary: \", user_with_salary%salary END","s":"Custom data types","u":"/fortran/types","h":"#custom-data-types","p":108},{"i":112,"t":"Example of polymorphic object: src/23_polymorphism.f90 PROGRAM MAIN IMPLICIT NONE ! define a base line type TYPE :: line_type REAL :: x_start, x_end, y_start, y_end END TYPE line_type ! extend the base line type TYPE, EXTENDS(line_type) :: colored_line_type INTEGER :: r, g, b ! each ranges 0-255 END TYPE colored_line_type TYPE, EXTENDS(colored_line_type) :: vector_line_type LOGICAL :: direction ! T if direction is start to end, F if reverse END TYPE vector_line_type ! CLASS keyword instead of TYPE ! polymorphic objects are dynamic, must be declared with ALLOCATABLE or POINTER CLASS(line_type), ALLOCATABLE :: colored_line, vector_line ! notice that line has CLASS line_type, but still can be assigned colored_line_type colored_line = colored_line_type(0.0, 1.0, 0.0, 1.0, 0, 0, 255) ! alternative way to assign ! ALLOCATE(vector_line_type::vector_line) ALLOCATE(vector_line, source=vector_line_type(0.0, 1.0, 0.0, 1.0, 0, 0, 255, .TRUE.)) ! accessing elements is bit tricky SELECT TYPE(colored_line) TYPE IS(line_type) PRINT *, \"X_start: \", colored_line%x_start TYPE IS(colored_line_type) PRINT *, \"Color: \", colored_line%r, colored_line%g, colored_line%b TYPE IS(vector_line_type) PRINT *, \"Is forward directed? \", colored_line%direction CLASS DEFAULT PRINT *, \"Error: not sure what type it is.\" END SELECT ! re-allocate the same variable ! DEALLOCATE(colored_line) ! ALLOCATE(colored_line, source=vector_line_type(0.0, 1.0, 0.0, 1.0, 0, 0, 255, .TRUE.)) END","s":"Polymorphism","u":"/fortran/types","h":"#polymorphism","p":108},{"i":114,"t":"FORTRAN is optimized for high performance scientific computing. I will be working on UNIX/ Linux machine for running codes. If you are on Windows, you may consider using WSL. We will be using gfortran compiler. To install gcc and gfortran in Ubuntu/ Debian: sudo apt install gcc gfortran On macOS you can install via Homebrew: brew install gcc gfortran is part of gcc. You can use any text editor of your choice to write source codes. We will be using .f90 file extension for our source code files. The program can be compiled using: gfortran source.f90 It will create a binary file named a.out in the same directory as the source code, which can be executed by: ./a.out If you would like to specify a name for the executable instead of default a.out: gfortran source.f90 -o XYapp If you have dependent modules in separate source files, you need to compile the modules first followed by main program with linking module .o file. More on this on the modules section. gfortran -c module.f90 gfortran main.f90 module.o","s":"Setting up Fortran","u":"/fortran/","h":"","p":113}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/2",[0,0.953,1,4.849,2,3.486,3,3.486,4,2.67,5,2.428,6,4.617,7,3.486,8,0.538,9,1.444,10,0.524,11,0.524,12,0.495,13,6.336,14,3.486,15,0.572,16,5.576,17,1.107,18,5.177,19,2.074,20,4.271,21,0.838,22,1.815,23,1.906,24,3.486,25,2.074,26,2.994,27,1.936,28,2.234,29,2.67,30,0.838,31,0.968,32,1.237,33,3.486,34,2.67,35,3.486,36,3.486,37,3.486,38,1.37,39,2.67,40,3.486,41,2.428,42,3.486,43,3.486,44,1.177,45,2.67,46,2.994]],["t/4",[8,0.483,10,0.754,11,0.754,15,0.573,21,0.754,30,0.754,32,1.779,41,2.548,44,1.235,47,2.37,48,2.802,49,3.659,50,4.306,51,3.84,52,3.659,53,5.014,54,6.154,55,6.154,56,5.72,57,6.447,58,1.906,59,2.346,60,1.793,61,3.659,62,5.014,63,1.906,64,5.014,65,3.659,66,3.659,67,3.659,68,5.014,69,3.659,70,3.659,71,3.659,72,3.143,73,2.346]],["t/6",[0,0.323,5,2.83,8,0.611,10,0.73,11,0.611,12,0.496,15,0.57,17,1.029,21,0.865,22,1.421,23,1.072,25,0.979,27,1.515,30,0.677,34,2.089,44,1.372,45,1.261,48,2.089,58,1.421,59,1.749,60,2.208,73,1.055,74,1.646,75,1.646,76,2.089,77,2.736,78,2.728,79,1.646,80,1.261,81,2.24,82,1.261,83,1.414,84,1.9,85,1.055,86,1.646,87,3,88,0.914,89,2.208,90,2.378,91,1.414,92,0.807,93,1.421,94,1.261,95,1.146,96,1.646,97,1.055,98,1.646,99,2.728,100,1.13,101,0.807,102,1.646,103,1.646,104,1.646,105,1.414,106,1.261,107,1.414,108,1.261,109,0.979,110,1.623,111,2.728,112,0.857,113,0.857,114,0.979,115,0.914,116,1.146,117,1.055,118,1.414,119,1.414,120,3.493,121,4.857,122,1.646,123,2.728,124,3.493,125,1.623,126,1.646,127,1.193,128,3,129,3.49,130,1.9,131,1.646,132,1.646,133,2.089,134,2.728,135,3,136,3.493,137,0.682,138,2.418,139,1.261,140,1.646,141,3.49,142,1.646,143,2.343,144,1.646,145,3.493,146,3.493,147,1.646,148,1.646,149,1.646,150,2.089,151,1.646,152,2.676,153,1.646,154,1.261,155,2.343,156,1.9,157,1.646,158,1.414,159,4.505,160,1.646,161,1.646,162,1.646,163,1.414,164,1.646,165,1.646,166,1.646,167,1.261,168,1.646,169,1.646,170,3,171,1.646,172,1.414,173,1.646,174,1.414,175,1.646,176,2.728,177,0.979,178,1.646,179,1.646,180,1.646,181,1.646,182,0.979,183,1.261,184,1.646]],["t/8",[60,3.184,95,3.821,106,4.202,177,4.118,185,5.487,186,5.487,187,5.487,188,5.487,189,5.487,190,3.047,191,5.487]],["t/10",[12,0.71,17,1.142,23,2.415,38,1.966,45,3.831,100,2.755,125,2.976,177,2.976,192,2.451,193,4.296,194,5.002,195,5.002,196,5.002,197,3.484,198,3.484,199,2.976,200,2.976,201,3.484,202,5.002,203,3.484,204,4.296,205,4.296,206,3.484,207,5.002]],["t/12",[12,0.767,15,0.554,17,1.235,60,2.649,128,4.643,133,4.141,143,4.643,172,4.643,200,3.216,203,3.765,208,5.406,209,5.406]],["t/14",[15,0.513,17,1.332,137,2.417,138,3.471,139,4.469]],["t/16",[0,0.941,12,0.755,15,0.546,17,1.215,21,0.401,23,1.57,27,3.794,31,1.582,94,1.232,97,1.708,100,1.104,130,1.856,137,2.204,138,2.376,155,2.289,156,1.856,177,1.585,192,2.347,198,2.782,199,2.849,200,2.376,203,1.856,206,1.856,210,3.994,211,3.07,212,2.665,213,2.665,214,2.665,215,2.041,216,4.886,217,5.698,218,4.166,219,2.665,220,1.856,221,3.994,222,3.994,223,1.957,224,2.665,225,3.43,226,3.668,227,2.665,228,2.665,229,2.665,230,2.665,231,2.289,232,2.665,233,2.665,234,2.665,235,2.665,236,1.856,237,2.665,238,2.665,239,2.665,240,2.665,241,2.665,242,2.665,243,2.665,244,2.289,245,3.43,246,3.43,247,2.665,248,3.059,249,2.665,250,2.665,251,2.665,252,2.665,253,2.665,254,2.08,255,2.56,256,2.665,257,2.665,258,3.994,259,2.665,260,2.665]],["t/18",[8,0.476,10,0.742,11,0.742,12,0.7,17,1.127,25,2.936,60,2.986,76,3.78,92,2.986,94,2.282,106,3.78,190,2.741,211,3.163,261,3.384,262,4.935,263,4.935,264,4.935,265,4.935,266,3.437,267,3.78,268,4.238,269,4.935,270,3.78,271,2.418,272,4.238,273,4.238]],["t/20",[6,3.373,12,0.89,15,0.478,17,1.006,27,2.445,47,1.824,48,4.805,50,3.782,199,2.62,200,2.62,223,2.158,254,2.293,255,2.823,274,3.782,275,4.403,276,3.782,277,4.403,278,4.403,279,4.403,280,4.403,281,4.403,282,5.671,283,2.62,284,4.403,285,4.403,286,4.403,287,4.403,288,4.403,289,6.273,290,4.403,291,4.403,292,3.373,293,3.782,294,4.403,295,4.403,296,4.403,297,4.403,298,4.403]],["t/22",[22,2.321,47,2.757,158,3.828,200,2.651,274,3.828,299,3.413,300,5.418,301,4.457,302,6.654,303,4.457,304,6.309,305,5.715,306,5.715,307,4.457,308,4.457,309,6.309,310,5.715,311,4.457,312,4.457,313,4.457,314,4.457,315,3.413,316,3.828,317,4.457,318,4.457,319,4.457,320,5.715,321,4.457,322,3.828]],["t/24",[12,0.745,15,0.537,21,0.789,44,1.773,58,2.735,81,3.367,177,3.124,182,3.124,270,4.848,271,3.102,323,4.022,324,3.367,325,4.511,326,5.252,327,4.511]],["t/26",[5,4.614,15,0.544,21,1.03,22,2.293,23,1.731,28,2.823,88,2.445,101,2.158,150,5.251,174,4.871,190,2.445,192,2.158,216,3.373,283,2.62,328,4.403,329,4.403,330,4.403,331,4.403,332,5.671,333,4.403,334,3.782,335,4.871,336,4.403,337,3.782,338,3.067,339,4.403,340,4.403]],["t/28",[0,0.403,8,0.564,10,0.61,11,0.61,12,0.895,15,0.572,21,0.61,23,2.523,27,2.986,28,3.866,30,0.695,31,1.873,47,0.849,89,1.597,90,1.507,100,1.35,101,1.004,119,1.76,125,1.219,154,4.118,183,2.497,192,2.267,223,1.597,226,1.569,236,1.427,266,1.427,283,3.199,323,2.497,324,1.314,341,2.049,342,4.076,343,2.049,344,4.733,345,3.26,346,4.059,347,3.109,348,2.8,349,1.569,350,3.26,351,1.76,352,1.76,353,3.973,354,2.049,355,3.26,356,2.049,357,3.26,358,2.497,359,2.27,360,2.27,361,1.76,362,1.76,363,1.76,364,2.049,365,2.049,366,4.626,367,4.059,368,4.059,369,2.049,370,3.26,371,3.486,372,2.049,373,2.049,374,2.049,375,2.049,376,2.049,377,1.76,378,2.049]],["t/31",[379,6.075]],["t/33",[8,0.489,15,0.472,51,3.884,95,3.532,112,2.641,115,3.441,220,3.532,380,5.322,381,4.355,382,5.071,383,5.071,384,4.355,385,5.071,386,6.196,387,5.071,388,5.322,389,5.322,390,5.071,391,4.355]],["t/35",[0,0.516,8,0.253,9,1.088,10,0.395,11,0.395,12,0.674,15,0.574,17,1.293,19,1.563,21,0.594,23,1.032,28,1.684,30,0.395,31,1.318,34,2.012,47,1.088,51,2.012,82,2.012,84,1.83,85,2.533,88,1.459,97,1.684,101,1.287,108,2.012,112,1.368,115,2.194,125,1.563,199,1.563,201,1.83,215,2.012,220,1.83,254,2.751,255,3.386,271,1.287,324,2.533,342,2.752,349,4.045,360,2.752,362,2.256,381,2.256,388,3.393,389,3.393,391,2.256,392,2.627,393,4.748,394,2.012,395,2.627,396,2.012,397,2.627,398,4.748,399,4.748,400,2.627,401,2.012,402,4.078,403,3.951,404,3.951,405,3.951,406,4.078,407,2.012,408,2.627,409,2.627,410,3.951,411,3.951,412,2.058,413,3.951,414,3.951,415,3.951,416,1.83,417,3.951,418,1.83,419,2.627,420,2.627,421,2.627,422,2.627,423,2.627,424,3.951,425,2.627,426,2.627,427,2.627]],["t/37",[8,0.279,9,1.2,10,0.435,11,0.435,12,0.411,15,0.57,19,2.992,21,0.638,30,0.887,31,1.538,32,1.028,89,2.081,127,1.266,137,1.2,198,3.503,199,2.992,201,2.017,267,4.243,268,4.32,270,4.722,271,2.715,292,2.218,323,3.253,396,2.218,412,2.619,416,2.017,418,2.017,428,2.896,429,3.648,430,2.896,431,2.896,432,5.54,433,2.896,434,5.54,435,2.896,436,2.896,437,2.896,438,2.896,439,2.896,440,2.896,441,2.896,442,2.896,443,3.648,444,2.896,445,2.896,446,2.896,447,4.247,448,2.896,449,2.896,450,3.852,451,2.896,452,2.896,453,2.896,454,2.896,455,2.896,456,2.896,457,2.896,458,2.896,459,3.551,460,2.896,461,4.247,462,2.896]],["t/39",[100,2.436,429,5.051,463,5.881,464,5.051,465,5.881]],["t/41",[0,0.62,8,0.509,10,0.474,11,0.474,12,0.448,15,0.583,17,1.206,22,1.644,26,2.711,30,0.474,77,3.279,83,2.711,84,2.199,94,1.46,139,3.463,156,4.017,198,2.199,199,1.878,200,3.632,201,2.199,231,3.883,402,4.537,412,1.644,416,2.199,418,2.199,466,2.711,467,3.157,468,4.521,469,6.69,470,6.541,471,3.157,472,3.157,473,3.157,474,3.157,475,3.157,476,2.418,477,3.157,478,3.157,479,4.521,480,3.157]],["t/43",[4,4.429,8,0.558,9,1.88,10,0.682,11,0.682,12,0.644,15,0.548,21,0.956,30,0.682,32,2.258,39,3.477,94,2.099,110,2.7,113,3.489,220,3.161,407,3.477,481,4.539,482,4.539,483,5.782,484,4.539,485,4.539,486,4.539,487,5.782,488,4.539,489,4.539]],["t/45",[15,0.536,84,4.394,107,3.828,114,2.651,490,5.715,491,4.457,492,6.654,493,4.457,494,6.654,495,4.457,496,7.25,497,4.457,498,4.457,499,4.457,500,4.457,501,4.457,502,4.457,503,5.715,504,4.457,505,3.828,506,4.457,507,4.457,508,4.457]],["t/47",[8,0.595,10,0.639,11,0.639,15,0.571,17,1.409,21,0.927,22,2.214,30,0.639,38,1.671,44,1.435,72,3.651,81,4.456,90,2.852,127,2.424,315,4.724,316,5.297,338,3.861,509,4.251,510,5.543,511,4.251]],["t/49",[8,0.532,10,0.635,11,0.635,12,0.784,15,0.562,21,1.017,29,4.229,30,0.83,38,1.661,44,1.427,58,2.876,93,2.201,100,1.751,109,2.514,338,2.944,512,4.226,513,5.522,514,5.493,515,3.237,516,4.226,517,5.522,518,4.743,519,4.226,520,3.63,521,2.944]],["t/51",[8,0.571,10,0.708,11,0.708,12,0.669,15,0.544,21,1.021,30,0.89,44,1.591,58,2.455,95,4.125,218,3.283,514,5.203,518,5.086,520,4.048,522,4.713,523,5.922,524,5.086,525,4.713,526,4.713]],["t/53",[0,0.688,8,0.65,10,0.731,11,0.731,12,0.691,15,0.532,21,0.526,30,0.908,31,1.552,41,2.439,44,1.887,59,4.211,77,2.384,90,1.62,91,3.008,100,1.451,109,2.083,150,3.726,154,2.682,167,2.682,192,2.74,215,4.282,283,2.083,344,4.861,347,2.682,527,4.178,528,3.502,529,4.865,530,4.865,531,4.865,532,3.502,533,3.502,534,3.502,535,4.865,536,3.502,537,3.502,538,3.502,539,3.502,540,4.865,541,3.502,542,3.502,543,3.502,544,4.865,545,3.502]],["t/55",[0,0.867,8,0.425,10,0.459,11,0.459,12,0.626,15,0.575,17,1.184,18,4.877,19,1.816,21,0.997,29,3.38,30,0.906,31,1.577,44,1.75,58,2.699,85,1.956,89,2.163,100,1.264,125,3.944,190,1.695,324,2.829,335,2.621,338,2.126,342,3.61,349,2.338,358,2.338,359,2.126,360,3.073,361,2.621,396,2.338,546,3.052,547,4.413,548,3.052,549,3.052,550,3.052,551,4.413,552,4.413,553,4.413,554,4.413,555,4.413,556,3.052,557,4.413,558,4.413,559,3.052,560,3.052,561,3.052]],["t/57",[8,0.353,10,0.358,11,0.358,12,0.338,15,0.581,21,0.815,23,0.936,30,0.551,31,0.661,44,1.83,47,1.518,63,1.24,88,2.036,89,1.796,127,1.041,130,2.553,137,1.852,245,3.839,266,1.658,562,5.02,563,3.665,564,1.823,565,2.381,566,5.02,567,5.02,568,2.045,569,3.665,570,2.045,571,2.381,572,2.381,573,2.381,574,4.152,575,2.381,576,1.823,577,2.381,578,2.381,579,2.381,580,2.045,581,2.381,582,2.381,583,2.381,584,2.381,585,2.381,586,3.665,587,3.665,588,2.381,589,2.381,590,5.726,591,3.665,592,2.381,593,4.47,594,5.02,595,4.47,596,4.47,597,4.47,598,4.47,599,2.381,600,2.381,601,2.381,602,2.381,603,2.381,604,2.381,605,2.381,606,2.381,607,2.381,608,2.381,609,2.381,610,2.381,611,2.381,612,1.167,613,2.381,614,2.381,615,4.47,616,2.381,617,3.665,618,2.381,619,2.381,620,3.148,621,2.381]],["t/59",[0,0.545,8,0.523,9,1.15,10,0.619,11,0.619,15,0.572,17,1.324,23,1.091,30,0.619,31,0.771,32,1.741,44,1.39,58,2.144,63,2.144,77,2.66,90,2.269,92,1.36,112,2.555,114,1.651,115,3.219,125,2.449,127,1.8,223,1.36,261,1.542,459,3.145,521,1.933,570,2.384,622,6.285,623,2.776,624,2.776,625,2.776,626,2.776,627,3.162,628,4.907,629,2.776,630,5.427,631,2.776,632,2.776,633,4.907,634,2.384,635,4.116,636,2.776,637,2.776,638,2.776,639,2.126,640,1.36,641,4.116,642,4.116,643,4.116,644,4.907,645,2.384,646,2.776,647,3.536,648,2.776,649,2.776,650,2.776,651,4.116,652,2.776,653,2.776]],["t/61",[0,1.093,15,0.424,25,2.064,80,2.657,100,1.437,114,2.064,130,2.416,141,2.98,197,2.416,322,4.151,450,2.657,521,2.416,645,4.151,654,4.151,655,6.72,656,3.702,657,4.833,658,4.833,659,3.469,660,2.98,661,3.469,662,6.325,663,2.98,664,3.469,665,3.469,666,4.833,667,2.98,668,3.469,669,3.469,670,4.151,671,3.469,672,3.469,673,4.833,674,3.469,675,3.469,676,3.469,677,3.469,678,3.469,679,3.469,680,3.469,681,3.469,682,3.469,683,3.469,684,3.469,685,4.833,686,3.469,687,3.469,688,2.416,689,2.657,690,2.98,691,3.469,692,3.469,693,3.469,694,2.98,695,3.469,696,3.469,697,3.469,698,3.469,699,2.98,700,3.469,701,2.064,702,3.469,703,3.469,704,2.657,705,3.469,706,3.469,707,3.469,708,3.469]],["t/63",[0,0.654,8,0.453,10,0.5,11,0.5,12,0.472,15,0.576,17,0.76,21,0.5,30,0.706,31,1.303,38,1.308,89,2.665,127,1.455,193,2.858,236,2.318,271,2.895,299,2.549,300,2.858,656,3.595,709,4.531,710,5.073,711,2.858,712,2.858,713,3.328,714,3.328,715,3.328,716,3.328,717,3.328,718,5.907,719,3.328,720,3.328,721,3.328,722,3.328,723,5.073,724,3.328,725,3.328,726,3.328,727,3.328,728,3.328,729,3.328,730,3.328,731,2.549,732,2.858,733,2.549,734,4.694,735,3.328,736,2.858]],["t/65",[0,0.852,6,2.281,8,0.493,10,0.652,11,0.652,12,0.615,15,0.562,17,1.362,21,0.448,30,0.936,31,1.203,32,1.057,47,2.472,63,2.662,77,1.459,89,2.505,109,1.772,110,3.041,113,1.551,117,1.909,127,1.302,182,1.772,190,1.654,236,2.074,254,1.551,271,2.751,276,2.558,299,2.281,612,1.459,640,2.751,701,1.772,709,3.825,723,4.39,733,2.281,736,2.558,737,2.978,738,2.978,739,5.348,740,2.978,741,2.978,742,2.978,743,2.978,744,5.111,745,2.074,746,2.978,747,2.978,748,3.723,749,2.558,750,2.558,751,2.558,752,2.281,753,4.335,754,4.335,755,2.978,756,2.978,757,2.978,758,2.978,759,2.978,760,2.978]],["t/68",[0,0.569,8,0.485,10,0.435,11,0.435,12,0.411,15,0.573,21,0.887,22,1.508,30,0.887,31,1.851,32,1.028,38,1.138,39,3.253,44,0.978,81,3.782,90,2.562,93,1.508,127,1.266,137,1.2,183,2.218,192,3.202,197,2.017,226,2.218,254,1.508,267,2.218,344,3.852,347,2.218,351,2.487,352,5.295,660,2.487,732,2.487,733,2.218,761,4.758,762,2.896,763,2.218,764,2.896,765,5.03,766,2.487,767,2.896,768,2.218,769,2.896,770,2.896,771,2.487,772,4.243,773,4.247,774,2.896,775,2.896,776,2.896,777,2.896,778,2.896,779,2.896,780,5.03,781,2.896,782,2.896]],["t/70",[8,0.583,10,0.732,11,0.732,12,0.691,15,0.556,21,0.732,23,1.914,30,0.988,31,1.678,38,1.914,192,2.386,783,4.869,784,6.043,785,7.201,786,4.869]],["t/72",[0,1.058,8,0.633,10,0.612,11,0.612,15,0.509,17,1.111,21,0.411,25,2.422,30,0.612,41,1.904,59,3.693,60,1.34,77,1.34,92,2.383,93,2.12,97,1.753,100,1.133,101,1.34,105,2.348,108,2.094,109,1.627,112,3,115,2.701,116,1.904,117,1.753,137,1.686,138,1.627,167,2.094,182,1.627,206,1.904,223,1.34,261,1.519,273,2.348,292,2.094,418,1.904,459,1.753,564,2.094,620,2.348,640,3.276,688,1.904,689,2.094,701,3.205,709,3.454,745,3.753,763,2.094,787,2.734,788,2.734,789,1.627,790,2.734,791,2.734,792,2.734,793,2.734,794,2.734,795,2.734,796,4.177,797,2.734,798,2.348,799,2.734,800,2.734,801,4.071,802,2.734,803,2.734,804,2.348,805,2.734,806,4.177,807,2.734,808,2.734,809,2.094,810,2.734,811,4.071,812,2.734,813,4.071,814,2.348,815,2.734,816,2.734,817,2.094,818,3.118,819,4.071,820,2.734,821,2.348,822,2.348,823,2.734]],["t/74",[0,1.431,4,3.498,15,0.549,92,2.845,101,2.238,138,4.215,796,6.086,798,5.768,824,5.805,825,4.567,826,4.567,827,4.567,828,4.567]],["t/76",[8,0.422,10,0.453,11,0.453,12,0.621,15,0.581,17,1.175,19,1.793,21,0.657,23,1.719,28,2.804,30,0.774,31,1.567,32,1.552,38,1.185,85,1.932,127,1.318,137,1.249,254,3.122,255,3.843,412,1.57,416,2.1,656,2.309,704,2.309,709,3.843,710,2.589,712,2.589,731,2.309,739,2.589,768,2.309,772,3.942,829,3.014,830,2.589,831,2.589,832,3.014,833,4.373,834,2.589,835,4.849,836,4.849,837,3.756,838,4.849,839,5.147,840,4.849,841,2.589,842,3.014,843,3.014]],["t/78",[0,0.527,8,0.387,10,0.404,11,0.404,12,0.57,15,0.58,17,1.305,21,0.604,22,1.398,23,1.055,27,1.491,30,0.723,31,1.775,32,1.425,38,1.055,129,4.132,133,3.684,137,1.112,138,3.568,223,1.968,246,3.449,254,3.124,255,3.845,315,3.684,412,2.781,450,2.056,515,2.056,527,2.306,574,2.056,709,1.721,731,2.056,768,2.056,772,4.089,830,2.306,831,2.306,834,2.306,835,4.132,836,3.449,837,4.132,838,3.449,840,4.909,841,2.306,844,4.015,845,2.684,846,5.339,847,2.684,848,2.684,849,2.684,850,2.684,851,2.684,852,2.306,853,2.684]],["t/81",[0,0.773,8,0.508,12,0.558,15,0.504,27,2.924,30,0.591,32,2.345,77,1.927,110,2.34,112,2.742,118,3.378,177,2.34,192,2.58,348,4.522,464,3.378,663,3.378,809,3.012,818,4.033,854,3.933,855,3.933,856,3.933,857,5.936,858,5.936,859,5.936,860,3.933,861,5.265,862,3.933,863,3.933,864,3.933,865,3.933,866,3.933,867,3.933,868,3.933,869,3.933,870,3.933,871,3.933,872,3.933,873,5.265,874,5.936,875,3.933,876,3.933,877,3.933,878,3.933]],["t/83",[879,6.026,880,6.026]],["t/85",[8,0.533,9,2.29,47,2.29,88,3.07,93,2.879,94,2.556,211,3.544,564,4.234,612,2.709,627,2.879,640,2.709,789,3.882]],["t/87",[0,0.666,8,0.53,10,0.715,11,0.715,15,0.562,17,0.774,21,0.826,30,0.943,32,1.949,44,1.605,46,4.717,77,2.33,87,4.084,112,1.765,113,1.765,115,2.641,116,2.361,117,2.173,190,1.882,459,2.173,612,1.661,627,3.477,640,2.692,701,2.016,745,2.361,881,3.389,882,5.493,883,6.271,884,6.271,885,5.954,886,5.954,887,5.954,888,3.389,889,3.389,890,3.389,891,3.389]],["t/89",[0,0.62,8,0.436,10,0.68,11,0.68,12,0.75,15,0.564,17,1.206,21,0.68,30,0.867,31,1.466,38,1.241,47,2.188,63,1.644,73,2.024,90,1.46,137,1.873,163,2.711,223,1.547,248,2.418,254,3.179,283,1.878,293,2.711,412,1.644,612,1.547,627,1.644,640,2.216,688,2.199,701,2.69,711,2.711,745,2.199,749,3.883,750,2.711,751,3.883,752,3.463,892,3.157,893,3.157,894,3.157,895,3.157,896,3.157,897,3.157,898,3.157,899,3.157,900,5.282,901,4.521,902,3.157,903,4.521,904,3.157,905,3.157,906,4.521,907,3.157,908,3.157,909,2.711,910,3.157,911,3.157,912,3.157,913,3.157,914,3.157,915,3.157,916,3.157,917,3.157,918,3.157,919,3.157,920,3.157,921,3.157]],["t/91",[0,0.95,8,0.58,47,2.004,73,3.101,92,2.371,93,2.519,109,2.878,113,2.519,170,4.155,197,3.369,223,2.371,261,2.687,325,4.155,394,3.705,612,2.371,627,2.519,640,2.371,647,5.169,667,4.155,670,4.155,690,5.169,789,2.878,922,6.019,923,4.837,924,4.155,925,6.019,926,4.837]],["t/93",[0,1.032,8,0.506,32,2.246,92,2.574,110,3.124,113,2.735,261,2.917,466,4.511,639,4.022,688,3.658,699,4.511,748,4.511,789,3.124,924,4.511,927,5.252,928,5.252,929,5.252,930,5.252,931,5.252]],["t/95",[0,1.062,47,2.24,93,2.815,94,2.5,627,2.815,789,3.831,932,5.406,933,5.269,934,5.406,935,5.406,936,5.406,937,5.406,938,5.406]],["t/97",[0,0.675,8,0.534,10,0.517,11,0.517,12,0.85,15,0.578,20,4.239,21,0.832,30,0.832,31,1.813,32,1.704,38,1.351,44,1.16,63,1.79,81,3.841,85,3.841,90,2.559,127,2.42,271,3.2,612,1.684,627,2.882,634,2.952,761,5.145,933,3.678,939,3.437,940,3.437,941,4.801,942,3.437,943,4.801]],["t/99",[0,0.663,8,0.528,10,0.507,11,0.507,12,0.778,15,0.578,21,0.824,23,1.863,30,0.893,31,1.851,38,2.153,44,1.139,47,2.27,63,1.757,90,2.748,127,2.073,271,2.912,612,1.653,704,2.584,933,3.63,944,5.942,945,5.479,946,3.374,947,3.374,948,3.374,949,5.479,950,4.74,951,5.479,952,3.374,953,3.374,954,5.479,955,3.374]],["t/101",[8,0.651,94,3.246,956,5.178,957,5.178,958,5.178,959,5.178,960,6.275,961,5.178,962,5.178,963,5.178,964,5.178,965,5.178,966,5.178,967,5.178,968,5.178,969,5.178]],["t/103",[8,0.278,9,1.195,10,0.434,11,0.434,12,0.601,15,0.576,17,0.967,21,0.925,30,0.434,60,2.075,73,1.849,88,1.602,92,2.075,94,1.334,97,1.849,101,2.075,117,1.849,152,2.209,205,2.477,216,2.209,223,1.414,225,2.477,244,3.637,283,1.716,324,1.849,334,2.477,359,2.009,371,2.477,412,1.502,574,4.235,639,2.209,789,1.716,817,2.209,970,5.058,971,2.884,972,2.884,973,6.527,974,6.527,975,4.235,976,6.527,977,4.235,978,5.018,979,2.884,980,2.884,981,2.884,982,2.884,983,2.884,984,2.884,985,2.884,986,5.018,987,4.235,988,2.477,989,5.018,990,2.884,991,2.884]],["t/105",[8,0.412,9,1.771,10,0.643,11,0.643,12,0.964,15,0.548,20,4.737,21,0.836,30,0.836,32,1.517,44,1.443,58,2.227,63,2.227,88,3.09,89,3.523,152,3.275,182,2.543,327,3.672,612,2.095,627,3.221,992,6.185,993,4.275,994,5.564,995,4.275]],["t/107",[0,0.59,8,0.42,9,1.244,10,0.451,11,0.451,12,0.619,15,0.58,17,0.686,21,0.847,30,0.655,31,1.426,32,1.822,90,1.388,100,1.244,113,1.564,114,1.786,137,1.244,192,1.471,266,2.091,271,2.762,580,5.533,763,2.299,771,2.578,852,3.745,909,2.578,996,3.002,997,3.002,998,5.635,999,6.244,1000,3.002,1001,3.002,1002,3.002,1003,4.36,1004,4.36,1005,3.002,1006,3.002,1007,3.002,1008,4.36,1009,3.002,1010,3.002,1011,3.002,1012,3.002,1013,3.002,1014,3.002,1015,3.002,1016,3.002,1017,3.002,1018,4.36,1019,4.36,1020,4.36,1021,3.002,1022,3.002,1023,3.002,1024,3.002,1025,3.002,1026,3.002]],["t/110",[0,0.651,8,0.319,9,1.372,10,0.498,11,0.498,12,0.47,15,0.57,17,1.069,21,0.886,30,0.815,31,0.92,60,2.293,80,4.763,137,1.372,211,4.137,261,1.84,342,2.307,401,2.537,407,2.537,443,2.845,514,3.584,576,2.537,640,1.624,701,2.784,1027,3.313,1028,4.679,1029,3.313,1030,2.845,1031,3.313,1032,4.679,1033,4.679,1034,4.679,1035,5.425,1036,3.313,1037,3.313,1038,4.679,1039,3.313,1040,3.313,1041,5.425,1042,5.425,1043,3.313,1044,5.425,1045,3.313,1046,3.313,1047,3.313,1048,3.313,1049,3.313,1050,3.313,1051,3.313,1052,3.313]],["t/112",[5,3.231,8,0.244,9,1.047,10,0.38,11,0.38,12,0.359,15,0.564,17,0.577,19,2.76,21,0.778,30,0.881,38,2.394,76,1.936,89,1.239,92,1.239,93,1.316,100,1.047,101,1.239,135,2.171,203,1.761,204,3.296,211,4.381,218,1.761,248,1.936,261,1.404,353,3.296,358,1.936,359,1.761,360,2.673,377,2.171,401,1.936,406,2.171,412,3.053,476,1.936,515,1.936,521,1.761,524,3.296,576,1.936,694,2.171,752,1.936,766,3.296,804,2.171,806,2.171,970,2.171,988,3.296,1030,2.171,1053,3.837,1054,2.528,1055,4.639,1056,3.837,1057,2.528,1058,2.528,1059,2.528,1060,2.528,1061,4.639,1062,2.528,1063,2.528,1064,5.179,1065,2.528,1066,3.837,1067,4.639,1068,2.528,1069,2.528,1070,4.639,1071,2.528,1072,3.837,1073,2.528,1074,2.528,1075,2.528,1076,2.528,1077,2.528,1078,3.837,1079,2.528,1080,2.528,1081,2.528,1082,2.528,1083,2.528,1084,2.528,1085,2.528,1086,2.528,1087,2.528,1088,2.528,1089,2.528,1090,2.528,1091,2.528,1092,2.528,1093,2.528]],["t/114",[0,1.217,8,0.448,9,1.36,25,1.953,59,3.973,60,2.279,77,1.609,82,2.515,94,1.518,101,1.609,110,3.493,112,2.812,113,2.422,114,1.953,115,3.754,116,3.76,156,2.287,182,1.953,190,1.824,206,2.287,218,2.287,272,2.82,337,2.82,363,2.82,380,5.043,384,2.82,394,2.515,459,2.105,476,2.515,505,2.82,568,2.82,640,2.877,654,2.82,689,2.515,809,2.515,814,5.043,817,2.515,818,3.561,821,2.82,822,2.82,1094,3.283,1095,3.283,1096,3.283,1097,3.283,1098,3.283,1099,3.283,1100,3.283,1101,5.871,1102,3.283,1103,3.283,1104,3.283,1105,3.283,1106,3.283,1107,3.283,1108,3.283,1109,3.283,1110,3.283,1111,4.65,1112,3.283,1113,3.283,1114,3.283,1115,3.283,1116,3.283,1117,3.283,1118,3.283]]],"invertedIndex":[["",{"_index":15,"t":{"2":{"position":[[187,2],[199,2],[206,1],[232,1],[265,2],[289,1],[291,2],[328,1],[399,1],[439,1],[493,1],[548,1],[568,2],[579,1],[603,1],[631,1],[658,1],[664,1],[683,2],[693,1],[695,2]]},"4":{"position":[[144,2],[215,1],[255,1],[288,2],[307,2],[444,2],[477,2],[507,2],[510,3],[514,1],[534,1],[572,2],[575,4],[580,1],[628,1],[654,2],[728,1],[754,2],[757,3],[761,2]]},"6":{"position":[[170,1],[180,1],[240,2],[262,2],[274,2],[282,2],[293,2],[305,2],[313,2],[325,1],[329,1],[350,2],[356,4],[364,4],[884,1],[894,1],[963,2],[1018,1],[1020,1],[1027,2],[1038,1],[1043,1],[1056,2],[1077,1],[1079,2],[1183,1],[1193,1],[1285,2],[1314,2],[1320,1],[1389,1],[1396,2],[1408,1],[1412,1],[1417,1],[1427,2],[1459,1],[1461,2],[1525,1],[1535,1],[1603,2],[1621,1],[1631,2],[1659,1],[1679,1],[1690,1],[1731,1],[1787,1],[1818,1],[1873,1],[1905,1],[2131,2],[2201,1],[2314,3],[2324,2],[2339,1],[2341,2],[2344,1],[2473,4]]},"12":{"position":[[8,2],[31,2],[64,2],[78,2],[104,2]]},"14":{"position":[[16,2],[22,1]]},"16":{"position":[[307,1],[338,1],[375,1],[835,2],[841,1],[845,1],[859,1],[959,2],[965,1],[969,1],[989,2],[1017,1],[1058,2],[1071,2],[1078,1],[1084,1],[1112,1],[1189,2]]},"20":{"position":[[127,1],[232,2],[306,2]]},"24":{"position":[[8,2],[57,1],[59,1],[132,2]]},"26":{"position":[[42,1],[48,2],[77,1],[109,1],[134,2],[170,1],[192,1]]},"28":{"position":[[17,1],[27,1],[71,2],[90,2],[107,1],[115,1],[131,1],[159,1],[429,2],[444,2],[454,1],[465,1],[481,1],[621,2],[638,1],[647,1],[763,1],[801,1],[816,1],[824,1],[834,1],[886,1],[901,1],[909,1],[963,1],[973,1],[1056,2],[1061,1],[1081,1],[1093,1],[1105,1],[1146,2],[1151,1],[1168,1],[1176,1],[1185,1],[1197,1],[1238,2],[1256,2],[1269,1],[1290,1],[1303,2],[1317,2],[1456,2],[1463,1],[1467,1],[1482,1],[1488,1]]},"33":{"position":[[73,1],[120,1]]},"35":{"position":[[21,1],[100,1],[156,1],[192,1],[232,1],[340,2],[345,1],[349,1],[401,2],[438,2],[451,2],[459,1],[469,1],[473,1],[549,1],[614,2],[633,1],[701,1],[712,1],[723,1],[734,1],[745,1],[756,1],[767,1],[779,1],[791,1],[803,1],[815,1],[827,1],[838,1],[872,2],[883,1],[885,2],[898,2],[914,1],[916,2]]},"37":{"position":[[97,1],[288,1],[299,1],[305,1],[334,1],[347,1],[360,1],[373,1],[386,1],[399,1],[412,1],[425,1],[438,1],[451,1],[464,1],[477,1],[483,1],[532,1],[544,1],[558,1],[638,1],[660,1],[672,1],[685,2],[697,4],[705,2],[708,3]]},"41":{"position":[[121,2],[126,1],[147,2],[163,5],[172,1],[174,2],[185,5],[196,1],[198,2],[212,1],[231,5],[241,1],[243,2],[252,1],[274,1],[297,1],[320,1],[350,5],[360,1],[365,1],[367,2],[373,1],[384,5],[394,1],[399,1],[401,2],[407,1],[412,1],[492,5],[509,1],[511,2],[529,5],[551,1],[553,2],[565,1],[591,5],[617,2]]},"43":{"position":[[153,1],[184,2],[241,2],[263,2],[300,3],[330,2],[345,2]]},"45":{"position":[[319,1],[331,1],[346,2],[371,2],[399,2],[411,2]]},"47":{"position":[[67,1],[77,1],[136,2],[159,2],[169,1],[171,1],[178,2],[197,1],[214,1],[234,2],[253,2],[263,2],[266,2],[287,2]]},"49":{"position":[[64,2],[103,1],[110,2],[125,2],[142,2],[209,1],[226,2],[263,2],[279,1],[296,2],[327,2]]},"51":{"position":[[64,2],[103,1],[110,2],[154,2],[196,2],[232,2]]},"53":{"position":[[78,1],[88,1],[154,2],[212,1],[496,1],[506,1],[568,2],[636,1],[696,1]]},"55":{"position":[[145,2],[182,2],[202,2],[209,1],[256,1],[263,2],[276,1],[285,1],[289,1],[302,2],[409,2],[449,1],[492,1],[494,1],[501,2],[522,2],[563,1],[606,1],[608,1],[615,2],[635,1],[651,1],[657,1],[664,1],[711,1],[713,2],[720,1],[815,1],[817,2]]},"57":{"position":[[163,1],[238,1],[254,1],[292,1],[309,1],[330,1],[458,2],[464,1],[498,2],[517,1],[537,2],[545,1],[563,2],[571,1],[589,2],[597,1],[615,2],[623,1],[641,2],[688,1],[690,1],[697,2],[742,1],[744,1],[751,2],[795,1],[797,1],[804,2],[849,1],[851,1],[858,2],[871,1],[892,1],[913,1],[934,1],[952,1],[980,1],[992,1],[1004,1],[1006,1],[1039,1],[1043,1],[1061,1],[1109,2],[1117,1],[1176,1],[1232,2],[1276,2],[1290,1],[1302,1],[1330,2],[1341,1],[1350,1]]},"59":{"position":[[63,1],[75,1],[123,1],[264,1],[321,2],[348,2],[376,2],[395,2],[408,1],[417,1],[426,1],[435,1],[455,1],[599,1],[627,1],[670,1],[772,2],[796,3],[800,2],[863,3],[867,2],[901,3],[905,2],[917,3],[921,2],[955,3],[959,2],[965,1],[1083,3],[1120,1],[1122,2]]},"61":{"position":[[313,1],[381,1],[504,1]]},"63":{"position":[[244,1],[269,1],[278,1],[288,1],[297,1],[379,1],[480,2],[492,2],[517,2],[527,1],[535,1],[541,1],[550,1],[560,1],[569,1],[575,1],[585,1],[600,1],[614,1],[621,1],[629,1],[648,1],[652,1],[665,2],[674,1],[676,2]]},"65":{"position":[[347,2],[480,2],[490,2],[548,2],[576,2],[586,2],[610,2],[629,2],[636,1],[646,1],[655,1],[661,1],[669,1],[682,1],[696,1],[703,1],[709,1],[739,1],[743,1],[892,2],[905,2]]},"68":{"position":[[42,1],[52,1],[109,2],[130,1],[140,2],[150,1],[152,1],[159,2],[174,1],[192,1],[201,1],[218,2],[228,2],[231,1],[233,2],[331,1],[344,1],[403,1],[439,1],[506,1],[535,1],[602,2],[611,1],[664,2],[679,1],[713,2],[725,1],[737,1],[911,1],[920,1]]},"70":{"position":[[73,2],[84,1],[102,2],[128,2],[145,2],[163,1],[169,1]]},"72":{"position":[[267,2],[273,1],[310,2],[315,1],[478,2],[485,1],[502,1],[520,2],[529,1],[531,2]]},"74":{"position":[[45,2],[102,1],[130,1],[186,1],[214,1],[262,1],[277,2]]},"76":{"position":[[35,1],[71,1],[106,1],[193,2],[206,1],[221,2],[229,1],[240,2],[248,1],[259,2],[273,1],[310,2],[327,1],[336,1],[343,2],[358,1],[365,1],[386,1],[447,1],[454,1],[458,1],[477,1],[481,1],[504,1],[508,2],[530,1],[543,1],[567,1],[579,1],[592,1],[610,2],[619,1],[621,2],[635,2],[657,1],[659,2],[673,1]]},"78":{"position":[[121,1],[123,1],[137,1],[139,1],[237,1],[429,2],[442,1],[457,2],[470,2],[478,1],[490,2],[498,1],[509,2],[517,1],[529,2],[537,1],[551,2],[568,1],[577,1],[638,1],[645,1],[649,1],[668,1],[675,1],[679,1],[702,1],[706,1],[710,1],[714,1],[735,1],[748,1],[773,2],[780,1],[782,2],[789,1],[802,1],[820,2],[839,1],[841,2],[852,1],[865,1],[877,1],[894,1]]},"81":{"position":[[453,2],[460,1],[471,1],[476,2],[596,1]]},"87":{"position":[[111,2],[143,2],[242,1],[244,1],[251,2],[284,1],[286,1],[293,2],[361,1],[370,1],[436,2],[447,1],[449,1],[451,2],[462,1],[464,1],[466,2]]},"89":{"position":[[72,1],[82,1],[217,2],[226,1],[237,2],[299,2],[309,2],[321,1],[352,2],[382,2],[397,1],[424,1],[438,1],[443,1],[447,1],[471,2],[606,2],[619,2],[629,1],[642,1]]},"97":{"position":[[80,1],[102,1],[104,1],[116,2],[121,1],[126,1],[128,1],[130,1],[132,1],[138,1],[193,2],[216,2],[278,1],[280,1],[287,2],[332,2],[342,2],[345,1],[347,2],[428,2],[454,2],[472,2],[485,2],[528,1],[532,1],[550,1]]},"99":{"position":[[83,1],[102,1],[109,1],[113,1],[120,1],[124,1],[131,1],[140,1],[155,1],[208,2],[224,2],[293,1],[295,1],[302,2],[314,1],[329,2],[343,2],[346,1],[348,2],[447,2],[460,2],[476,1],[493,1],[512,1],[542,2],[560,1],[576,1]]},"103":{"position":[[119,2],[142,2],[179,2],[220,2],[230,1],[236,1],[263,2],[282,1],[332,1],[375,1],[381,1],[413,1],[424,1],[436,2],[443,1],[474,2],[481,1],[483,2],[495,2],[502,1],[504,2],[516,2],[523,1],[525,2],[531,1],[557,2],[586,2],[614,2],[653,2],[675,1],[767,1],[798,1],[834,2]]},"105":{"position":[[155,1],[162,2],[192,2],[208,2],[271,2],[295,1],[301,1],[307,1]]},"107":{"position":[[181,2],[186,1],[214,2],[271,2],[279,1],[333,2],[358,2],[372,1],[374,2],[388,1],[390,2],[429,1],[453,1],[465,1],[494,1],[506,1],[552,2],[567,1],[569,2],[608,2],[617,1],[619,2],[633,2],[655,1],[657,2],[671,1],[677,1],[682,1],[691,1],[708,1],[742,1],[755,1],[774,1],[781,1],[802,1],[822,1]]},"110":{"position":[[60,1],[118,2],[137,1],[210,1],[247,2],[269,2],[322,1],[426,1],[445,1],[478,1],[485,1],[511,1],[562,1],[579,2],[592,2],[620,2],[635,2],[665,2],[674,2],[714,1],[773,2],[785,2]]},"112":{"position":[[82,1],[113,2],[131,2],[184,1],[237,2],[266,2],[277,1],[357,2],[385,2],[398,1],[471,1],[503,1],[613,2],[642,1],[739,1],[790,1],[818,1],[946,1],[1032,2],[1045,2],[1102,2],[1113,2],[1195,2],[1220,2],[1266,2],[1315,1],[1347,1],[1374,1]]}}}],["0",{"_index":38,"t":{"2":{"position":[[571,2]]},"10":{"position":[[22,2]]},"47":{"position":[[199,2]]},"49":{"position":[[128,2]]},"63":{"position":[[537,1]]},"68":{"position":[[681,2]]},"70":{"position":[[131,2]]},"76":{"position":[[329,1]]},"78":{"position":[[570,1]]},"89":{"position":[[631,2]]},"97":{"position":[[140,1]]},"99":{"position":[[111,1],[316,2],[578,1]]},"112":{"position":[[291,1],[779,2],[782,2],[926,2],[929,2],[1443,2],[1446,2]]}}}],["0.0",{"_index":19,"t":{"2":{"position":[[208,4]]},"35":{"position":[[725,3]]},"37":{"position":[[301,3],[375,3],[560,3]]},"55":{"position":[[211,3]]},"76":{"position":[[275,4]]},"112":{"position":[[769,4],[916,4],[1433,4]]}}}],["0.0_dp",{"_index":594,"t":{"57":{"position":[[547,6],[573,6],[599,6],[625,6]]}}}],["0.0d0",{"_index":1006,"t":{"107":{"position":[[281,5]]}}}],["0.3142e+01",{"_index":166,"t":{"6":{"position":[[2093,10]]}}}],["0.5",{"_index":733,"t":{"63":{"position":[[571,3]]},"65":{"position":[[657,3]]},"68":{"position":[[441,4]]}}}],["0.939146996",{"_index":1023,"t":{"107":{"position":[[757,11]]}}}],["001234",{"_index":162,"t":{"6":{"position":[[2034,6]]}}}],["005",{"_index":1026,"t":{"107":{"position":[[845,3]]}}}],["01_add.f90",{"_index":111,"t":{"6":{"position":[[706,11],[771,10]]}}}],["09",{"_index":1022,"t":{"107":{"position":[[739,2]]}}}],["1",{"_index":31,"t":{"2":{"position":[[441,2]]},"16":{"position":[[93,2],[132,2],[290,2],[304,2],[1080,1]]},"28":{"position":[[117,2],[161,2],[467,2],[483,2],[649,2],[818,1],[882,3],[903,1],[1117,3],[1209,3],[1292,2],[1465,1],[1484,1],[1486,1],[1490,1],[1492,1]]},"35":{"position":[[461,2],[471,1],[635,1]]},"37":{"position":[[534,2],[546,2],[662,2],[674,2]]},"53":{"position":[[214,2],[638,2],[698,2]]},"55":{"position":[[287,1],[451,2],[565,2],[637,2]]},"57":{"position":[[311,2]]},"59":{"position":[[892,3]]},"63":{"position":[[602,2],[607,1]]},"65":{"position":[[684,2],[689,1]]},"68":{"position":[[132,1],[176,2],[333,2],[405,2],[508,2],[613,2],[727,2],[739,2],[913,2]]},"70":{"position":[[86,1],[171,1]]},"76":{"position":[[128,3],[388,2],[545,2],[670,2]]},"78":{"position":[[125,2],[128,2],[141,2],[144,3],[210,1],[579,2],[716,2],[750,2]]},"89":{"position":[[426,2],[440,2],[445,1]]},"97":{"position":[[111,2],[119,1],[134,1],[488,2],[513,2],[552,1]]},"99":{"position":[[122,1],[137,2],[157,1],[478,2],[509,2],[545,2],[562,1]]},"107":{"position":[[455,2],[673,3],[684,2]]},"110":{"position":[[428,2]]}}}],["1.0",{"_index":412,"t":{"35":{"position":[[714,3],[736,3]]},"37":{"position":[[290,3],[401,3],[427,3]]},"41":{"position":[[214,5]]},"76":{"position":[[231,3]]},"78":{"position":[[481,3],[500,3],[520,3],[539,3]]},"89":{"position":[[729,3]]},"103":{"position":[[232,3]]},"112":{"position":[[764,4],[774,4],[911,4],[921,4],[1428,4],[1438,4]]}}}],["1.0d0",{"_index":1016,"t":{"107":{"position":[[508,6]]}}}],["1.234728",{"_index":148,"t":{"6":{"position":[[1681,8]]}}}],["1.2e2",{"_index":194,"t":{"10":{"position":[[50,6]]}}}],["1.4e4",{"_index":331,"t":{"26":{"position":[[35,6]]}}}],["1.5i",{"_index":202,"t":{"10":{"position":[[120,5]]}}}],["1.8448319779454493e",{"_index":1025,"t":{"107":{"position":[[825,19]]}}}],["10",{"_index":192,"t":{"10":{"position":[[25,3]]},"16":{"position":[[174,4],[211,4],[257,4]]},"26":{"position":[[252,2]]},"28":{"position":[[120,2],[164,2],[470,4],[652,4]]},"53":{"position":[[217,2],[641,2],[701,2]]},"68":{"position":[[341,2],[408,2],[511,2],[616,3],[684,3],[730,4],[742,3],[916,3]]},"70":{"position":[[105,3]]},"81":{"position":[[372,3],[422,2]]},"107":{"position":[[736,2]]}}}],["10**i",{"_index":907,"t":{"89":{"position":[[644,5]]}}}],["10.0",{"_index":911,"t":{"89":{"position":[[740,4]]}}}],["100",{"_index":732,"t":{"63":{"position":[[529,3]]},"68":{"position":[[336,4]]}}}],["100.0",{"_index":913,"t":{"89":{"position":[[752,5]]}}}],["1000",{"_index":611,"t":{"57":{"position":[[1119,6]]}}}],["1000.0",{"_index":915,"t":{"89":{"position":[[765,6]]}}}],["10000.0",{"_index":917,"t":{"89":{"position":[[779,7]]}}}],["100000.0",{"_index":919,"t":{"89":{"position":[[794,8]]}}}],["1000000",{"_index":834,"t":{"76":{"position":[[208,7]]},"78":{"position":[[444,7]]}}}],["10000000",{"_index":1001,"t":{"107":{"position":[[188,8]]}}}],["10^(12",{"_index":258,"t":{"16":{"position":[[1134,7],[1145,7]]}}}],["118.40",{"_index":584,"t":{"57":{"position":[[368,8]]}}}],["11_circ_area.f90",{"_index":811,"t":{"72":{"position":[[956,16],[1417,16]]}}}],["11_const_module.f90",{"_index":810,"t":{"72":{"position":[[927,19]]}}}],["11_const_module.o",{"_index":812,"t":{"72":{"position":[[973,17]]}}}],["12",{"_index":332,"t":{"26":{"position":[[51,2],[71,3]]}}}],["1234",{"_index":159,"t":{"6":{"position":[[1973,4],[1978,4],[2000,4],[2005,4],[2029,4]]}}}],["12_add.f90",{"_index":890,"t":{"87":{"position":[[738,10]]}}}],["12_add_module.f90",{"_index":889,"t":{"87":{"position":[[711,17]]}}}],["12_add_module.o",{"_index":891,"t":{"87":{"position":[[749,15]]}}}],["13",{"_index":339,"t":{"26":{"position":[[255,2]]}}}],["16",{"_index":217,"t":{"16":{"position":[[106,3],[145,3],[179,3],[216,3],[262,3]]}}}],["16_hypotenuse_program.f90",{"_index":641,"t":{"59":{"position":[[681,25],[1186,25]]}}}],["16_hypotenuse_subroutine.f90",{"_index":628,"t":{"59":{"position":[[161,28],[540,28],[641,28]]}}}],["16_hypotenuse_subroutine.o",{"_index":642,"t":{"59":{"position":[[707,26],[1212,26]]}}}],["18",{"_index":517,"t":{"49":{"position":[[211,3],[266,2]]}}}],["2",{"_index":23,"t":{"2":{"position":[[330,2],[384,1]]},"6":{"position":[[1410,1],[1892,1]]},"10":{"position":[[19,2],[62,2]]},"16":{"position":[[96,2],[135,2]]},"26":{"position":[[189,2]]},"28":{"position":[[777,2],[793,3],[826,1],[848,2],[864,3],[905,1],[1075,2],[1143,2],[1165,2],[1235,2],[1295,1],[1453,2]]},"35":{"position":[[624,2]]},"57":{"position":[[1041,1]]},"59":{"position":[[946,3]]},"70":{"position":[[125,2]]},"76":{"position":[[346,1],[511,2]]},"78":{"position":[[111,1]]},"99":{"position":[[146,2],[528,2]]}}}],["2(i4",{"_index":333,"t":{"26":{"position":[[60,10]]}}}],["2.0",{"_index":201,"t":{"10":{"position":[[114,3]]},"35":{"position":[[703,3]]},"37":{"position":[[336,3]]},"41":{"position":[[128,5]]}}}],["2.0000",{"_index":910,"t":{"89":{"position":[[733,6]]}}}],["2.2",{"_index":981,"t":{"103":{"position":[[377,3]]}}}],["2.3d",{"_index":195,"t":{"10":{"position":[[57,4]]}}}],["2.54",{"_index":126,"t":{"6":{"position":[[1045,4]]}}}],["2.5937",{"_index":912,"t":{"89":{"position":[[745,6]]}}}],["2.7048",{"_index":914,"t":{"89":{"position":[[758,6]]}}}],["2.7171",{"_index":916,"t":{"89":{"position":[[772,6]]}}}],["2.71828182",{"_index":799,"t":{"72":{"position":[[317,10]]}}}],["2.7186",{"_index":918,"t":{"89":{"position":[[787,6]]}}}],["2.7220",{"_index":920,"t":{"89":{"position":[[803,6]]}}}],["200",{"_index":250,"t":{"16":{"position":[[942,6]]}}}],["2008",{"_index":961,"t":{"101":{"position":[[64,4]]}}}],["2022",{"_index":1021,"t":{"107":{"position":[[731,4]]}}}],["20a",{"_index":870,"t":{"81":{"position":[[479,4]]}}}],["25",{"_index":144,"t":{"6":{"position":[[1623,2]]}}}],["255",{"_index":1064,"t":{"112":{"position":[[293,3],[785,4],[932,4],[1449,4]]}}}],["256",{"_index":181,"t":{"6":{"position":[[2389,3]]}}}],["27.0",{"_index":843,"t":{"76":{"position":[[662,5]]}}}],["2889.6612",{"_index":585,"t":{"57":{"position":[[386,9]]}}}],["29_mpi_hello_world.f90",{"_index":873,"t":{"81":{"position":[[547,22],[639,22]]}}}],["29_mpi_hello_world.out",{"_index":874,"t":{"81":{"position":[[573,22],[665,22],[728,24]]}}}],["2i4",{"_index":334,"t":{"26":{"position":[[101,7]]},"103":{"position":[[739,8]]}}}],["3",{"_index":28,"t":{"2":{"position":[[419,2]]},"26":{"position":[[281,2]]},"28":{"position":[[780,2],[797,3],[820,1],[851,2],[868,3],[907,1],[1053,2],[1078,2],[1170,2]]},"35":{"position":[[347,1]]},"76":{"position":[[132,2],[675,1]]}}}],["3.0",{"_index":416,"t":{"35":{"position":[[747,3]]},"37":{"position":[[349,3]]},"41":{"position":[[134,4]]},"76":{"position":[[250,3]]}}}],["3.14",{"_index":193,"t":{"10":{"position":[[44,5]]},"63":{"position":[[543,4]]}}}],["3.14159",{"_index":139,"t":{"6":{"position":[[1322,7]]},"14":{"position":[[24,7]]},"41":{"position":[[265,8],[311,8]]}}}],["3.14159265",{"_index":797,"t":{"72":{"position":[[275,10]]}}}],["3.1416",{"_index":164,"t":{"6":{"position":[[2063,6]]}}}],["3.5",{"_index":330,"t":{"26":{"position":[[30,4]]}}}],["4",{"_index":27,"t":{"2":{"position":[[417,1]]},"6":{"position":[[1747,1],[1826,1]]},"16":{"position":[[99,2],[119,3],[138,2],[158,3],[168,2],[192,3],[205,2],[229,3],[251,2],[293,1],[843,1],[967,1]]},"20":{"position":[[199,2]]},"28":{"position":[[783,2],[828,1],[854,2],[911,1],[1083,2],[1173,2]]},"78":{"position":[[239,1]]},"81":{"position":[[701,1],[726,1]]}}}],["4.0",{"_index":450,"t":{"37":{"position":[[388,3],[414,3],[440,3]]},"61":{"position":[[59,3]]},"78":{"position":[[785,3]]}}}],["4.9",{"_index":282,"t":{"20":{"position":[[152,5],[193,5]]}}}],["45",{"_index":619,"t":{"57":{"position":[[1304,2]]}}}],["5",{"_index":283,"t":{"20":{"position":[[158,1]]},"26":{"position":[[284,1]]},"28":{"position":[[786,2],[822,1],[857,2],[913,1],[1086,2],[1178,2]]},"53":{"position":[[309,2]]},"89":{"position":[[228,1]]},"103":{"position":[[415,1]]}}}],["5.0",{"_index":418,"t":{"35":{"position":[[758,3]]},"37":{"position":[[453,3]]},"41":{"position":[[220,4]]},"72":{"position":[[487,4]]}}}],["50000.0",{"_index":1051,"t":{"110":{"position":[[758,8]]}}}],["6",{"_index":154,"t":{"6":{"position":[[1806,1]]},"28":{"position":[[789,3],[830,1],[860,3],[915,1],[1089,3],[1181,3]]},"53":{"position":[[316,1]]}}}],["6.0",{"_index":458,"t":{"37":{"position":[[479,3]]}}}],["6.3781d6",{"_index":592,"t":{"57":{"position":[[519,8]]}}}],["63",{"_index":186,"t":{"8":{"position":[[34,2]]}}}],["65",{"_index":519,"t":{"49":{"position":[[281,3]]}}}],["76.0",{"_index":1044,"t":{"110":{"position":[[480,4],[540,5],[752,5]]}}}],["8",{"_index":216,"t":{"16":{"position":[[102,3],[141,3],[171,2],[208,2],[254,2],[275,3],[365,1],[399,1]]},"26":{"position":[[75,1]]},"103":{"position":[[426,1]]}}}],["86.67",{"_index":582,"t":{"57":{"position":[[349,7]]}}}],["9.0",{"_index":447,"t":{"37":{"position":[[362,3],[466,3]]}}}],["99",{"_index":651,"t":{"59":{"position":[[1087,3],[1098,2]]}}}],["9999816.5167837571",{"_index":1024,"t":{"107":{"position":[[783,18]]}}}],["a(1,1",{"_index":444,"t":{"37":{"position":[[327,6]]}}}],["a(1,2",{"_index":445,"t":{"37":{"position":[[340,6]]}}}],["a(1,3",{"_index":446,"t":{"37":{"position":[[353,6]]}}}],["a(2,1",{"_index":448,"t":{"37":{"position":[[366,6]]}}}],["a(2,2",{"_index":449,"t":{"37":{"position":[[379,6]]}}}],["a(2,3",{"_index":451,"t":{"37":{"position":[[392,6]]}}}],["a(i",{"_index":553,"t":{"55":{"position":[[504,4],[659,4]]}}}],["a(m,k",{"_index":440,"t":{"37":{"position":[[259,7]]}}}],["a)/nh=(b−a)/n",{"_index":721,"t":{"63":{"position":[[169,14]]}}}],["a,/,a",{"_index":24,"t":{"2":{"position":[[344,10]]}}}],["a,f12.4,a",{"_index":610,"t":{"57":{"position":[[1083,14]]}}}],["a,f8.4",{"_index":555,"t":{"55":{"position":[[684,11],[768,11]]}}}],["a,i4,a",{"_index":552,"t":{"55":{"position":[[467,13],[581,13]]}}}],["a.out",{"_index":116,"t":{"6":{"position":[[782,7]]},"72":{"position":[[991,7]]},"87":{"position":[[765,7]]},"114":{"position":[[589,5],[663,7],[745,6]]}}}],["a128",{"_index":61,"t":{"4":{"position":[[222,12]]}}}],["a=0.0",{"_index":758,"t":{"65":{"position":[[922,6]]}}}],["ab",{"_index":471,"t":{"41":{"position":[[191,4]]}}}],["abov",{"_index":109,"t":{"6":{"position":[[678,5]]},"49":{"position":[[409,5]]},"53":{"position":[[460,5]]},"65":{"position":[[23,5]]},"72":{"position":[[389,5]]},"91":{"position":[[182,5]]}}}],["abs(1.0",{"_index":853,"t":{"78":{"position":[[844,7]]}}}],["abs(x",{"_index":275,"t":{"20":{"position":[[22,6]]}}}],["abs_path",{"_index":56,"t":{"4":{"position":[[159,9],[246,8],[310,8]]}}}],["absolut",{"_index":50,"t":{"4":{"position":[[49,8],[291,9]]},"20":{"position":[[29,8]]}}}],["access",{"_index":806,"t":{"72":{"position":[[666,10],[724,10],[830,10]]},"112":{"position":[[948,9]]}}}],["accuraci",{"_index":1020,"t":{"107":{"position":[[646,8],[813,8]]}}}],["aco",{"_index":307,"t":{"22":{"position":[[99,4]]}}}],["adapt",{"_index":676,"t":{"61":{"position":[[375,5]]}}}],["add",{"_index":87,"t":{"6":{"position":[[182,3],[214,3],[388,3]]},"87":{"position":[[571,3],[674,3]]}}}],["add_modul",{"_index":882,"t":{"87":{"position":[[73,10],[514,10],[579,10]]}}}],["add_numb",{"_index":886,"t":{"87":{"position":[[159,12],[341,13],[394,11],[628,13]]}}}],["adult",{"_index":518,"t":{"49":{"position":[[242,7],[308,7]]},"51":{"position":[[170,7],[208,7]]}}}],["advance='no",{"_index":140,"t":{"6":{"position":[[1346,13]]}}}],["ag",{"_index":514,"t":{"49":{"position":[[67,3],[98,4],[113,3],[120,4],[185,5],[204,4],[258,4],[275,3]]},"51":{"position":[[67,3],[98,4],[113,3],[129,5]]},"110":{"position":[[197,3],[668,5]]}}}],["age_group",{"_index":513,"t":{"49":{"position":[[32,9],[367,9]]}}}],["age_select",{"_index":523,"t":{"51":{"position":[[31,10],[276,10]]}}}],["albert",{"_index":1041,"t":{"110":{"position":[[447,7],[521,7],[733,7]]}}}],["alia",{"_index":971,"t":{"103":{"position":[[25,5]]}}}],["alloc",{"_index":359,"t":{"28":{"position":[[557,10],[689,10]]},"55":{"position":[[25,11]]},"103":{"position":[[334,8]]},"112":{"position":[[1320,8]]}}}],["allocat",{"_index":360,"t":{"28":{"position":[[573,12],[609,11]]},"35":{"position":[[389,11],[426,11]]},"55":{"position":[[133,11],[170,11]]},"112":{"position":[[560,11],[601,11]]}}}],["allocate(a(length",{"_index":549,"t":{"55":{"position":[[363,19]]}}}],["allocate(b(length",{"_index":550,"t":{"55":{"position":[[383,19]]}}}],["allocate(colored_lin",{"_index":1093,"t":{"112":{"position":[[1376,22]]}}}],["allocate(p2",{"_index":979,"t":{"103":{"position":[[269,12]]}}}],["allocate(vector_lin",{"_index":1077,"t":{"112":{"position":[[860,21]]}}}],["allocate(vector_line_type::vector_lin",{"_index":1076,"t":{"112":{"position":[[820,39]]}}}],["allocate(x(n",{"_index":408,"t":{"35":{"position":[[666,14]]}}}],["allocate(y(n",{"_index":409,"t":{"35":{"position":[[681,14]]}}}],["allow",{"_index":105,"t":{"6":{"position":[[594,7]]},"72":{"position":[[804,6]]}}}],["alpha",{"_index":432,"t":{"37":{"position":[[81,6],[182,6],[282,5],[607,6]]}}}],["alphanumer",{"_index":188,"t":{"8":{"position":[[69,12]]}}}],["alt",{"_index":425,"t":{"35":{"position":[[901,5]]}}}],["altern",{"_index":401,"t":{"35":{"position":[[578,9]]},"110":{"position":[[487,14]]},"112":{"position":[[792,11]]}}}],["an=h[f(a)2+f(a+h)+f(a+2h)+⋯+f(b)2]a_n",{"_index":722,"t":{"63":{"position":[[206,37]]}}}],["analyt",{"_index":842,"t":{"76":{"position":[[638,11]]}}}],["anoth",{"_index":119,"t":{"6":{"position":[[806,7]]},"28":{"position":[[294,7]]}}}],["appropri",{"_index":686,"t":{"61":{"position":[[520,11]]}}}],["approxim",{"_index":844,"t":{"78":{"position":[[8,11],[327,11]]}}}],["apt",{"_index":384,"t":{"33":{"position":[[35,3]]},"114":{"position":[[263,3]]}}}],["area",{"_index":709,"t":{"63":{"position":[[22,4],[184,4],[394,4],[504,4],[564,4],[609,4],[616,4],[643,4],[654,4],[668,5],[679,4]]},"65":{"position":[[616,4],[650,4],[691,4],[698,4],[745,4]]},"72":{"position":[[492,4],[497,4],[523,5],[534,4]]},"76":{"position":[[83,4],[286,5],[562,4],[613,5],[624,4]]},"78":{"position":[[218,4]]}}}],["area_rect",{"_index":839,"t":{"76":{"position":[[292,9],[348,9],[569,9]]}}}],["area_under_curv",{"_index":833,"t":{"76":{"position":[[143,16],[689,16]]}}}],["arg",{"_index":16,"t":{"2":{"position":[[190,3],[488,4],[599,3]]}}}],["argument",{"_index":6,"t":{"2":{"position":[[82,10],[279,9],[386,12],[505,8]]},"20":{"position":[[59,8]]},"65":{"position":[[135,8]]}}}],["arithmet",{"_index":83,"t":{"6":{"position":[[110,10]]},"41":{"position":[[322,10]]}}}],["arr",{"_index":978,"t":{"103":{"position":[[223,3],[439,3],[748,3]]}}}],["arr(1",{"_index":982,"t":{"103":{"position":[[406,6]]}}}],["arr(2",{"_index":983,"t":{"103":{"position":[[417,6]]}}}],["array",{"_index":342,"t":{"28":{"position":[[29,5],[43,5],[207,5],[352,6],[551,5],[683,5],[741,5],[1374,5]]},"35":{"position":[[563,6],[588,5]]},"55":{"position":[[19,5],[425,5],[539,5]]},"110":{"position":[[335,5]]}}}],["array2",{"_index":355,"t":{"28":{"position":[[385,6],[536,6]]}}}],["article’",{"_index":664,"t":{"61":{"position":[[149,9]]}}}],["asin",{"_index":301,"t":{"22":{"position":[[40,4]]}}}],["asin(sqrt(a",{"_index":609,"t":{"57":{"position":[[1063,13]]}}}],["ask",{"_index":79,"t":{"6":{"position":[[70,4]]}}}],["assign",{"_index":353,"t":{"28":{"position":[[342,6],[717,6],[1359,6],[1402,9]]},"112":{"position":[[699,8],[811,6]]}}}],["associ",{"_index":986,"t":{"103":{"position":[[539,11],[574,11],[677,10]]}}}],["associated(p1",{"_index":987,"t":{"103":{"position":[[589,14],[656,14]]}}}],["ast",{"_index":433,"t":{"37":{"position":[[90,4]]}}}],["atan",{"_index":311,"t":{"22":{"position":[[160,4]]}}}],["atan(1.0",{"_index":618,"t":{"57":{"position":[[1292,9]]}}}],["atan(1.0d0",{"_index":246,"t":{"16":{"position":[[847,11],[971,11]]},"78":{"position":[[881,12],[896,11]]}}}],["atan2",{"_index":312,"t":{"22":{"position":[[177,5]]}}}],["attribut",{"_index":658,"t":{"61":{"position":[[47,11],[492,11]]}}}],["avail",{"_index":219,"t":{"16":{"position":[[313,9]]}}}],["avoid",{"_index":264,"t":{"18":{"position":[[85,7]]}}}],["b",{"_index":89,"t":{"6":{"position":[[246,2],[303,1],[316,1],[331,1],[361,2]]},"28":{"position":[[1149,1],[1281,2]]},"37":{"position":[[95,1],[620,2]]},"55":{"position":[[185,1],[835,2]]},"57":{"position":[[793,1],[847,1]]},"63":{"position":[[498,2],[539,1],[552,2]]},"65":{"position":[[392,2],[554,1],[638,2]]},"105":{"position":[[87,1],[168,1],[183,2],[214,1],[244,2],[277,1],[303,1],[305,1]]},"112":{"position":[[275,1]]}}}],["b(1,1",{"_index":452,"t":{"37":{"position":[[405,6]]}}}],["b(1,2",{"_index":453,"t":{"37":{"position":[[418,6]]}}}],["b(2,1",{"_index":454,"t":{"37":{"position":[[431,6]]}}}],["b(2,2",{"_index":455,"t":{"37":{"position":[[444,6]]}}}],["b(3,1",{"_index":456,"t":{"37":{"position":[[457,6]]}}}],["b(3,2",{"_index":457,"t":{"37":{"position":[[470,6]]}}}],["b(i",{"_index":554,"t":{"55":{"position":[[618,4],[666,4]]}}}],["b(k,n",{"_index":441,"t":{"37":{"position":[[267,7]]}}}],["b=3.14159",{"_index":759,"t":{"65":{"position":[[929,10]]}}}],["b^2}c=a2+b2",{"_index":625,"t":{"59":{"position":[[77,12]]}}}],["base",{"_index":766,"t":{"68":{"position":[[378,5]]},"112":{"position":[[93,4],[197,4]]}}}],["basic",{"_index":466,"t":{"41":{"position":[[0,5]]},"93":{"position":[[112,9]]}}}],["befor",{"_index":813,"t":{"72":{"position":[[1032,6],[1132,6]]}}}],["beforehand",{"_index":262,"t":{"18":{"position":[[45,11]]}}}],["below",{"_index":984,"t":{"103":{"position":[[445,5]]}}}],["benchmark",{"_index":1014,"t":{"107":{"position":[[438,9]]}}}],["beta",{"_index":434,"t":{"37":{"position":[[99,5],[189,4],[294,4],[626,5]]}}}],["between",{"_index":563,"t":{"57":{"position":[[23,7],[188,7]]}}}],["binari",{"_index":1112,"t":{"114":{"position":[[571,6]]}}}],["bit",{"_index":1079,"t":{"112":{"position":[[970,3]]}}}],["bla",{"_index":381,"t":{"33":{"position":[[8,4]]},"35":{"position":[[237,4]]}}}],["blank",{"_index":326,"t":{"24":{"position":[[102,5]]}}}],["blaslib",{"_index":385,"t":{"33":{"position":[[47,7]]}}}],["block",{"_index":927,"t":{"93":{"position":[[10,5]]}}}],["bna(36.12",{"_index":581,"t":{"57":{"position":[[338,10]]}}}],["bodi",{"_index":937,"t":{"95":{"position":[[118,5]]}}}],["both",{"_index":97,"t":{"6":{"position":[[486,4]]},"16":{"position":[[522,4]]},"35":{"position":[[525,4]]},"72":{"position":[[1068,4]]},"103":{"position":[[705,4]]}}}],["bound",{"_index":713,"t":{"63":{"position":[[67,6]]}}}],["brainerd",{"_index":964,"t":{"101":{"position":[[93,8]]}}}],["break",{"_index":174,"t":{"6":{"position":[[2247,5]]},"26":{"position":[[116,6],[181,7]]}}}],["brew",{"_index":1107,"t":{"114":{"position":[[327,4]]}}}],["build",{"_index":679,"t":{"61":{"position":[[405,5]]}}}],["built",{"_index":557,"t":{"55":{"position":[[736,5],[797,5]]}}}],["byte",{"_index":227,"t":{"16":{"position":[[452,6]]}}}],["c",{"_index":459,"t":{"37":{"position":[[507,1],[632,2],[653,1],[688,5]]},"59":{"position":[[159,1],[538,1],[639,1]]},"72":{"position":[[925,1]]},"87":{"position":[[709,1]]},"114":{"position":[[976,1]]}}}],["c(i,j",{"_index":461,"t":{"37":{"position":[[551,6],[712,6]]}}}],["c(m,n",{"_index":442,"t":{"37":{"position":[[275,6]]}}}],["c=a2+b2c",{"_index":623,"t":{"59":{"position":[[54,8]]}}}],["cabs(z",{"_index":472,"t":{"41":{"position":[[201,7]]}}}],["cacul",{"_index":730,"t":{"63":{"position":[[381,8]]}}}],["calcul",{"_index":127,"t":{"6":{"position":[[1107,9],[1195,9]]},"37":{"position":[[6,10]]},"47":{"position":[[0,9],[79,9]]},"57":{"position":[[165,9]]},"59":{"position":[[18,10],[815,9]]},"63":{"position":[[8,9]]},"65":{"position":[[201,12]]},"68":{"position":[[0,9]]},"76":{"position":[[73,9]]},"97":{"position":[[0,9],[82,9],[233,10]]},"99":{"position":[[0,9],[241,10]]}}}],["calculate_hypotenus",{"_index":637,"t":{"59":{"position":[[483,20]]}}}],["calculate_hypotenuse(s1",{"_index":650,"t":{"59":{"position":[[1040,24]]}}}],["calculate_hypotenuse(side_a",{"_index":629,"t":{"59":{"position":[[201,28]]}}}],["call",{"_index":32,"t":{"2":{"position":[[459,4]]},"4":{"position":[[587,4],[695,4]]},"37":{"position":[[578,4]]},"43":{"position":[[7,4],[203,4],[266,4]]},"59":{"position":[[985,4],[1015,7],[1035,4]]},"65":{"position":[[153,7]]},"68":{"position":[[411,4]]},"76":{"position":[[401,4],[423,4]]},"78":{"position":[[592,4],[614,4]]},"81":{"position":[[165,4],[187,4],[247,4],[304,4],[484,4]]},"87":{"position":[[604,4],[623,4],[642,4]]},"93":{"position":[[64,7],[92,4]]},"97":{"position":[[296,4],[496,4]]},"105":{"position":[[170,4]]},"107":{"position":[[297,4],[403,4],[522,4]]}}}],["carlo",{"_index":831,"t":{"76":{"position":[[43,5]]},"78":{"position":[[44,5]]}}}],["case",{"_index":95,"t":{"6":{"position":[[444,4]]},"8":{"position":[[154,4]]},"33":{"position":[[125,4]]},"51":{"position":[[124,4],[135,4]]}}}],["case(18:64",{"_index":525,"t":{"51":{"position":[[178,11]]}}}],["case(65",{"_index":526,"t":{"51":{"position":[[216,9]]}}}],["cc⇐αa∗b+βc",{"_index":435,"t":{"37":{"position":[[105,10]]}}}],["cdot",{"_index":727,"t":{"63":{"position":[[290,6]]}}}],["centimet",{"_index":120,"t":{"6":{"position":[[843,10],[907,10],[1007,10]]}}}],["certain",{"_index":826,"t":{"74":{"position":[[60,7]]}}}],["chang",{"_index":690,"t":{"61":{"position":[[587,7]]},"91":{"position":[[21,6],[128,8]]}}}],["charact",{"_index":177,"t":{"6":{"position":[[2265,9]]},"8":{"position":[[37,11],[82,10],[116,9]]},"10":{"position":[[152,10]]},"16":{"position":[[279,10]]},"24":{"position":[[108,9]]},"81":{"position":[[114,10]]}}}],["character(len=128",{"_index":54,"t":{"4":{"position":[[125,18],[346,18],[413,19],[458,18]]}}}],["character(len=20",{"_index":209,"t":{"12":{"position":[[86,17]]}}}],["character(len=32",{"_index":14,"t":{"2":{"position":[[169,17]]}}}],["character(len=64",{"_index":1029,"t":{"110":{"position":[[169,17]]}}}],["character(len=8",{"_index":1002,"t":{"107":{"position":[[197,16]]}}}],["check",{"_index":985,"t":{"103":{"position":[[533,5]]}}}],["choic",{"_index":1109,"t":{"114":{"position":[[405,6]]}}}],["circ",{"_index":134,"t":{"6":{"position":[[1261,4],[1483,4]]}}}],["circ_area",{"_index":801,"t":{"72":{"position":[[432,9],[551,9]]}}}],["circl",{"_index":129,"t":{"6":{"position":[[1140,6],[1228,6],[1381,7],[1452,6]]},"78":{"position":[[193,6],[271,6],[300,8]]}}}],["circum",{"_index":136,"t":{"6":{"position":[[1291,6],[1401,6],[1464,6]]}}}],["circumfer",{"_index":128,"t":{"6":{"position":[[1121,13],[1209,13],[1430,14]]},"12":{"position":[[42,13]]}}}],["class",{"_index":1070,"t":{"112":{"position":[[473,5],[665,5],[1246,5]]}}}],["class(line_typ",{"_index":1071,"t":{"112":{"position":[[583,17]]}}}],["close(unit=1",{"_index":535,"t":{"53":{"position":[[249,13],[676,13]]}}}],["cm",{"_index":124,"t":{"6":{"position":[[966,3],[1030,2],[1040,2]]}}}],["cm2inch",{"_index":123,"t":{"6":{"position":[[936,7],[1099,7]]}}}],["cmplx(1.0",{"_index":473,"t":{"41":{"position":[[254,10]]}}}],["co",{"_index":305,"t":{"22":{"position":[[79,3],[124,3]]}}}],["code",{"_index":110,"t":{"6":{"position":[[684,4],[745,4]]},"43":{"position":[[339,5]]},"65":{"position":[[51,5],[105,6],[244,4]]},"81":{"position":[[534,5]]},"93":{"position":[[171,5]]},"114":{"position":[[117,6],[428,6],[487,4],[631,5]]}}}],["color",{"_index":1085,"t":{"112":{"position":[[1105,7]]}}}],["colored_lin",{"_index":1072,"t":{"112":{"position":[[616,13],[726,12]]}}}],["colored_line%b",{"_index":1088,"t":{"112":{"position":[[1148,14]]}}}],["colored_line%direct",{"_index":1091,"t":{"112":{"position":[[1223,22]]}}}],["colored_line%g",{"_index":1087,"t":{"112":{"position":[[1132,15]]}}}],["colored_line%r",{"_index":1086,"t":{"112":{"position":[[1116,15]]}}}],["colored_line%x_start",{"_index":1083,"t":{"112":{"position":[[1048,20]]}}}],["colored_line_typ",{"_index":1061,"t":{"112":{"position":[[240,17],[306,17],[708,17]]}}}],["colored_line_type(0.0",{"_index":1075,"t":{"112":{"position":[[741,22]]}}}],["come",{"_index":815,"t":{"72":{"position":[[1127,4]]}}}],["comma",{"_index":327,"t":{"24":{"position":[[121,5]]},"105":{"position":[[147,7]]}}}],["command",{"_index":4,"t":{"2":{"position":[[69,7]]},"43":{"position":[[53,8],[170,7]]},"74":{"position":[[143,7]]}}}],["command_argument_count",{"_index":1,"t":{"2":{"position":[[12,22],[234,24]]}}}],["comment",{"_index":168,"t":{"6":{"position":[[2111,7]]}}}],["commerci",{"_index":683,"t":{"61":{"position":[[451,13]]}}}],["common",{"_index":322,"t":{"22":{"position":[[300,6]]},"61":{"position":[[39,7],[168,7]]}}}],["compil",{"_index":112,"t":{"6":{"position":[[721,7]]},"33":{"position":[[75,7]]},"35":{"position":[[194,8]]},"59":{"position":[[125,7],[504,7],[1155,7]]},"72":{"position":[[875,7],[1023,8],[1171,9],[1223,7],[1297,8]]},"81":{"position":[[522,7],[621,8]]},"87":{"position":[[678,7]]},"114":{"position":[[201,9],[518,8],[849,7]]}}}],["complex",{"_index":200,"t":{"10":{"position":[[96,7]]},"12":{"position":[[56,7]]},"16":{"position":[[196,8],[470,7]]},"20":{"position":[[93,7]]},"22":{"position":[[203,7]]},"41":{"position":[[15,7],[113,7],[139,7],[567,7],[597,8]]}}}],["complex_numb",{"_index":468,"t":{"41":{"position":[[84,14],[642,14]]}}}],["complx(x",{"_index":277,"t":{"20":{"position":[[68,9]]}}}],["compon",{"_index":551,"t":{"55":{"position":[[431,12],[545,12]]}}}],["compos",{"_index":187,"t":{"8":{"position":[[57,8]]}}}],["comput",{"_index":394,"t":{"35":{"position":[[81,9]]},"91":{"position":[[91,9]]},"114":{"position":[[53,10]]}}}],["concaten",{"_index":178,"t":{"6":{"position":[[2291,13]]}}}],["concurr",{"_index":780,"t":{"68":{"position":[[749,11],[824,10],[897,10]]}}}],["condit",{"_index":767,"t":{"68":{"position":[[387,10]]}}}],["conjg(z2",{"_index":480,"t":{"41":{"position":[[620,9]]}}}],["conjug",{"_index":479,"t":{"41":{"position":[[575,9],[606,10]]}}}],["consid",{"_index":272,"t":{"18":{"position":[[262,10]]},"114":{"position":[[155,8]]}}}],["consist",{"_index":930,"t":{"93":{"position":[[122,8]]}}}],["const_modul",{"_index":796,"t":{"72":{"position":[[208,12],[339,12],[446,12]]},"74":{"position":[[23,13],[83,13],[111,13],[167,13],[195,13],[243,13]]}}}],["constant",{"_index":793,"t":{"72":{"position":[[131,9]]}}}],["constants_modul",{"_index":794,"t":{"72":{"position":[[159,17]]}}}],["contain",{"_index":612,"t":{"57":{"position":[[1130,8]]},"65":{"position":[[359,8]]},"85":{"position":[[130,8]]},"87":{"position":[[185,8]]},"89":{"position":[[242,8]]},"91":{"position":[[192,8]]},"97":{"position":[[357,8]]},"99":{"position":[[371,8]]},"105":{"position":[[216,8]]}}}],["continu",{"_index":169,"t":{"6":{"position":[[2138,12]]}}}],["contrast",{"_index":921,"t":{"89":{"position":[[813,8]]}}}],["convers",{"_index":253,"t":{"16":{"position":[[1024,10]]}}}],["convert",{"_index":48,"t":{"4":{"position":[[22,7]]},"6":{"position":[[834,8],[896,10]]},"20":{"position":[[81,8],[167,8],[317,8]]}}}],["copi",{"_index":673,"t":{"61":{"position":[[315,4],[956,4]]}}}],["correct",{"_index":929,"t":{"93":{"position":[[100,8]]}}}],["cos(lat1",{"_index":605,"t":{"57":{"position":[[982,9]]}}}],["cos(lat2",{"_index":606,"t":{"57":{"position":[[994,9]]}}}],["cos(theta))/2",{"_index":579,"t":{"57":{"position":[[316,13]]}}}],["cosh",{"_index":308,"t":{"22":{"position":[[119,4]]}}}],["cosin",{"_index":306,"t":{"22":{"position":[[83,6],[112,6]]}}}],["count",{"_index":847,"t":{"78":{"position":[[156,5]]}}}],["cpu_time(end_tim",{"_index":1017,"t":{"107":{"position":[[527,18]]}}}],["cpu_time(start_tim",{"_index":1012,"t":{"107":{"position":[[408,20]]}}}],["creat",{"_index":817,"t":{"72":{"position":[[1189,6]]},"103":{"position":[[284,7]]},"114":{"position":[[562,6]]}}}],["creativ",{"_index":657,"t":{"61":{"position":[[30,8],[159,8]]}}}],["credit",{"_index":687,"t":{"61":{"position":[[532,7]]}}}],["cup_tim",{"_index":997,"t":{"107":{"position":[[41,8]]}}}],["current",{"_index":771,"t":{"68":{"position":[[471,7]]},"107":{"position":[[58,7]]}}}],["curv",{"_index":710,"t":{"63":{"position":[[37,5],[118,5],[199,6],[407,5]]},"76":{"position":[[98,5]]}}}],["cx",{"_index":208,"t":{"12":{"position":[[67,2]]}}}],["cycl",{"_index":773,"t":{"68":{"position":[[494,6],[529,5]]}}}],["c⇐αa∗b+βcc",{"_index":430,"t":{"37":{"position":[[59,10]]}}}],["d",{"_index":196,"t":{"10":{"position":[[65,1]]}}}],["dangl",{"_index":991,"t":{"103":{"position":[[781,8]]}}}],["data",{"_index":215,"t":{"16":{"position":[[68,4]]},"35":{"position":[[515,4]]},"53":{"position":[[27,4],[420,4],[513,4]]}}}],["data(10",{"_index":541,"t":{"53":{"position":[[575,8]]}}}],["data(ii",{"_index":544,"t":{"53":{"position":[[660,8],[718,8]]}}}],["date",{"_index":998,"t":{"107":{"position":[[66,4],[217,4],[351,6],[724,6]]}}}],["date(1:4",{"_index":1009,"t":{"107":{"position":[[361,10]]}}}],["date(5:6",{"_index":1010,"t":{"107":{"position":[[377,10]]}}}],["date(7:8",{"_index":1011,"t":{"107":{"position":[[393,9]]}}}],["date_and_tim",{"_index":996,"t":{"107":{"position":[[23,13]]}}}],["date_and_time(date=d",{"_index":1007,"t":{"107":{"position":[[302,24]]}}}],["dcmplx(1.0",{"_index":474,"t":{"41":{"position":[[299,11]]}}}],["deallocate(a",{"_index":361,"t":{"28":{"position":[[657,13]]},"55":{"position":[[838,13]]}}}],["deallocate(b",{"_index":561,"t":{"55":{"position":[[852,13]]}}}],["deallocate(colored_lin",{"_index":1092,"t":{"112":{"position":[[1349,24]]}}}],["deallocate(i",{"_index":427,"t":{"35":{"position":[[961,13]]}}}],["deallocate(p2",{"_index":990,"t":{"103":{"position":[[752,14]]}}}],["deallocate(x",{"_index":426,"t":{"35":{"position":[[947,13]]}}}],["debian",{"_index":1103,"t":{"114":{"position":[[250,7]]}}}],["decim",{"_index":155,"t":{"6":{"position":[[1836,7],[1907,7]]},"16":{"position":[[872,7]]}}}],["declar",{"_index":261,"t":{"18":{"position":[[36,8],[154,9]]},"59":{"position":[[266,7]]},"72":{"position":[[624,8]]},"91":{"position":[[148,8]]},"93":{"position":[[181,11]]},"110":{"position":[[324,7]]},"112":{"position":[[546,8]]}}}],["default",{"_index":218,"t":{"16":{"position":[[110,8],[149,8],[183,8],[220,8],[266,8],[295,8]]},"51":{"position":[[140,7]]},"112":{"position":[[1252,7]]},"114":{"position":[[737,7]]}}}],["defin",{"_index":576,"t":{"57":{"position":[[269,7]]},"110":{"position":[[65,7]]},"112":{"position":[[84,6]]}}}],["definit",{"_index":548,"t":{"55":{"position":[[340,10]]}}}],["deg2rad",{"_index":621,"t":{"57":{"position":[[1376,7]]}}}],["deg2rad(degre",{"_index":613,"t":{"57":{"position":[[1148,15]]}}}],["deg2rad(lat1",{"_index":599,"t":{"57":{"position":[[873,13]]}}}],["deg2rad(lat2",{"_index":601,"t":{"57":{"position":[[915,13]]}}}],["deg2rad(lon1",{"_index":600,"t":{"57":{"position":[[894,13]]}}}],["deg2rad(lon2",{"_index":602,"t":{"57":{"position":[[936,13]]}}}],["deg_to_rad",{"_index":617,"t":{"57":{"position":[[1279,10],[1352,10]]}}}],["degre",{"_index":615,"t":{"57":{"position":[[1178,7],[1235,6],[1343,6]]}}}],["depend",{"_index":1114,"t":{"114":{"position":[[793,9]]}}}],["descript",{"_index":274,"t":{"20":{"position":[[10,11]]},"22":{"position":[[10,11]]}}}],["determin",{"_index":266,"t":{"18":{"position":[[193,10]]},"28":{"position":[[249,9]]},"57":{"position":[[0,9]]},"107":{"position":[[85,9]]}}}],["dev",{"_index":386,"t":{"33":{"position":[[55,3],[69,3]]}}}],["dgemm",{"_index":428,"t":{"37":{"position":[[0,5]]}}}],["dgemm('n','n",{"_index":462,"t":{"37":{"position":[[583,14]]}}}],["diamet",{"_index":131,"t":{"6":{"position":[[1157,9]]}}}],["differ",{"_index":820,"t":{"72":{"position":[[1354,9]]}}}],["dimens",{"_index":324,"t":{"24":{"position":[[45,11]]},"28":{"position":[[595,13]]},"35":{"position":[[375,13],[412,13]]},"55":{"position":[[119,13],[156,13]]},"103":{"position":[[157,13]]}}}],["dimension",{"_index":364,"t":{"28":{"position":[[729,11]]}}}],["dimension(10",{"_index":356,"t":{"28":{"position":[[415,13]]}}}],["dimension(2",{"_index":371,"t":{"28":{"position":[[1040,12],[1222,12],[1440,12]]},"103":{"position":[[199,13]]}}}],["dimension(3",{"_index":373,"t":{"28":{"position":[[1130,12]]}}}],["direct",{"_index":1067,"t":{"112":{"position":[[388,9],[405,9],[1210,9]]}}}],["directori",{"_index":821,"t":{"72":{"position":[[1364,10]]},"114":{"position":[[607,9]]}}}],["dist",{"_index":598,"t":{"57":{"position":[[647,4],[1034,4],[1112,4]]}}}],["distanc",{"_index":562,"t":{"57":{"position":[[14,8],[179,8],[377,8],[1098,10]]}}}],["divid",{"_index":716,"t":{"63":{"position":[[107,6]]}}}],["do",{"_index":75,"t":{"6":{"position":[[17,6]]}}}],["done",{"_index":172,"t":{"6":{"position":[[2193,4]]},"12":{"position":[[81,4]]}}}],["dot_product",{"_index":558,"t":{"55":{"position":[[742,11],[803,11]]}}}],["dot_product(a",{"_index":560,"t":{"55":{"position":[[820,14]]}}}],["doubl",{"_index":198,"t":{"10":{"position":[[77,6]]},"16":{"position":[[233,6],[783,6]]},"37":{"position":[[32,6],[165,6],[242,6]]},"41":{"position":[[276,6]]}}}],["dp",{"_index":588,"t":{"57":{"position":[[461,2]]}}}],["du",{"_index":486,"t":{"43":{"position":[[256,2]]}}}],["dummi",{"_index":632,"t":{"59":{"position":[[288,5]]}}}],["dynam",{"_index":358,"t":{"28":{"position":[[543,7],[675,7]]},"55":{"position":[[11,7]]},"112":{"position":[[529,8]]}}}],["e",{"_index":798,"t":{"72":{"position":[[313,1]]},"74":{"position":[[136,1],[216,1],[236,2],[280,1]]}}}],["e12.4",{"_index":165,"t":{"6":{"position":[[2079,10]]}}}],["e8.2",{"_index":157,"t":{"6":{"position":[[1855,9]]}}}],["each",{"_index":1063,"t":{"112":{"position":[[279,4]]}}}],["earch/spher",{"_index":575,"t":{"57":{"position":[[210,12]]}}}],["earth",{"_index":565,"t":{"57":{"position":[[45,5]]}}}],["editor",{"_index":337,"t":{"26":{"position":[[198,7]]},"114":{"position":[[390,6]]}}}],["effect",{"_index":922,"t":{"91":{"position":[[5,7],[282,7]]}}}],["einstein",{"_index":1042,"t":{"110":{"position":[[455,9],[529,10],[741,10]]}}}],["element",{"_index":377,"t":{"28":{"position":[[1380,7]]},"112":{"position":[[958,8]]}}}],["end",{"_index":30,"t":{"2":{"position":[[427,3],[670,3],[702,3]]},"4":{"position":[[319,3],[809,3]]},"6":{"position":[[376,3],[1087,3],[1471,3],[1920,3],[2210,3]]},"28":{"position":[[195,3],[524,3],[1320,3],[1327,3]]},"35":{"position":[[975,3]]},"37":{"position":[[564,3],[571,3],[719,3],[726,3],[733,3]]},"41":{"position":[[630,3]]},"43":{"position":[[358,3]]},"47":{"position":[[327,3]]},"49":{"position":[[348,3],[355,3]]},"51":{"position":[[253,3],[264,3]]},"53":{"position":[[263,3],[669,3],[727,3],[734,3]]},"55":{"position":[[356,3],[509,3],[623,3],[671,3],[866,3]]},"57":{"position":[[1363,3],[1384,3]]},"59":{"position":[[468,3],[1132,3]]},"63":{"position":[[636,3],[684,3]]},"65":{"position":[[502,3],[517,3],[716,3],[750,3],[772,3],[948,3]]},"68":{"position":[[243,3],[359,3],[451,3],[571,3],[935,3]]},"70":{"position":[[152,3],[173,3],[180,3]]},"72":{"position":[[328,3],[539,3]]},"76":{"position":[[548,3],[555,3],[677,3]]},"78":{"position":[[753,3],[760,3],[908,3]]},"81":{"position":[[510,3]]},"87":{"position":[[303,3],[379,3],[475,3],[503,3],[662,3]]},"89":{"position":[[476,3],[491,3],[680,3],[687,3]]},"97":{"position":[[554,3],[561,3],[586,3]]},"99":{"position":[[364,3],[580,3],[587,3],[610,3]]},"103":{"position":[[844,3]]},"105":{"position":[[313,3],[333,3]]},"107":{"position":[[515,3],[687,3]]},"110":{"position":[[201,3],[279,3],[812,3]]},"112":{"position":[[165,3],[297,3],[427,4],[445,3],[1304,3],[1463,3]]}}}],["end_tim",{"_index":1004,"t":{"107":{"position":[[239,8],[572,8]]}}}],["enddo",{"_index":347,"t":{"28":{"position":[[136,5],[189,5],[518,5]]},"53":{"position":[[243,5]]},"68":{"position":[[206,5]]}}}],["endif",{"_index":72,"t":{"4":{"position":[[796,5]]},"47":{"position":[[321,5]]}}}],["endors",{"_index":697,"t":{"61":{"position":[[692,8]]}}}],["enter",{"_index":58,"t":{"4":{"position":[[197,6]]},"6":{"position":[[990,6],[1360,6]]},"24":{"position":[[31,6]]},"49":{"position":[[86,6],[160,5]]},"51":{"position":[[86,6]]},"55":{"position":[[230,6],[412,6],[525,6]]},"59":{"position":[[870,6],[924,6]]},"105":{"position":[[104,6]]}}}],["environ",{"_index":649,"t":{"59":{"position":[[1023,11]]}}}],["eq",{"_index":498,"t":{"45":{"position":[[108,4]]}}}],["equal",{"_index":496,"t":{"45":{"position":[[69,5],[99,5],[113,6],[129,5],[362,5],[390,5],[402,5],[418,5]]}}}],["equival",{"_index":503,"t":{"45":{"position":[[193,10],[215,10]]}}}],["eqv",{"_index":502,"t":{"45":{"position":[[187,5]]}}}],["error",{"_index":515,"t":{"49":{"position":[[145,7]]},"78":{"position":[[833,5]]},"112":{"position":[[1269,7]]}}}],["es9.1",{"_index":329,"t":{"26":{"position":[[14,6]]}}}],["even",{"_index":682,"t":{"61":{"position":[[446,4]]}}}],["even_numb",{"_index":784,"t":{"70":{"position":[[38,12],[192,12]]}}}],["everyth",{"_index":805,"t":{"72":{"position":[[592,10]]}}}],["exampl",{"_index":100,"t":{"6":{"position":[[519,8],[1939,7]]},"10":{"position":[[8,9],[34,9],[104,9]]},"16":{"position":[[763,8]]},"28":{"position":[[302,7],[708,8]]},"39":{"position":[[32,7]]},"49":{"position":[[415,8]]},"53":{"position":[[466,8]]},"55":{"position":[[0,7]]},"61":{"position":[[841,8]]},"72":{"position":[[79,8]]},"107":{"position":[[10,7]]},"112":{"position":[[0,7]]}}}],["except",{"_index":228,"t":{"16":{"position":[[459,6]]}}}],["exclus",{"_index":501,"t":{"45":{"position":[[172,11]]}}}],["execut",{"_index":113,"t":{"6":{"position":[[733,7]]},"43":{"position":[[36,7],[155,7],[187,11],[244,11]]},"65":{"position":[[233,10]]},"87":{"position":[[690,8]]},"91":{"position":[[71,8]]},"93":{"position":[[160,10]]},"107":{"position":[[103,9]]},"114":{"position":[[650,8],[715,10]]}}}],["execute_command_lin",{"_index":481,"t":{"43":{"position":[[12,20]]}}}],["execute_command_line(\"du",{"_index":488,"t":{"43":{"position":[[271,24]]}}}],["execute_command_line(\"l",{"_index":485,"t":{"43":{"position":[[208,26]]}}}],["exit",{"_index":39,"t":{"2":{"position":[[574,4]]},"43":{"position":[[333,5]]},"68":{"position":[[366,4],[446,4]]}}}],["exit_cod",{"_index":483,"t":{"43":{"position":[[143,9],[348,9]]}}}],["exitstat=exit_cod",{"_index":489,"t":{"43":{"position":[[304,19]]}}}],["exp",{"_index":317,"t":{"22":{"position":[[256,3]]}}}],["exp(12.0",{"_index":149,"t":{"6":{"position":[[1692,9]]}}}],["expect",{"_index":35,"t":{"2":{"position":[[517,9]]}}}],["expon",{"_index":247,"t":{"16":{"position":[[894,8]]}}}],["exponenti",{"_index":158,"t":{"6":{"position":[[1875,11]]},"22":{"position":[[260,11]]}}}],["express",{"_index":776,"t":{"68":{"position":[[645,12]]}}}],["extend",{"_index":1030,"t":{"110":{"position":[[212,9]]},"112":{"position":[[186,6]]}}}],["extends(colored_line_typ",{"_index":1065,"t":{"112":{"position":[[330,26]]}}}],["extends(line_typ",{"_index":1060,"t":{"112":{"position":[[218,18]]}}}],["extends(us",{"_index":1031,"t":{"110":{"position":[[233,13]]}}}],["extens",{"_index":1110,"t":{"114":{"position":[[462,9]]}}}],["extern",{"_index":407,"t":{"35":{"position":[[652,8]]},"43":{"position":[[44,8]]},"110":{"position":[[76,8]]}}}],["f",{"_index":752,"t":{"65":{"position":[[515,1]]},"89":{"position":[[240,1],[489,1]]},"112":{"position":[[432,1]]}}}],["f(0",{"_index":947,"t":{"99":{"position":[[104,4]]}}}],["f(1",{"_index":948,"t":{"99":{"position":[[115,4]]}}}],["f(a",{"_index":754,"t":{"65":{"position":[[663,5],[705,3]]}}}],["f(a+2h",{"_index":726,"t":{"63":{"position":[[280,7]]}}}],["f(a+h",{"_index":725,"t":{"63":{"position":[[271,6]]}}}],["f(b",{"_index":755,"t":{"65":{"position":[[671,5]]}}}],["f(n",{"_index":949,"t":{"99":{"position":[[126,4],[133,3],[142,3]]}}}],["f(x",{"_index":749,"t":{"65":{"position":[[441,4]]},"89":{"position":[[260,4],[675,4]]}}}],["f(x)=(1+1x)xf(x",{"_index":896,"t":{"89":{"position":[[55,16]]}}}],["f(x)f(x)f(x",{"_index":711,"t":{"63":{"position":[[43,12]]},"89":{"position":[[35,12]]}}}],["f10.4",{"_index":653,"t":{"59":{"position":[[1125,6]]}}}],["f5.1",{"_index":328,"t":{"26":{"position":[[6,7]]}}}],["f6.4",{"_index":153,"t":{"6":{"position":[[1769,9]]}}}],["f77",{"_index":103,"t":{"6":{"position":[[571,3]]}}}],["f8.1",{"_index":908,"t":{"89":{"position":[[656,7]]}}}],["f8.4",{"_index":163,"t":{"6":{"position":[[2050,9]]},"89":{"position":[[664,7]]}}}],["f90",{"_index":505,"t":{"45":{"position":[[226,3]]},"114":{"position":[[452,4]]}}}],["f_result",{"_index":751,"t":{"65":{"position":[[493,8]]},"89":{"position":[[312,8],[429,8]]}}}],["factori",{"_index":761,"t":{"68":{"position":[[10,10],[59,9],[77,9],[255,9]]},"97":{"position":[[10,9],[92,9],[244,11],[576,9]]}}}],["factorial(input",{"_index":942,"t":{"97":{"position":[[301,16]]}}}],["factorial(n",{"_index":943,"t":{"97":{"position":[[387,12],[501,11]]}}}],["fals",{"_index":205,"t":{"10":{"position":[[143,8]]},"103":{"position":[[696,5]]}}}],["fdefault",{"_index":222,"t":{"16":{"position":[[348,8],[385,8]]}}}],["fib",{"_index":952,"t":{"99":{"position":[[332,7]]}}}],["fibonacci",{"_index":944,"t":{"99":{"position":[[10,9],[85,9],[252,9],[600,9]]}}}],["fibonacci(i",{"_index":953,"t":{"99":{"position":[[351,12]]}}}],["fibonacci(n",{"_index":954,"t":{"99":{"position":[[399,12],[495,11],[514,11]]}}}],["file",{"_index":59,"t":{"4":{"position":[[204,4]]},"6":{"position":[[638,4],[694,4]]},"53":{"position":[[50,5],[108,4],[360,5],[397,5],[430,4],[523,4]]},"72":{"position":[[1103,5],[1208,6],[1275,4],[1325,6],[1339,5]]},"114":{"position":[[457,4],[492,6],[578,4],[830,6],[923,5]]}}}],["file='output.dat",{"_index":531,"t":{"53":{"position":[[173,18],[597,18]]}}}],["file_read",{"_index":540,"t":{"53":{"position":[[536,9],[746,9]]}}}],["file_writ",{"_index":529,"t":{"53":{"position":[[121,10],[275,10]]}}}],["filenam",{"_index":49,"t":{"4":{"position":[[30,9]]}}}],["filename.f90",{"_index":388,"t":{"33":{"position":[[100,12],[167,12]]},"35":{"position":[[212,12],[274,12]]}}}],["find",{"_index":763,"t":{"68":{"position":[[54,4]]},"72":{"position":[[1311,4]]},"107":{"position":[[53,4]]}}}],["first",{"_index":190,"t":{"8":{"position":[[110,5]]},"18":{"position":[[168,5]]},"26":{"position":[[142,6]]},"55":{"position":[[419,5]]},"65":{"position":[[214,5]]},"87":{"position":[[0,5]]},"114":{"position":[[869,5]]}}}],["floor",{"_index":281,"t":{"20":{"position":[[145,6]]}}}],["floor(3.2)=3",{"_index":280,"t":{"20":{"position":[[131,13]]}}}],["floor(a/p)*p",{"_index":298,"t":{"20":{"position":[[375,12]]}}}],["floor(x",{"_index":278,"t":{"20":{"position":[[101,8]]}}}],["follow",{"_index":114,"t":{"6":{"position":[[753,8]]},"45":{"position":[[241,9]]},"59":{"position":[[35,9]]},"61":{"position":[[475,9]]},"107":{"position":[[0,9]]},"114":{"position":[[875,8]]}}}],["format",{"_index":141,"t":{"6":{"position":[[1488,10],[1537,10],[1574,6],[1932,6]]},"61":{"position":[[367,7]]}}}],["format('hello",{"_index":868,"t":{"81":{"position":[[425,13]]}}}],["format('hypotenus",{"_index":652,"t":{"59":{"position":[[1101,18]]}}}],["formula",{"_index":570,"t":{"57":{"position":[[107,7]]},"59":{"position":[[45,8]]}}}],["fortran",{"_index":94,"t":{"6":{"position":[[428,7],[1558,7]]},"16":{"position":[[42,7]]},"18":{"position":[[3,7]]},"41":{"position":[[33,7]]},"43":{"position":[[67,7]]},"85":{"position":[[37,8]]},"95":{"position":[[9,7]]},"101":{"position":[[0,7],[56,7],[125,7],[133,7]]},"103":{"position":[[11,7]]},"114":{"position":[[0,7]]}}}],["fortran.html",{"_index":880,"t":{"83":{"position":[[54,12]]}}}],["forward",{"_index":1090,"t":{"112":{"position":[[1202,7]]}}}],["frac{1}{x}\\right)^xf(x)=(1+x1​)x",{"_index":898,"t":{"89":{"position":[[84,33]]}}}],["frac{f(b)}{2}\\right]an​=h[2f(a)​+f(a+h)+f(a+2h)+⋯+2f(b",{"_index":728,"t":{"63":{"position":[[299,58]]}}}],["free",{"_index":671,"t":{"61":{"position":[[298,4]]}}}],["full",{"_index":706,"t":{"61":{"position":[[951,4]]}}}],["function",{"_index":47,"t":{"4":{"position":[[10,8],[365,8],[813,8]]},"20":{"position":[[0,9]]},"22":{"position":[[0,9],[31,8],[90,8],[151,8]]},"28":{"position":[[237,8]]},"35":{"position":[[34,8]]},"57":{"position":[[1139,8],[1367,8]]},"65":{"position":[[91,8],[368,8],[432,8],[506,8],[754,8]]},"85":{"position":[[62,10]]},"89":{"position":[[251,8],[480,8],[838,9]]},"91":{"position":[[239,8]]},"95":{"position":[[44,9]]},"99":{"position":[[43,9],[390,8],[591,8]]}}}],["function_modul",{"_index":900,"t":{"89":{"position":[[152,15],[502,15],[571,15]]}}}],["function_t",{"_index":906,"t":{"89":{"position":[[552,14],[699,14]]}}}],["g",{"_index":1062,"t":{"112":{"position":[[272,2]]}}}],["gcc",{"_index":1101,"t":{"114":{"position":[[222,3],[275,3],[340,3],[364,4]]}}}],["ge",{"_index":497,"t":{"45":{"position":[[78,4]]}}}],["gener",{"_index":527,"t":{"53":{"position":[[13,8],[443,9]]},"78":{"position":[[66,8]]}}}],["get_abs_path",{"_index":57,"t":{"4":{"position":[[169,12],[521,12],[615,12],[715,12],[822,12]]}}}],["get_abs_path(input_path",{"_index":62,"t":{"4":{"position":[[257,24],[374,24]]}}}],["get_command(arg",{"_index":36,"t":{"2":{"position":[[531,16]]}}}],["get_command_argu",{"_index":2,"t":{"2":{"position":[[39,20]]}}}],["get_command_argument(i",{"_index":33,"t":{"2":{"position":[[464,23]]}}}],["getcwd(prefix",{"_index":70,"t":{"4":{"position":[[700,14]]}}}],["getenv('hom",{"_index":67,"t":{"4":{"position":[[592,14]]}}}],["gfortran",{"_index":115,"t":{"6":{"position":[[762,8]]},"33":{"position":[[91,8],[158,8]]},"35":{"position":[[203,8],[265,8]]},"59":{"position":[[149,8],[528,8],[629,8],[672,8],[1177,8]]},"72":{"position":[[915,8],[947,8],[1403,8]]},"87":{"position":[[699,8],[729,8]]},"114":{"position":[[192,8],[230,8],[279,8],[344,8],[534,8],[752,8],[966,8],[989,8]]}}}],["give",{"_index":685,"t":{"61":{"position":[[515,4],[772,4]]}}}],["given",{"_index":130,"t":{"6":{"position":[[1147,5],[1235,5]]},"16":{"position":[[575,5]]},"57":{"position":[[51,5],[223,5]]},"61":{"position":[[745,6]]}}}],["gnu",{"_index":213,"t":{"16":{"position":[[38,3]]}}}],["greater",{"_index":494,"t":{"45":{"position":[[38,7],[83,7],[333,7],[374,7]]}}}],["greatest",{"_index":279,"t":{"20":{"position":[[110,8]]}}}],["gt",{"_index":493,"t":{"45":{"position":[[33,4]]}}}],["guid",{"_index":960,"t":{"101":{"position":[[47,5],[153,5]]}}}],["h",{"_index":723,"t":{"63":{"position":[[246,1],[501,2],[548,1],[650,1]]},"65":{"position":[[613,2],[634,1],[741,1]]}}}],["h=(b−a)/nh=(b",{"_index":720,"t":{"63":{"position":[[155,13]]}}}],["hard",{"_index":741,"t":{"65":{"position":[[100,4]]}}}],["hav(theta",{"_index":577,"t":{"57":{"position":[[281,10]]}}}],["haversin",{"_index":569,"t":{"57":{"position":[[97,9],[256,9]]}}}],["haversine_formula",{"_index":587,"t":{"57":{"position":[[407,17],[1396,17]]}}}],["hello_world_mpi",{"_index":855,"t":{"81":{"position":[[35,15]]}}}],["here",{"_index":41,"t":{"2":{"position":[[594,4]]},"4":{"position":[[0,4]]},"53":{"position":[[0,4]]},"72":{"position":[[68,4]]}}}],["high",{"_index":363,"t":{"28":{"position":[[724,4]]},"114":{"position":[[25,4]]}}}],["holder",{"_index":668,"t":{"61":{"position":[[254,6]]}}}],["homebrew",{"_index":1106,"t":{"114":{"position":[[317,9]]}}}],["hs",{"_index":487,"t":{"43":{"position":[[260,2],[297,2]]}}}],["http://creativecommons.org/licenses/by/4.0",{"_index":708,"t":{"61":{"position":[[984,43]]}}}],["https://annefou.github.io/fortran/coarrays/coarrays.html",{"_index":379,"t":{"31":{"position":[[0,56]]}}}],["https://curc.readthedocs.io/en/latest/programming/mpi",{"_index":879,"t":{"83":{"position":[[0,53]]}}}],["https://github.com/sourangshughosh/awesomefortranlibrari",{"_index":969,"t":{"101":{"position":[[224,58]]}}}],["https://netlib.org/blas/#_level_1",{"_index":397,"t":{"35":{"position":[[158,33]]}}}],["https://people.math.sc.edu/burkardt/f_src/f_src.html",{"_index":968,"t":{"101":{"position":[[171,52]]}}}],["hyperbol",{"_index":304,"t":{"22":{"position":[[68,10],[128,10],[228,10]]}}}],["hypotenus",{"_index":622,"t":{"59":{"position":[[0,10],[238,11],[379,10],[444,10],[742,10],[825,10],[1144,10]]}}}],["i**2",{"_index":777,"t":{"68":{"position":[[671,5]]}}}],["i*h",{"_index":736,"t":{"63":{"position":[[631,4]]},"65":{"position":[[711,4]]}}}],["i*j",{"_index":779,"t":{"68":{"position":[[716,6]]}}}],["i.",{"_index":934,"t":{"95":{"position":[[73,5]]}}}],["i2",{"_index":348,"t":{"28":{"position":[[173,7],[502,7]]},"81":{"position":[[456,3],[467,3]]}}}],["i3",{"_index":545,"t":{"53":{"position":[[710,7]]}}}],["i4",{"_index":150,"t":{"6":{"position":[[1708,7],[1965,7]]},"26":{"position":[[24,5],[87,5],[93,4],[264,5],[275,5]]},"53":{"position":[[229,7],[652,7]]}}}],["i8",{"_index":160,"t":{"6":{"position":[[1992,7]]}}}],["i8.6",{"_index":161,"t":{"6":{"position":[[2019,9]]}}}],["i greater than <= less than or equal to >= greater than or equal to == equal to /= not equal to","s":"Logical expression and control","u":"/fortran/control","h":"","p":39},{"i":42,"t":"Calculate square root of real positive numbers: src/06_sq_root.f90 ! Program : Calculate square root PROGRAM sq_root IMPLICIT NONE REAL :: input, output PRINT *, \"Input = \" READ *, input IF (input > 0) THEN output = SQRT(input) PRINT *, \"Square root of \", input, \"= \", output ELSE PRINT *, \"Input must be positive real.\" ENDIF END PROGRAM sq_root","s":"IF condition","u":"/fortran/control","h":"#if-condition","p":39},{"i":44,"t":"src/06_multi_way_if.f90 PROGRAM age_group IMPLICIT NONE INTEGER :: age PRINT \"(a,$)\", \"Enter your age: \" READ *, age IF (age <= 0) THEN PRINT *, \"Error: please enter a positive integer age.\" STOP ELSE IF (age < 18) THEN PRINT *, \"You are not adult.\" ELSE IF (age >= 18 .AND. age < 65) THEN PRINT *, \"You are adult.\" ELSE PRINT *, \"You are senior.\" END IF END PROGRAM age_group Notice also the STOP keyword in above example.","s":"Multi-way IFs","u":"/fortran/control","h":"#multi-way-ifs","p":39},{"i":46,"t":"src/06_select_case.f90 PROGRAM age_select IMPLICIT NONE INTEGER :: age PRINT \"(a,$)\", \"Enter your age: \" READ *, age SELECT CASE (age) CASE DEFAULT PRINT *, \"You are not adult.\" CASE(18:64) PRINT *, \"You are adult.\" CASE(65:) PRINT *, \"You are senior.\" END SELECT END PROGRAM age_select","s":"Select case","u":"/fortran/control","h":"#select-case","p":39},{"i":49,"t":"https://annefou.github.io/Fortran/coarrays/coarrays.html","s":"Resouces","u":"/fortran/coarray","h":"#resouces","p":47},{"i":51,"t":"We can call execute_command_line to execute external commands in a FORTRAN program: src/27_exec_command.f90 PROGRAM MAIN IMPLICIT NONE INTEGER exit_code ! Execute system command PRINT *, \"Executing: ls\" CALL execute_command_line(\"ls\") PRINT *, \"Executing: du -hs .\" CALL execute_command_line(\"du -hs .\", exitstat=exit_code) PRINT *, \"Exit code: \", exit_code END","s":"Execute system/external command","u":"/fortran/exec-command","h":"","p":50},{"i":53,"t":"Here we will generate some data and write it to a file: src/08_file_write.f90 ! Program : Write output to a file PROGRAM file_write IMPLICIT NONE INTEGER :: ii OPEN(unit=1, file='output.dat', status='new') DO ii = 1, 10 WRITE(1, '(i4)') ii*ii ENDDO CLOSE(unit=1) END PROGRAM file_write info Note that unit=0, 5, and 6 are reserved. Do not use them to identify files in your programs. Reading from file: we will read the data from file that is generated in the above example. src/09_file_read.f90 ! Program : Read data from file PROGRAM file_read IMPLICIT NONE INTEGER :: ii, data(10) OPEN(unit=1, file='output.dat', status='old') DO ii = 1, 10 READ(1, '(i4)') data(ii) END DO CLOSE(unit=1) DO ii = 1, 10 PRINT '(i3)', data(ii) END DO END PROGRAM file_read","s":"File Input / Output","u":"/fortran/file","h":"","p":52},{"i":55,"t":"Determine the distance between two places on earth given latitude and longitude. Read more about haversine formula in wikipedia page. src/18_haversine_formula.f90 ! calculate the distance between two points on earch/sphere given latitude ! and longitude ! haversine is defined as: hav(theta) = sin^2(theta/2) = (1 - cos(theta))/2 ! test: BNA(36.12,-86.67), LAX(33.94,-118.40), Distance 2889.6612 km PROGRAM haversine_formula IMPLICIT NONE INTEGER, PARAMETER :: DP = KIND(1.0D0) REAL(DP), PARAMETER :: RADIUS_OF_EARTH = 6.3781D6 REAL(DP) :: lat1 = 0.0_DP REAL(DP) :: lon1 = 0.0_DP REAL(DP) :: lat2 = 0.0_DP REAL(DP) :: lon2 = 0.0_DP REAL(DP) :: a, dist PRINT \"(a,$)\", \"Latitude of point A = \" READ *, lat1 PRINT \"(a,$)\", \"Longitude of point A = \" READ *, lon1 PRINT \"(a,$)\", \"Latitude of point B = \" READ *, lat2 PRINT \"(a,$)\", \"Longitude of point B = \" READ *, lon2 lat1 = deg2rad(lat1) lon1 = deg2rad(lon1) lat2 = deg2rad(lat2) lon2 = deg2rad(lon2) a = (SIN((lat1 - lat2)/2))**2 + COS(lat1) * COS(lat2) * & (SIN((lon1 - lon2)/2))**2 dist = 2 * RADIUS_OF_EARTH * ASIN(SQRT(a)) PRINT '(A,F12.4,A)', 'Distance: ', dist / 1000,' km' CONTAINS FUNCTION deg2rad(degree) RESULT(rad) ! degrees to radians REAL(KIND=KIND(0.0D0)), INTENT(IN) :: degree REAL(KIND=KIND(0.0D0)), PARAMETER :: deg_to_rad = ATAN(1.0) / 45 REAL(KIND=KIND(0.0D0)) :: rad rad = degree * deg_to_rad END FUNCTION deg2rad END PROGRAM haversine_formula","s":"Haversine formula","u":"/fortran/haversine","h":"","p":54},{"i":57,"t":"Example of dynamic array allocation: src/19_inner_product.f90 PROGRAM inner_product IMPLICIT NONE INTEGER length REAL, DIMENSION(:), ALLOCATABLE :: a REAL, DIMENSION(:), ALLOCATABLE :: b INTEGER i REAL :: sum = 0.0 PRINT \"(a,$)\", \"Enter length of vectors: \" READ *, length IF ( length < 1 ) then PRINT *, \"Stopping: length must be positive definite.\" STOP END IF ALLOCATE(a(length)) ALLOCATE(b(length)) PRINT *, \"Enter first array components:\" DO i = 1, length PRINT '(A,I4,A,$)', 'a[', i,'] = ' READ *, a(i) END DO PRINT *, \"Enter second array components:\" DO i = 1, length PRINT '(A,I4,A,$)', 'a[', i,'] = ' READ *, b(i) END DO DO i = 1, length sum = sum + a(i) * b(i) END DO PRINT '(A,F8.4)', 'Inner product = ', sum ! we can use in-built dot_product as well PRINT '(A,F8.4)', \"Result using in-built dot_product = \", dot_product(a, b) DEALLOCATE(a) DEALLOCATE(b) END PROGRAM inner_product","s":"Inner product: dynamic array allocation","u":"/fortran/inner-product","h":"","p":56},{"i":59,"t":"We will calculate the area under the curve f(x)f(x)f(x) within the bounds x=ax=ax=a and x=bx=bx=b. We will divide the curve into nnn trapezoids with width h=(b−a)/nh=(b-a)/nh=(b−a)/n. Area under the curve: An=h[f(a)2+f(a+h)+f(a+2h)+⋯+f(b)2]A_n = h \\left[\\frac{f(a)}{2} + f(a+h) + f(a+2h) + \\cdots + \\frac{f(b)}{2}\\right]An​=h[2f(a)​+f(a+h)+f(a+2h)+⋯+2f(b)​] src/10_trapezoid.f90 ! Caculate the area of sine curve using trapezoidal method PROGRAM trapezoid IMPLICIT none INTRINSIC :: sin REAL :: a, b, h, area INTEGER :: i, n n = 100 a = 0 b = 3.14 h = (b - a) / n area = 0.5 * (sin(a) + sin(b)) DO i = 1, n-1 area = area + sin(a + i*h) END DO area = h * area PRINT *, \"Area = \", area END PROGRAM trapezoid","s":"Numerical integration: Trapezoidal method","u":"/fortran/integration","h":"","p":58},{"i":61,"t":"We will try to improve above numerical integration code. Previously we had the integration function hard coded, now we will pass it as argument from the calling program and use separate module for the calculation. First we write our executable code in a module: src/14_integration_module.f90 MODULE integration_module IMPLICIT NONE PRIVATE PUBLIC :: integral CONTAINS FUNCTION integral(f, a, b, n) RESULT(integral_result) INTERFACE FUNCTION f(x) RESULT(f_result) REAL, INTENT(IN) :: x REAL :: f_result END FUNCTION f END INTERFACE REAL, INTENT(IN) :: a, b INTEGER, INTENT(IN) :: n REAL :: integral_result REAL :: h, area INTEGER :: i h = (b - a) / n area = 0.5 * (f(a) + f(b)) DO i = 1, n-1 area = area + f(a + i*h) END DO integral_result = h * area END FUNCTION integral END MODULE integration_module src/14_integration.f90 PROGRAM integration USE integration_module IMPLICIT NONE INTRINSIC :: sin PRINT *, integral(sin, a=0.0, b=3.14159, n=1000) END PROGRAM integration","s":"Numerical integration II","u":"/fortran/integration","h":"#numerical-integration-ii","p":58},{"i":63,"t":"Hypotenuse can be calculated using following formula: c=a2+b2c = \\sqrt{a^2 + b^2}c=a2+b2​ src/16_hypotenuse_subroutine.f90 ! Compile the subroutine: gfortran -c 16_hypotenuse_subroutine.f90 SUBROUTINE calculate_hypotenuse(side_a, side_b, hypotenuse) IMPLICIT NONE ! declare the intent of dummy variables REAL, INTENT(IN) :: side_a REAL, INTENT(IN) :: side_b REAL, INTENT(OUT) :: hypotenuse REAL :: temp temp = side_a * side_a + side_b * side_b hypotenuse = SQRT(temp) END SUBROUTINE calculate_hypotenuse Compile the subroutine: gfortran -c 16_hypotenuse_subroutine.f90 src/16_hypotenuse_program.f90 ! subroutine without module ! gfortran -c 16_hypotenuse_subroutine.f90 ! gfortran 16_hypotenuse_program.f90 16_hypotenuse_subroutine.o PROGRAM hypotenuse IMPLICIT NONE REAL :: s1, s2, output WRITE (*, *) 'Program to calculate hypotenuse of a right triangle' WRITE (*, *) 'Enter length of side 1:' READ (*, *) s1 WRITE (*, *) 'Enter length of side 2:' READ (*, *) s2 ! notice subroutine call can update values in the calling environment CALL calculate_hypotenuse(s1, s2, output) WRITE (*, 99) output 99 FORMAT('Hypotenuse = ', F10.4) END PROGRAM hypotenuse Compile main program: gfortran 16_hypotenuse_program.f90 16_hypotenuse_subroutine.o","s":"Calculate hypotenuse: example of subroutine","u":"/fortran/hypotenuse","h":"","p":62},{"i":66,"t":"Calculate factorial: src/07_factorial.f90 ! Program : Find factorial PROGRAM factorial IMPLICIT NONE INTEGER :: input, ii, output = 1 PRINT *, \"Input = \" READ *, input DO ii = 1, input output = output * ii ENDDO PRINT *, input, \"! = \", output END PROGRAM factorial We can have a step size in a DO loop with a third parameter: DO i = 1, 100, 10 ! do something END DO Exit a loop based on condition: DO i = 1, 10 CALL random_number(x) IF (x > 0.5) EXIT END DO Skip rest of current iteration with cycle: DO i = 1, 10 IF (iseven(i)) CYCLE ! do something with the odd numbers END DO Implied DO loops: PRINT *, (i, i = 1, 10) You can iterate multiple expressions: PRINT *, (i, i**2, i = 0, 10) With nested loops: PRINT *, ((i*j, i = 1, 10), j = 1, 10) DO concurrent: if the iterations of a DO loop are independent, we can use the CONCURRENT keyword to indicate, the loop can be iterated in parallel: DO CONCURRENT (i = 1, 10) ! do something END DO","s":"DO Loop","u":"/fortran/loop","h":"#do-loop","p":64},{"i":68,"t":"src/07_print_even_numbers.f90 PROGRAM even_numbers IMPLICIT NONE INTEGER :: num num = 1 DO WHILE (num <= 10) IF (MODULO(num, 2) == 0) THEN PRINT *, num END IF num = num + 1 END DO END PROGRAM even_numbers","s":"DO WHILE","u":"/fortran/loop","h":"#do-while","p":64},{"i":70,"t":"This work is licensed under a Creative Commons Attribution 4.0 International License. Any third party materials in this work are not included in the article’s Creative Commons license, and users will need to obtain permission from the respective license holder to reproduce such materials. You are free to: Share — copy and redistribute the material in any medium or format. Adapt — remix, transform, and build upon the material for any purpose, even commercially. Under the following terms: Attribution — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use. Notices: No warranties are given. The license may not give you all of the permissions necessary for your intended use. For example, other rights such as publicity, privacy, or moral rights may limit how you use the material. To view full copy of this license, visit http://creativecommons.org/licenses/by/4.0/","s":"License","u":"/fortran/license","h":"","p":69},{"i":72,"t":"Large programs can be organized in separate modules and procedures. Here is an example. We store various mathematical and physical constants in a module named constants_module. src/11_const_module.f90 MODULE const_module IMPLICIT none PRIVATE REAL, PUBLIC, PARAMETER :: pi = 3.14159265 REAL, PUBLIC, PARAMETER :: e = 2.71828182 END MODULE const_module Now we write a program that uses the above module: src/11_circ_area.f90 PROGRAM circ_area USE const_module IMPLICIT none REAL :: rad = 5.0, area area = pi*rad**2 PRINT *, \"Area = \", area END PROGRAM circ_area The PRIVATE keyword makes sure everything is private otherwise declared as PUBLIC. Private variables are accessible only to the module, while public variables are accessible to the programs that uses it. There is also PROTECTED keyword, which allows the variable to be accessible but the value cannot be modified. Compile and run our module and program: gfortran -c 11_const_module.f90 gfortran 11_circ_area.f90 11_const_module.o ./a.out note Modules need to be compiled before the program that uses it. If both are placed in the same source file, the module should come before the program. Once the module is compiled, it will create .o and .mod files. When we compile the program, we only need to provide the .o file for linking, the compiler will find the .mod files. If the files are on a different directory, specify via -I option. gfortran -I./ 11_circ_area.f90","s":"Modules","u":"/fortran/modules","h":"","p":71},{"i":74,"t":"Rename a variable: use const_module, math_pi => pi Use only certain variables: use const_module, only : pi use const_module, only : pi, e Last command is same as: use const_module, only : pi use const_module, only : e Use pi and rename e: use const_module, only : pi, log_base => e","s":"USE keyword","u":"/fortran/modules","h":"#use-keyword","p":71},{"i":77,"t":"src/29_MPI_hello_world.f90 PROGRAM hello_world_mpi INCLUDE 'mpif.h' INTEGER process_rank, size_of_cluster, ierror CHARACTER* (MPI_MAX_PROCESSOR_NAME) processor_name CALL MPI_INIT(ierror) CALL MPI_COMM_SIZE(MPI_COMM_WORLD, size_of_cluster, ierror) CALL MPI_COMM_RANK(MPI_COMM_WORLD, process_rank, ierror) CALL MPI_GET_PROCESSOR_NAME(processor_name, namelen, ierr) WRITE(*, 10) process_rank, size_of_cluster, processor_name 10 FORMAT('Hello from process: ', I2, ' of', I2, ' on ', 20A) CALL MPI_FINALIZE(ierror) END PROGRAM Compile the code: mpif90 29_MPI_hello_world.f90 -o 29_MPI_hello_world.out # if you are using intel compiler mpiifort 29_MPI_hello_world.f90 -o 29_MPI_hello_world.out Let's run on 4 processors: mpirun -np 4 ./29_MPI_hello_world.out","s":"MPI Hello World","u":"/fortran/mpi","h":"#mpi-hello-world","p":75},{"i":79,"t":"https://curc.readthedocs.io/en/latest/programming/MPI-Fortran.html","s":"Resources","u":"/fortran/mpi","h":"#resources","p":75},{"i":81,"t":"src/20_monte_carlo_integration.f90 ! Monte carlo method of integration ! calculate area under the curve y = x^2 within x limits [1, 3] PROGRAM area_under_curve IMPLICIT NONE INTEGER, PARAMETER :: iteration = 1000000 REAL :: x_lo = 1.0 REAL :: x_hi = 3.0 REAL :: x, y, y_lo = 0.0, y_hi, area, area_rect INTEGER :: i, monte_area = 0 y_hi = x_hi ** 2 area_rect = y_hi * (x_hi - x_lo) DO i = 1, iteration CALL random_number(x) CALL random_number(y) x = x_lo + x * (x_hi - x_lo); y = y * (y_hi - y_lo); IF (y < x ** 2) THEN monte_area = monte_area + 1; END IF END DO area = area_rect * monte_area / iteration PRINT *, \"Area = \", area PRINT *, \"Analytical result = \", (27.0 - 1) / 3 END PROGRAM area_under_curve","s":"Area under the curve by Monte Carlo method","u":"/fortran/monte-carlo-integration","h":"","p":80},{"i":83,"t":"We will approximate value of π\\piπ by Monte Carlo method. We will generate random number in a square of radius 2 unit; x = (-1, 1) and y = (-1, 1). We will count how many points are inside the circle of radius 1 unit. Area of the square = 4 square unit, while the are of circle is π\\piπ (unit radius circle). Use this ratio to approximate the value of π\\piπ. src/20_monte_carlo_pi.f90 PROGRAM pi IMPLICIT NONE INTEGER, PARAMETER :: iteration = 1000000 REAL :: x, y REAL :: x_lo = -1.0 REAL :: x_hi = 1.0 REAL :: y_lo = -1.0 REAL :: y_hi = 1.0 INTEGER :: i, monte_area = 0 DO i = 1, iteration CALL random_number(x) CALL random_number(y) x = x_lo + x * (x_hi - x_lo); y = y_lo + y * (y_hi - y_lo); IF (x * x + y * y < 1) THEN monte_area = monte_area + 1; END IF END DO PRINT *, \"pi = \", 4.0 * monte_area / iteration PRINT *, \"relative error = \", abs(1.0 * monte_area / iteration & - ATAN(1.0D0)) / ATAN(1.0D0) END PROGRAM pi","s":"Determine value of pi by Monte Carlo method","u":"/fortran/monte-carlo-pi","h":"","p":82},{"i":85,"t":"Pointer in FORTRAN is an alias to a variable or procedure. src/28_pointer.f90 PROGRAM MAIN IMPLICIT NONE REAL, POINTER :: p1, p2 REAL, TARGET :: r1 INTEGER, DIMENSION(:), POINTER :: ptr_arr INTEGER, DIMENSION(2), TARGET :: arr r1 = 1.0 ! set p1 to point to r1 p1 => r1 ALLOCATE(p2) ! creates a storage space without a variable name ! allocate (p1, stat=allocation_status) p2 = 2.2 ! this value has no name arr(1) = 5 arr(2) = 8 ptr_arr => arr ! below two are the same PRINT *, \"r1 = \", r1 PRINT *, \"p1 = \", p1 PRINT *, \"p2 = \", p2 ! check association PRINT *, \"Is p1 and r1 associated? \", ASSOCIATED(p1, r1) PRINT *, \"Is p1 and p2 point to same object? \", ASSOCIATED(p1, p2) ! associated returns false if both pointers point to null PRINT \"(2i4)\", arr DEALLOCATE(p2) ! now p2 is a dangling pointer ! it can be set to point to null p2 => NULL() END","s":"Pointer","u":"/fortran/pointer","h":"","p":84},{"i":87,"t":"Ordinary FORTRAN procedures (subroutine and function) are not recursive, i.e., they cannot invoke themselves in their body. We can use the RECURSIVE keyword to implement recursive procedures.","s":"Recursion","u":"/fortran/recursion","h":"","p":86},{"i":89,"t":"Calculate factorial using recursive subroutine: src/21_recursive_subroutine.f90 ! Calculate factorial ! | n(n -1) n >= 1 ! n! = | ! | 1 n = 0 PROGRAM recursive_subroutine IMPLICIT NONE INTEGER :: input, output PRINT *, \"This program calculates factorial:\" PRINT '(a,$)', \"Input = \" READ *, input CALL factorial(input, output) PRINT *, input, \"! = \", output CONTAINS RECURSIVE SUBROUTINE factorial(n, result) INTEGER, INTENT(IN) :: n INTEGER, INTENT(OUT) :: result INTEGER :: tmp IF (n >= 1) THEN CALL factorial(n-1, tmp) result = n * tmp ELSE result = 1 END IF END SUBROUTINE factorial END PROGRAM recursive_subroutine","s":"Recursive subroutine","u":"/fortran/recursion","h":"#recursive-subroutine","p":86},{"i":91,"t":"Calculate fibonacci series using recursive function: src/21_recursive_function.f90 ! Fibonacci series ! F(0) = 0 ! F(1) = 1 ! F(n) = F(n-1) + F(n-2) for n > 1 PROGRAM recursive_function IMPLICIT NONE INTEGER :: lim, i PRINT *, \"This program calculates fibonacci series:\" PRINT '(a,$)', \"Limit = \" READ *, lim DO i = 0, lim PRINT *, \"Fib(\", i, \") = \", fibonacci(i) END DO CONTAINS RECURSIVE FUNCTION fibonacci(n) RESULT(output) INTEGER, INTENT(IN) :: n INTEGER :: output IF (n > 1) THEN output = fibonacci(n - 1) + fibonacci(n - 2) ELSE IF (n == 1) THEN output = 1 ELSE output = 0 END IF END FUNCTION fibonacci END PROGRAM recursive_function","s":"Recursive function","u":"/fortran/recursion","h":"#recursive-function","p":86},{"i":93,"t":"There are two types of procedures in Fortran: subroutines and functions. All procedures should be placed in a module or after the contains keyword in a main program.","s":"Procedures","u":"/fortran/procedures","h":"","p":92},{"i":95,"t":"First we write the subroutines in a module: src/12_add_module.f90 MODULE add_module IMPLICIT none PRIVATE REAL :: input1, input2, total PUBLIC :: read_inputs, add_numbers, print_result CONTAINS SUBROUTINE read_inputs() PRINT \"(a,$)\", \"Input1 = \" READ *, input1 PRINT \"(a,$)\", \"Input2 = \" READ *, input2 END SUBROUTINE read_inputs SUBROUTINE add_numbers() total = input1 + input2 END SUBROUTINE add_numbers SUBROUTINE print_result PRINT *, input1, \" + \", input2, \" = \", total END SUBROUTINE print_result END MODULE add_module Now write our program: src/12_add.f90 PROGRAM add USE add_module IMPLICIT none CALL read_inputs() CALL add_numbers() CALL print_result() END PROGRAM add Compile and execute: gfortran -c 12_add_module.f90 gfortran 12_add.f90 12_add_module.o ./a.out","s":"Subroutine","u":"/fortran/procedures","h":"#subroutine","p":92},{"i":97,"t":"We want to print a table of xxx vs f(x)f(x)f(x) where: f(x)=(1+1x)xf(x) = \\left(1 + \\frac{1}{x}\\right)^xf(x)=(1+x1​)x src/13_function_module.f90 MODULE function_module IMPLICIT NONE PRIVATE INTEGER, PARAMETER, PUBLIC :: power = 5 PUBLIC :: f CONTAINS FUNCTION f(x) RESULT(f_result) REAL, INTENT(IN) :: x REAL :: f_result ! SELECTED_REAL_KIND(precision [, range]) INTEGER, PARAMETER :: kind_needed = selected_real_kind(power + 1) f_result = (1 + 1 / REAL(x, kind_needed)) ** x END FUNCTION f END MODULE function_module src/13_function_table.f90 PROGRAM function_table USE function_module IMPLICIT NONE REAL :: x INTEGER :: i DO i = 0, power x = 10**i PRINT \"(f8.1, f8.4)\", x, f(x) END DO END PROGRAM function_table Sample output: 1.0 2.0000 10.0 2.5937 100.0 2.7048 1000.0 2.7171 10000.0 2.7186 100000.0 2.7220 In contrast to subroutines, functions must provide a return value.","s":"Function","u":"/fortran/procedures","h":"#function","p":92},{"i":99,"t":"Side effects are the change in status of a program when a procedure is executed other than computing a value to return, such as changing a variable declared in the program or module above the contains statement. One can indicate whether a function or subroutine is pure or has side effects by using the keywords pure and impure, respectively.","s":"Pure procedures and side effects","u":"/fortran/procedures","h":"#pure-procedures-and-side-effects","p":92},{"i":101,"t":"Interface block is used to provide necessary information to the calling program whether the call is correct. It basically consists of the procedure without the executable code, and declaration of local variables.","s":"Interface blocks","u":"/fortran/procedures","h":"#interface-blocks","p":92},{"i":103,"t":"Fortran Programming Manual by Tanja van Mourik Guide to Fortran 2008 Programming by Walter S Brainerd Introduction to modern FORTRAN Fortran Programming Guide from Oracle https://people.math.sc.edu/Burkardt/f_src/f_src.html https://github.com/SourangshuGhosh/AwesomeFortranLibraries","s":"Resources","u":"/fortran/resources","h":"","p":102},{"i":105,"t":"Subroutine to swap two integers: src/24_swap.f90 PROGRAM MAIN IMPLICIT NONE INTEGER a, b PRINT \"(a,$)\", \"Enter two integers (separated by space or comma): \" READ *, a, b CALL swap(a, b) PRINT *, \"After swap: \", a, b CONTAINS SUBROUTINE swap(a, b) INTEGER, INTENT(IN OUT) :: a, b INTEGER tmp tmp = a a = b b = tmp END SUBROUTINE swap END","s":"Swap two numbers","u":"/fortran/swap","h":"","p":104},{"i":107,"t":"Following example uses date_and_time and cup_time to find current date and time, and determine program execution time. src/25_time.f90 PROGRAM MAIN IMPLICIT NONE INTEGER, PARAMETER :: n = 10000000 CHARACTER(LEN=8) :: date REAL start_time, end_time REAL(KIND=KIND(1.0D0)) :: test = 0.0D0 INTEGER i CALL date_and_time(date=date) PRINT *, \"Timing report dated: \", date(1:4), \"-\", date(5:6), \"-\", date(7:8) CALL cpu_time(start_time) ! savage benchmark DO i = 1, n test = tan(atan(exp(log(sqrt(test * test))))) + 1.0D0; END DO CALL cpu_time(end_time) PRINT *, \"Time taken = \", end_time - start_time, \"sec.\" PRINT *, \"Test = \", test PRINT *, \"Relative accuracy = \", (test - (n + 1)) / (n + 1) END ! Sample output: ! Timing report dated: 2022-10-09 ! Time taken = 0.939146996 sec. ! Test = 9999816.5167837571 ! Relative accuracy = -1.8448319779454493E-005","s":"Time","u":"/fortran/time","h":"","p":106},{"i":109,"t":"FORTRAN is optimized for high performance scientific computing. I will be working on UNIX/ Linux machine for running codes. If you are on Windows, you may consider using WSL. We will be using gfortran compiler. To install gcc and gfortran in Ubuntu/ Debian: sudo apt install gcc gfortran On macOS you can install via Homebrew: brew install gcc gfortran is part of gcc. You can use any text editor of your choice to write source codes. We will be using .f90 file extension for our source code files. The program can be compiled using: gfortran source.f90 It will create a binary file named a.out in the same directory as the source code, which can be executed by: ./a.out If you would like to specify a name for the executable instead of default a.out: gfortran source.f90 -o XYapp If you have dependent modules in separate source files, you need to compile the modules first followed by main program with linking module .o file. More on this on the modules section. gfortran -c module.f90 gfortran main.f90 module.o","s":"Setting up Fortran","u":"/fortran/","h":"","p":108},{"i":112,"t":"src/23_custom_type.f90 PROGRAM MAIN IMPLICIT NONE TYPE user ! if defined in external MODULE, use PUBLIC: TYPE, PUBLIC :: user INTEGER id ! parameters can be initialized CHARACTER(LEN=64) name REAL age END TYPE ! extending type TYPE, EXTENDS(user) :: user_extended real :: salary END TYPE user_extended TYPE(user) new_user ! declare an array of user TYPE(user) user_catalog(10) TYPE(user_extended) user_with_salary new_user%id = 1; new_user%name = \"Albert Einstein\" new_user%age = 76.0 ! alternatively, new_user = user(1, \"Albert Einstein\", 76.0) user_catalog(1) = new_user PRINT *, \"User ID: \", user_catalog(1)%id PRINT *, \"User name: \", user_catalog(1)%name PRINT *, \"Age: \", user_catalog(1)%age user_with_salary = user_extended(1, \"Albert Einstein\", 76.0, 50000.0) PRINT *, \"Salary: \", user_with_salary%salary END","s":"Custom data types","u":"/fortran/types","h":"#custom-data-types","p":110},{"i":114,"t":"Example of polymorphic object: src/23_polymorphism.f90 PROGRAM MAIN IMPLICIT NONE ! define a base line type TYPE :: line_type REAL :: x_start, x_end, y_start, y_end END TYPE line_type ! extend the base line type TYPE, EXTENDS(line_type) :: colored_line_type INTEGER :: r, g, b ! each ranges 0-255 END TYPE colored_line_type TYPE, EXTENDS(colored_line_type) :: vector_line_type LOGICAL :: direction ! T if direction is start to end, F if reverse END TYPE vector_line_type ! CLASS keyword instead of TYPE ! polymorphic objects are dynamic, must be declared with ALLOCATABLE or POINTER CLASS(line_type), ALLOCATABLE :: colored_line, vector_line ! notice that line has CLASS line_type, but still can be assigned colored_line_type colored_line = colored_line_type(0.0, 1.0, 0.0, 1.0, 0, 0, 255) ! alternative way to assign ! ALLOCATE(vector_line_type::vector_line) ALLOCATE(vector_line, source=vector_line_type(0.0, 1.0, 0.0, 1.0, 0, 0, 255, .TRUE.)) ! accessing elements is bit tricky SELECT TYPE(colored_line) TYPE IS(line_type) PRINT *, \"X_start: \", colored_line%x_start TYPE IS(colored_line_type) PRINT *, \"Color: \", colored_line%r, colored_line%g, colored_line%b TYPE IS(vector_line_type) PRINT *, \"Is forward directed? \", colored_line%direction CLASS DEFAULT PRINT *, \"Error: not sure what type it is.\" END SELECT ! re-allocate the same variable ! DEALLOCATE(colored_line) ! ALLOCATE(colored_line, source=vector_line_type(0.0, 1.0, 0.0, 1.0, 0, 0, 255, .TRUE.)) END","s":"Polymorphism","u":"/fortran/types","h":"#polymorphism","p":110}],"index":{"version":"2.3.9","fields":["t"],"fieldVectors":[["t/2",[0,2.548,1,2.37,2,2.802,3,3.659,4,4.306,5,3.84,6,3.659,7,0.483,8,5.014,9,0.754,10,0.754,11,6.154,12,0.573,13,6.154,14,5.72,15,6.447,16,0.754,17,1.906,18,2.346,19,1.793,20,1.235,21,3.659,22,5.014,23,0.754,24,1.906,25,5.014,26,3.659,27,3.659,28,1.779,29,3.659,30,5.014,31,3.659,32,3.659,33,3.659,34,3.143,35,2.346]],["t/4",[1,0.849,7,0.564,9,0.61,10,0.61,12,0.572,16,0.61,23,0.695,36,2.049,37,4.076,38,0.895,39,2.049,40,4.733,41,3.26,42,1.873,43,2.267,44,4.059,45,3.109,46,2.8,47,1.427,48,1.569,49,1.427,50,1.219,51,1.569,52,3.26,53,1.76,54,1.35,55,0.403,56,1.76,57,1.76,58,3.973,59,2.049,60,3.26,61,2.049,62,3.26,63,2.497,64,2.27,65,2.27,66,1.314,67,1.76,68,1.76,69,1.76,70,2.049,71,2.049,72,4.626,73,2.523,74,3.866,75,2.986,76,3.199,77,4.118,78,4.059,79,4.059,80,2.497,81,2.497,82,2.049,83,3.26,84,3.486,85,2.049,86,2.049,87,1.597,88,2.049,89,1.507,90,2.049,91,2.049,92,1.76,93,1.004,94,1.597,95,2.049]],["t/6",[2,2.089,7,0.611,9,0.73,10,0.611,12,0.57,16,0.865,17,1.421,18,1.749,19,2.208,20,1.372,23,0.677,35,1.055,38,0.496,50,1.623,53,1.414,54,1.13,55,0.323,73,1.072,75,1.515,77,1.261,81,1.261,87,2.208,89,2.378,93,0.807,96,1.646,97,1.646,98,2.089,99,2.736,100,2.728,101,1.646,102,1.261,103,2.24,104,1.261,105,1.414,106,1.9,107,1.055,108,1.646,109,3,110,0.914,111,1.421,112,1.414,113,0.807,114,1.421,115,1.261,116,1.146,117,1.646,118,1.055,119,1.646,120,2.728,121,1.646,122,1.646,123,1.646,124,1.414,125,1.261,126,1.414,127,1.261,128,0.979,129,1.623,130,2.728,131,0.857,132,0.857,133,0.979,134,0.914,135,1.146,136,1.055,137,1.414,138,3.493,139,4.857,140,1.646,141,2.728,142,1.029,143,3.493,144,1.646,145,1.193,146,3,147,3.49,148,1.9,149,1.646,150,1.646,151,2.089,152,2.728,153,3,154,3.493,155,0.682,156,2.418,157,1.261,158,1.646,159,3.49,160,1.646,161,2.343,162,1.646,163,3.493,164,3.493,165,1.646,166,1.646,167,1.646,168,2.089,169,1.646,170,2.676,171,1.646,172,2.343,173,1.9,174,1.646,175,1.414,176,4.505,177,1.646,178,1.646,179,1.646,180,1.414,181,1.646,182,1.646,183,1.646,184,1.261,185,1.646,186,1.646,187,2.089,188,3,189,1.646,190,2.83,191,1.414,192,1.646,193,0.979,194,1.414,195,1.646,196,2.728,197,0.979,198,1.261,199,1.646,200,1.646,201,1.646,202,1.646,203,0.979,204,1.646]],["t/8",[19,3.184,116,3.821,125,4.202,197,4.118,205,5.487,206,5.487,207,5.487,208,5.487,209,5.487,210,3.047,211,5.487]],["t/10",[38,0.71,43,2.451,50,2.976,54,2.755,73,2.415,142,1.142,197,2.976,198,3.831,212,1.966,213,4.296,214,5.002,215,5.002,216,5.002,217,3.484,218,3.484,219,2.976,220,2.976,221,3.484,222,5.002,223,3.484,224,4.296,225,4.296,226,3.484,227,5.002]],["t/12",[12,0.554,19,2.649,38,0.767,142,1.235,146,4.643,151,4.141,161,4.643,191,4.643,220,3.216,223,3.765,228,5.406,229,5.406]],["t/14",[12,0.513,142,1.332,155,2.417,156,3.471,157,4.469]],["t/16",[12,0.546,16,0.401,38,0.755,42,1.582,43,2.347,47,1.856,48,3.668,54,1.104,55,0.941,73,1.57,75,3.794,94,1.957,115,1.232,118,1.708,142,1.215,148,1.856,155,2.204,156,2.376,172,2.289,173,1.856,197,1.585,218,2.782,219,2.849,220,2.376,223,1.856,226,1.856,230,3.994,231,3.07,232,2.665,233,2.665,234,2.665,235,2.041,236,4.886,237,5.698,238,4.166,239,2.665,240,1.856,241,3.994,242,3.994,243,2.665,244,3.43,245,2.665,246,2.665,247,2.665,248,2.665,249,2.289,250,2.665,251,2.665,252,2.665,253,2.665,254,2.665,255,2.665,256,2.665,257,2.665,258,2.665,259,2.665,260,2.665,261,2.289,262,3.43,263,3.43,264,2.665,265,3.059,266,2.665,267,2.665,268,2.665,269,2.665,270,2.665,271,2.08,272,2.56,273,2.665,274,2.665,275,3.994,276,2.665,277,2.665]],["t/18",[7,0.476,9,0.742,10,0.742,19,2.986,38,0.7,49,3.437,98,3.78,113,2.986,115,2.282,125,3.78,142,1.127,193,2.936,210,2.741,231,3.163,278,3.384,279,4.935,280,4.935,281,4.935,282,4.935,283,3.78,284,4.238,285,4.935,286,3.78,287,2.418,288,4.238,289,4.238]],["t/20",[1,1.824,2,4.805,4,3.782,12,0.478,38,0.89,75,2.445,76,2.62,94,2.158,142,1.006,219,2.62,220,2.62,271,2.293,272,2.823,290,3.782,291,4.403,292,3.782,293,3.373,294,4.403,295,4.403,296,4.403,297,4.403,298,4.403,299,5.671,300,4.403,301,4.403,302,4.403,303,4.403,304,4.403,305,6.273,306,4.403,307,4.403,308,3.373,309,3.782,310,4.403,311,4.403,312,4.403,313,4.403,314,4.403]],["t/22",[1,2.757,111,2.321,175,3.828,220,2.651,290,3.828,315,3.413,316,5.418,317,4.457,318,6.654,319,4.457,320,6.309,321,5.715,322,5.715,323,4.457,324,4.457,325,6.309,326,5.715,327,4.457,328,4.457,329,4.457,330,4.457,331,3.413,332,3.828,333,4.457,334,4.457,335,4.457,336,5.715,337,4.457,338,3.828]],["t/24",[12,0.537,16,0.789,17,2.735,20,1.773,38,0.745,66,3.367,80,4.022,103,3.367,197,3.124,203,3.124,286,4.848,287,3.102,339,4.511,340,5.252,341,4.511]],["t/26",[12,0.544,16,1.03,43,2.158,73,1.731,74,2.823,76,2.62,93,2.158,110,2.445,111,2.293,168,5.251,190,4.614,194,4.871,210,2.445,236,3.373,342,4.403,343,4.403,344,4.403,345,4.403,346,5.671,347,4.403,348,3.782,349,4.871,350,4.403,351,3.782,352,3.067,353,4.403,354,4.403]],["t/28",[0,2.428,7,0.538,9,0.524,10,0.524,12,0.572,16,0.838,20,1.177,23,0.838,28,1.237,38,0.495,42,0.968,55,0.953,73,1.906,74,2.234,75,1.936,111,1.815,142,1.107,187,2.67,190,2.428,193,2.074,198,2.67,212,1.37,293,4.617,355,4.849,356,3.486,357,3.486,358,2.67,359,3.486,360,1.444,361,6.336,362,3.486,363,5.576,364,5.177,365,2.074,366,4.271,367,3.486,368,2.994,369,2.67,370,3.486,371,3.486,372,3.486,373,3.486,374,2.67,375,3.486,376,3.486,377,3.486,378,2.994]],["t/30",[7,0.509,9,0.474,10,0.474,12,0.583,23,0.474,38,0.448,55,0.62,99,3.279,105,2.711,106,2.199,111,1.644,115,1.46,142,1.206,157,3.463,173,4.017,218,2.199,219,1.878,220,3.632,221,2.199,249,3.883,368,2.711,379,2.711,380,3.157,381,4.521,382,4.537,383,2.199,384,6.69,385,6.541,386,3.157,387,3.157,388,1.644,389,2.199,390,3.157,391,3.157,392,3.157,393,2.418,394,3.157,395,3.157,396,4.521,397,3.157]],["t/32",[5,3.884,7,0.489,12,0.472,116,3.532,131,2.641,134,3.441,240,3.532,398,5.322,399,4.355,400,5.071,401,5.071,402,4.355,403,5.071,404,6.196,405,5.071,406,5.322,407,5.322,408,5.071,409,4.355]],["t/34",[1,1.088,5,2.012,7,0.253,9,0.395,10,0.395,12,0.574,16,0.594,23,0.395,37,2.752,38,0.674,42,1.318,50,1.563,51,4.045,55,0.516,65,2.752,66,2.533,68,2.256,73,1.032,74,1.684,93,1.287,104,2.012,106,1.83,107,2.533,110,1.459,118,1.684,127,2.012,131,1.368,134,2.194,142,1.293,187,2.012,219,1.563,221,1.83,235,2.012,240,1.83,271,2.751,272,3.386,287,1.287,360,1.088,365,1.563,382,4.078,383,1.83,388,2.058,389,1.83,399,2.256,406,3.393,407,3.393,409,2.256,410,2.627,411,4.748,412,2.012,413,2.627,414,2.012,415,2.627,416,4.748,417,4.748,418,2.627,419,2.012,420,3.951,421,3.951,422,3.951,423,4.078,424,2.012,425,2.627,426,2.627,427,3.951,428,3.951,429,3.951,430,3.951,431,3.951,432,3.951,433,2.627,434,2.627,435,2.627,436,2.627,437,2.627,438,3.951,439,2.627,440,2.627,441,2.627]],["t/36",[7,0.279,9,0.435,10,0.435,12,0.57,16,0.638,23,0.887,28,1.028,38,0.411,42,1.538,80,3.253,87,2.081,145,1.266,155,1.2,218,3.503,219,2.992,221,2.017,283,4.243,284,4.32,286,4.722,287,2.715,308,2.218,360,1.2,365,2.992,383,2.017,388,2.619,389,2.017,414,2.218,442,2.896,443,3.648,444,2.896,445,2.896,446,5.54,447,2.896,448,5.54,449,2.896,450,2.896,451,2.896,452,2.896,453,2.896,454,2.896,455,2.896,456,2.896,457,3.648,458,2.896,459,2.896,460,2.896,461,4.247,462,2.896,463,2.896,464,3.852,465,2.896,466,2.896,467,2.896,468,2.896,469,2.896,470,2.896,471,2.896,472,2.896,473,3.551,474,2.896,475,4.247,476,2.896]],["t/38",[54,2.436,443,5.051,477,5.881,478,5.051,479,5.881]],["t/40",[12,0.536,106,4.394,126,3.828,133,2.651,480,5.715,481,4.457,482,6.654,483,4.457,484,6.654,485,4.457,486,7.25,487,4.457,488,4.457,489,4.457,490,4.457,491,4.457,492,4.457,493,5.715,494,4.457,495,3.828,496,4.457,497,4.457,498,4.457]],["t/42",[7,0.595,9,0.639,10,0.639,12,0.571,16,0.927,20,1.435,23,0.639,34,3.651,89,2.852,103,4.456,111,2.214,142,1.409,145,2.424,212,1.671,331,4.724,332,5.297,352,3.861,499,4.251,500,5.543,501,4.251]],["t/44",[7,0.532,9,0.635,10,0.635,12,0.562,16,1.017,17,2.876,20,1.427,23,0.83,38,0.784,54,1.751,114,2.201,128,2.514,212,1.661,352,2.944,369,4.229,502,4.226,503,5.522,504,5.493,505,3.237,506,4.226,507,5.522,508,4.743,509,4.226,510,3.63,511,2.944]],["t/46",[7,0.571,9,0.708,10,0.708,12,0.544,16,1.021,17,2.455,20,1.591,23,0.89,38,0.669,116,4.125,238,3.283,504,5.203,508,5.086,510,4.048,512,4.713,513,5.922,514,5.086,515,4.713,516,4.713]],["t/49",[517,6.075]],["t/51",[7,0.558,9,0.682,10,0.682,12,0.548,16,0.956,23,0.682,28,2.258,38,0.644,115,2.099,129,2.7,132,3.489,240,3.161,358,4.429,360,1.88,374,3.477,424,3.477,518,4.539,519,4.539,520,5.782,521,4.539,522,4.539,523,4.539,524,5.782,525,4.539,526,4.539]],["t/53",[0,2.439,7,0.65,9,0.731,10,0.731,12,0.532,16,0.526,18,4.211,20,1.887,23,0.908,38,0.691,40,4.861,42,1.552,43,2.74,45,2.682,54,1.451,55,0.688,76,2.083,77,2.682,89,1.62,99,2.384,112,3.008,128,2.083,168,3.726,184,2.682,235,4.282,527,4.178,528,3.502,529,4.865,530,4.865,531,4.865,532,3.502,533,3.502,534,3.502,535,4.865,536,3.502,537,3.502,538,3.502,539,3.502,540,4.865,541,3.502,542,3.502,543,3.502,544,4.865,545,3.502]],["t/55",[1,1.518,7,0.353,9,0.358,10,0.358,12,0.581,16,0.815,20,1.83,23,0.551,24,1.24,38,0.338,42,0.661,49,1.658,73,0.936,87,1.796,110,2.036,145,1.041,148,2.553,155,1.852,262,3.839,546,5.02,547,3.665,548,1.823,549,2.381,550,5.02,551,5.02,552,2.045,553,3.665,554,2.045,555,2.381,556,2.381,557,2.381,558,4.152,559,2.381,560,1.823,561,2.381,562,2.381,563,2.381,564,2.045,565,2.381,566,2.381,567,2.381,568,2.381,569,2.381,570,3.665,571,3.665,572,2.381,573,2.381,574,5.726,575,3.665,576,2.381,577,4.47,578,5.02,579,4.47,580,4.47,581,4.47,582,4.47,583,2.381,584,2.381,585,2.381,586,2.381,587,2.381,588,2.381,589,2.381,590,2.381,591,2.381,592,2.381,593,2.381,594,2.381,595,2.381,596,1.167,597,2.381,598,2.381,599,4.47,600,2.381,601,3.665,602,2.381,603,2.381,604,3.148,605,2.381]],["t/57",[7,0.425,9,0.459,10,0.459,12,0.575,16,0.997,17,2.699,20,1.75,23,0.906,37,3.61,38,0.626,42,1.577,50,3.944,51,2.338,54,1.264,55,0.867,63,2.338,64,2.126,65,3.073,66,2.829,67,2.621,87,2.163,107,1.956,142,1.184,210,1.695,349,2.621,352,2.126,364,4.877,365,1.816,369,3.38,414,2.338,606,3.052,607,4.413,608,3.052,609,3.052,610,3.052,611,4.413,612,4.413,613,4.413,614,4.413,615,4.413,616,3.052,617,4.413,618,4.413,619,3.052,620,3.052,621,3.052]],["t/59",[7,0.453,9,0.5,10,0.5,12,0.576,16,0.5,23,0.706,38,0.472,42,1.303,47,2.318,55,0.654,87,2.665,142,0.76,145,1.455,212,1.308,213,2.858,287,2.895,315,2.549,316,2.858,622,4.531,623,3.595,624,5.073,625,2.858,626,2.858,627,3.328,628,3.328,629,3.328,630,3.328,631,3.328,632,5.907,633,3.328,634,3.328,635,3.328,636,3.328,637,5.073,638,3.328,639,3.328,640,3.328,641,3.328,642,3.328,643,3.328,644,3.328,645,2.549,646,2.858,647,2.549,648,4.694,649,3.328,650,2.858]],["t/61",[1,2.472,7,0.493,9,0.652,10,0.652,12,0.562,16,0.448,23,0.936,24,2.662,28,1.057,38,0.615,42,1.203,47,2.074,55,0.852,87,2.505,99,1.459,128,1.772,129,3.041,132,1.551,136,1.909,142,1.362,145,1.302,203,1.772,210,1.654,271,1.551,287,2.751,292,2.558,293,2.281,315,2.281,596,1.459,622,3.825,637,4.39,647,2.281,650,2.558,651,2.978,652,2.978,653,5.348,654,2.978,655,2.978,656,2.978,657,2.751,658,2.978,659,5.111,660,2.074,661,1.772,662,2.978,663,2.978,664,3.723,665,2.558,666,2.558,667,2.558,668,2.281,669,4.335,670,4.335,671,2.978,672,2.978,673,2.978,674,2.978,675,2.978,676,2.978]],["t/63",[7,0.523,9,0.619,10,0.619,12,0.572,17,2.144,20,1.39,23,0.619,24,2.144,28,1.741,42,0.771,50,2.449,55,0.545,73,1.091,89,2.269,94,1.36,99,2.66,113,1.36,131,2.555,133,1.651,134,3.219,142,1.324,145,1.8,278,1.542,360,1.15,473,3.145,511,1.933,554,2.384,657,1.36,677,6.285,678,2.776,679,2.776,680,2.776,681,2.776,682,3.162,683,4.907,684,2.776,685,5.427,686,2.776,687,2.776,688,4.907,689,2.384,690,4.116,691,2.776,692,2.776,693,2.776,694,2.126,695,4.116,696,4.116,697,4.116,698,4.907,699,2.384,700,2.776,701,3.536,702,2.776,703,2.776,704,2.776,705,4.116,706,2.776,707,2.776]],["t/66",[7,0.485,9,0.435,10,0.435,12,0.573,16,0.887,20,0.978,23,0.887,28,1.028,38,0.411,40,3.852,42,1.851,43,3.202,45,2.218,48,2.218,55,0.569,56,2.487,57,5.295,81,2.218,89,2.562,103,3.782,111,1.508,114,1.508,145,1.266,155,1.2,212,1.138,217,2.017,271,1.508,283,2.218,374,3.253,646,2.487,647,2.218,708,4.758,709,2.896,710,2.218,711,2.896,712,2.487,713,5.03,714,2.487,715,2.896,716,2.218,717,2.896,718,2.896,719,2.487,720,4.243,721,4.247,722,2.896,723,2.896,724,2.896,725,2.896,726,2.896,727,2.896,728,5.03,729,2.896,730,2.896]],["t/68",[7,0.583,9,0.732,10,0.732,12,0.556,16,0.732,23,0.988,38,0.691,42,1.678,43,2.386,73,1.914,212,1.914,731,4.869,732,6.043,733,7.201,734,4.869]],["t/70",[12,0.424,54,1.437,55,1.093,102,2.657,133,2.064,148,2.416,159,2.98,193,2.064,217,2.416,338,4.151,464,2.657,511,2.416,623,3.702,661,2.064,699,4.151,712,2.98,735,4.151,736,6.72,737,4.833,738,4.833,739,3.469,740,3.469,741,6.325,742,2.98,743,3.469,744,3.469,745,4.833,746,2.98,747,3.469,748,3.469,749,4.151,750,3.469,751,3.469,752,4.833,753,3.469,754,3.469,755,3.469,756,3.469,757,3.469,758,3.469,759,3.469,760,3.469,761,3.469,762,3.469,763,3.469,764,4.833,765,3.469,766,3.469,767,2.416,768,2.657,769,2.98,770,3.469,771,3.469,772,3.469,773,2.98,774,3.469,775,3.469,776,3.469,777,3.469,778,2.98,779,3.469,780,3.469,781,3.469,782,2.657,783,3.469,784,3.469,785,3.469,786,3.469]],["t/72",[0,1.904,7,0.633,9,0.612,10,0.612,12,0.509,16,0.411,18,3.693,19,1.34,23,0.612,54,1.133,55,1.058,93,1.34,94,1.34,99,1.34,113,2.383,114,2.12,118,1.753,124,2.348,127,2.094,128,1.627,131,3,134,2.701,135,1.904,136,1.753,142,1.111,155,1.686,156,1.627,184,2.094,193,2.422,203,1.627,226,1.904,278,1.519,289,2.348,308,2.094,389,1.904,473,1.753,548,2.094,604,2.348,622,3.454,657,3.276,660,3.753,661,3.205,710,2.094,767,1.904,768,2.094,787,2.734,788,2.734,789,1.627,790,2.734,791,2.734,792,2.734,793,2.734,794,2.734,795,2.734,796,4.177,797,2.734,798,2.348,799,2.734,800,2.734,801,4.071,802,2.734,803,2.734,804,2.348,805,2.734,806,4.177,807,2.734,808,2.734,809,2.094,810,2.734,811,4.071,812,2.734,813,4.071,814,2.348,815,2.734,816,2.734,817,2.094,818,3.118,819,4.071,820,2.734,821,2.348,822,2.348,823,2.734]],["t/74",[12,0.549,55,1.431,93,2.238,113,2.845,156,4.215,358,3.498,796,6.086,798,5.768,824,5.805,825,4.567,826,4.567,827,4.567,828,4.567]],["t/77",[7,0.508,12,0.504,23,0.591,28,2.345,38,0.558,43,2.58,46,4.522,55,0.773,75,2.924,99,1.927,129,2.34,131,2.742,137,3.378,197,2.34,478,3.378,742,3.378,809,3.012,818,4.033,829,3.933,830,3.933,831,3.933,832,5.936,833,5.936,834,5.936,835,3.933,836,5.265,837,3.933,838,3.933,839,3.933,840,3.933,841,3.933,842,3.933,843,3.933,844,3.933,845,3.933,846,3.933,847,3.933,848,5.265,849,5.936,850,3.933,851,3.933,852,3.933,853,3.933]],["t/79",[854,6.026,855,6.026]],["t/81",[7,0.422,9,0.453,10,0.453,12,0.581,16,0.657,23,0.774,28,1.552,38,0.621,42,1.567,73,1.719,74,2.804,107,1.932,142,1.175,145,1.318,155,1.249,212,1.185,271,3.122,272,3.843,365,1.793,383,2.1,388,1.57,622,3.843,623,2.309,624,2.589,626,2.589,645,2.309,653,2.589,716,2.309,720,3.942,782,2.309,856,3.014,857,2.589,858,2.589,859,3.014,860,4.373,861,2.589,862,4.849,863,4.849,864,3.756,865,4.849,866,5.147,867,4.849,868,2.589,869,3.014,870,3.014]],["t/83",[7,0.387,9,0.404,10,0.404,12,0.58,16,0.604,23,0.723,28,1.425,38,0.57,42,1.775,55,0.527,73,1.055,75,1.491,94,1.968,111,1.398,142,1.305,147,4.132,151,3.684,155,1.112,156,3.568,212,1.055,263,3.449,271,3.124,272,3.845,331,3.684,388,2.781,464,2.056,505,2.056,527,2.306,558,2.056,622,1.721,645,2.056,716,2.056,720,4.089,857,2.306,858,2.306,861,2.306,862,4.132,863,3.449,864,4.132,865,3.449,867,4.909,868,2.306,871,4.015,872,2.684,873,5.339,874,2.684,875,2.684,876,2.684,877,2.684,878,2.684,879,2.306,880,2.684]],["t/85",[7,0.278,9,0.434,10,0.434,12,0.576,16,0.925,19,2.075,23,0.434,35,1.849,38,0.601,64,2.009,66,1.849,76,1.716,84,2.477,93,2.075,94,1.414,110,1.602,113,2.075,115,1.334,118,1.849,136,1.849,142,0.967,170,2.209,225,2.477,236,2.209,244,2.477,261,3.637,348,2.477,360,1.195,388,1.502,558,4.235,694,2.209,789,1.716,817,2.209,881,5.058,882,2.884,883,2.884,884,6.527,885,6.527,886,4.235,887,6.527,888,4.235,889,5.018,890,2.884,891,2.884,892,2.884,893,2.884,894,2.884,895,2.884,896,2.884,897,5.018,898,4.235,899,2.477,900,5.018,901,2.884,902,2.884]],["t/87",[1,2.24,55,1.062,114,2.815,115,2.5,682,2.815,789,3.831,903,5.406,904,5.269,905,5.406,906,5.406,907,5.406,908,5.406,909,5.406]],["t/89",[7,0.534,9,0.517,10,0.517,12,0.578,16,0.832,20,1.16,23,0.832,24,1.79,28,1.704,38,0.85,42,1.813,55,0.675,89,2.559,103,3.841,107,3.841,145,2.42,212,1.351,287,3.2,366,4.239,596,1.684,682,2.882,689,2.952,708,5.145,904,3.678,910,3.437,911,3.437,912,4.801,913,3.437,914,4.801]],["t/91",[1,2.27,7,0.528,9,0.507,10,0.507,12,0.578,16,0.824,20,1.139,23,0.893,24,1.757,38,0.778,42,1.851,55,0.663,73,1.863,89,2.748,145,2.073,212,2.153,287,2.912,596,1.653,782,2.584,904,3.63,915,5.942,916,5.479,917,3.374,918,3.374,919,3.374,920,5.479,921,4.74,922,5.479,923,3.374,924,3.374,925,5.479,926,3.374]],["t/93",[1,2.29,7,0.533,110,3.07,114,2.879,115,2.556,231,3.544,360,2.29,548,4.234,596,2.709,657,2.709,682,2.879,789,3.882]],["t/95",[7,0.53,9,0.715,10,0.715,12,0.562,16,0.826,20,1.605,23,0.943,28,1.949,55,0.666,99,2.33,109,4.084,131,1.765,132,1.765,134,2.641,135,2.361,136,2.173,142,0.774,210,1.882,378,4.717,473,2.173,596,1.661,657,2.692,660,2.361,661,2.016,682,3.477,927,3.389,928,5.493,929,6.271,930,6.271,931,5.954,932,5.954,933,5.954,934,3.389,935,3.389,936,3.389,937,3.389]],["t/97",[1,2.188,7,0.436,9,0.68,10,0.68,12,0.564,16,0.68,23,0.867,24,1.644,35,2.024,38,0.75,42,1.466,55,0.62,76,1.878,89,1.46,94,1.547,142,1.206,155,1.873,180,2.711,212,1.241,265,2.418,271,3.179,309,2.711,388,1.644,596,1.547,625,2.711,657,2.216,660,2.199,661,2.69,665,3.883,666,2.711,667,3.883,668,3.463,682,1.644,767,2.199,938,3.157,939,3.157,940,3.157,941,3.157,942,3.157,943,3.157,944,3.157,945,3.157,946,5.282,947,4.521,948,3.157,949,4.521,950,3.157,951,3.157,952,4.521,953,3.157,954,3.157,955,2.711,956,3.157,957,3.157,958,3.157,959,3.157,960,3.157,961,3.157,962,3.157,963,3.157,964,3.157,965,3.157,966,3.157,967,3.157]],["t/99",[1,2.004,7,0.58,35,3.101,55,0.95,94,2.371,113,2.371,114,2.519,128,2.878,132,2.519,188,4.155,217,3.369,278,2.687,339,4.155,412,3.705,596,2.371,657,2.371,682,2.519,701,5.169,746,4.155,749,4.155,769,5.169,789,2.878,968,6.019,969,4.837,970,4.155,971,6.019,972,4.837]],["t/101",[7,0.506,28,2.246,55,1.032,113,2.574,129,3.124,132,2.735,278,2.917,379,4.511,664,4.511,694,4.022,767,3.658,778,4.511,789,3.124,970,4.511,973,5.252,974,5.252,975,5.252,976,5.252,977,5.252]],["t/103",[7,0.651,115,3.246,978,5.178,979,5.178,980,5.178,981,5.178,982,6.275,983,5.178,984,5.178,985,5.178,986,5.178,987,5.178,988,5.178,989,5.178,990,5.178,991,5.178]],["t/105",[7,0.412,9,0.643,10,0.643,12,0.548,16,0.836,17,2.227,20,1.443,23,0.836,24,2.227,28,1.517,38,0.964,87,3.523,110,3.09,170,3.275,203,2.543,341,3.672,360,1.771,366,4.737,596,2.095,682,3.221,992,6.185,993,4.275,994,5.564,995,4.275]],["t/107",[7,0.42,9,0.451,10,0.451,12,0.58,16,0.847,23,0.655,28,1.822,38,0.619,42,1.426,43,1.471,49,2.091,54,1.244,55,0.59,89,1.388,132,1.564,133,1.786,142,0.686,155,1.244,287,2.762,360,1.244,564,5.533,710,2.299,719,2.578,879,3.745,955,2.578,996,3.002,997,3.002,998,5.635,999,6.244,1000,3.002,1001,3.002,1002,3.002,1003,4.36,1004,4.36,1005,3.002,1006,3.002,1007,3.002,1008,4.36,1009,3.002,1010,3.002,1011,3.002,1012,3.002,1013,3.002,1014,3.002,1015,3.002,1016,3.002,1017,3.002,1018,4.36,1019,4.36,1020,4.36,1021,3.002,1022,3.002,1023,3.002,1024,3.002,1025,3.002,1026,3.002]],["t/109",[7,0.448,18,3.973,19,2.279,55,1.217,69,2.82,93,1.609,99,1.609,104,2.515,115,1.518,129,3.493,131,2.812,132,2.422,133,1.953,134,3.754,135,3.76,173,2.287,193,1.953,203,1.953,210,1.824,226,2.287,238,2.287,288,2.82,351,2.82,360,1.36,393,2.515,398,5.043,402,2.82,412,2.515,473,2.105,495,2.82,552,2.82,657,2.877,735,2.82,768,2.515,809,2.515,814,5.043,817,2.515,818,3.561,821,2.82,822,2.82,1027,3.283,1028,3.283,1029,3.283,1030,3.283,1031,3.283,1032,3.283,1033,3.283,1034,5.871,1035,3.283,1036,3.283,1037,3.283,1038,3.283,1039,3.283,1040,3.283,1041,3.283,1042,3.283,1043,3.283,1044,4.65,1045,3.283,1046,3.283,1047,3.283,1048,3.283,1049,3.283,1050,3.283,1051,3.283]],["t/112",[7,0.319,9,0.498,10,0.498,12,0.57,16,0.886,19,2.293,23,0.815,37,2.307,38,0.47,42,0.92,55,0.651,102,4.763,142,1.069,155,1.372,231,4.137,278,1.84,360,1.372,419,2.537,424,2.537,457,2.845,504,3.584,560,2.537,657,1.624,661,2.784,1052,3.313,1053,4.679,1054,3.313,1055,2.845,1056,3.313,1057,4.679,1058,4.679,1059,4.679,1060,5.425,1061,3.313,1062,3.313,1063,4.679,1064,3.313,1065,3.313,1066,5.425,1067,5.425,1068,3.313,1069,5.425,1070,3.313,1071,3.313,1072,3.313,1073,3.313,1074,3.313,1075,3.313,1076,3.313,1077,3.313]],["t/114",[7,0.244,9,0.38,10,0.38,12,0.564,16,0.778,23,0.881,38,0.359,54,1.047,58,3.296,63,1.936,64,1.761,65,2.673,87,1.239,92,2.171,93,1.239,98,1.936,113,1.239,114,1.316,142,0.577,153,2.171,190,3.231,212,2.394,223,1.761,224,3.296,231,4.381,238,1.761,265,1.936,278,1.404,360,1.047,365,2.76,388,3.053,393,1.936,419,1.936,423,2.171,505,1.936,511,1.761,514,3.296,560,1.936,668,1.936,714,3.296,773,2.171,804,2.171,806,2.171,881,2.171,899,3.296,1055,2.171,1078,3.837,1079,2.528,1080,4.639,1081,3.837,1082,2.528,1083,2.528,1084,2.528,1085,2.528,1086,4.639,1087,2.528,1088,2.528,1089,5.179,1090,2.528,1091,3.837,1092,4.639,1093,2.528,1094,2.528,1095,4.639,1096,2.528,1097,3.837,1098,2.528,1099,2.528,1100,2.528,1101,2.528,1102,2.528,1103,3.837,1104,2.528,1105,2.528,1106,2.528,1107,2.528,1108,2.528,1109,2.528,1110,2.528,1111,2.528,1112,2.528,1113,2.528,1114,2.528,1115,2.528,1116,2.528,1117,2.528,1118,2.528]]],"invertedIndex":[["",{"_index":12,"t":{"2":{"position":[[144,2],[215,1],[255,1],[288,2],[307,2],[444,2],[477,2],[507,2],[510,3],[514,1],[534,1],[572,2],[575,4],[580,1],[628,1],[654,2],[728,1],[754,2],[757,3],[761,2]]},"4":{"position":[[17,1],[27,1],[71,2],[90,2],[107,1],[115,1],[131,1],[159,1],[429,2],[444,2],[454,1],[465,1],[481,1],[621,2],[638,1],[647,1],[763,1],[801,1],[816,1],[824,1],[834,1],[886,1],[901,1],[909,1],[963,1],[973,1],[1056,2],[1061,1],[1081,1],[1093,1],[1105,1],[1146,2],[1151,1],[1168,1],[1176,1],[1185,1],[1197,1],[1238,2],[1256,2],[1269,1],[1290,1],[1303,2],[1317,2],[1456,2],[1463,1],[1467,1],[1482,1],[1488,1]]},"6":{"position":[[170,1],[180,1],[240,2],[262,2],[274,2],[282,2],[293,2],[305,2],[313,2],[325,1],[329,1],[350,2],[356,4],[364,4],[884,1],[894,1],[963,2],[1018,1],[1020,1],[1027,2],[1038,1],[1043,1],[1056,2],[1077,1],[1079,2],[1183,1],[1193,1],[1285,2],[1314,2],[1320,1],[1389,1],[1396,2],[1408,1],[1412,1],[1417,1],[1427,2],[1459,1],[1461,2],[1525,1],[1535,1],[1603,2],[1621,1],[1631,2],[1659,1],[1679,1],[1690,1],[1731,1],[1787,1],[1818,1],[1873,1],[1905,1],[2131,2],[2201,1],[2314,3],[2324,2],[2339,1],[2341,2],[2344,1],[2473,4]]},"12":{"position":[[8,2],[31,2],[64,2],[78,2],[104,2]]},"14":{"position":[[16,2],[22,1]]},"16":{"position":[[307,1],[338,1],[375,1],[835,2],[841,1],[845,1],[859,1],[959,2],[965,1],[969,1],[989,2],[1017,1],[1058,2],[1071,2],[1078,1],[1084,1],[1112,1],[1189,2]]},"20":{"position":[[127,1],[232,2],[306,2]]},"24":{"position":[[8,2],[57,1],[59,1],[132,2]]},"26":{"position":[[42,1],[48,2],[77,1],[109,1],[134,2],[170,1],[192,1]]},"28":{"position":[[187,2],[199,2],[206,1],[232,1],[265,2],[289,1],[291,2],[328,1],[399,1],[439,1],[493,1],[548,1],[568,2],[579,1],[603,1],[631,1],[658,1],[664,1],[683,2],[693,1],[695,2]]},"30":{"position":[[121,2],[126,1],[147,2],[163,5],[172,1],[174,2],[185,5],[196,1],[198,2],[212,1],[231,5],[241,1],[243,2],[252,1],[274,1],[297,1],[320,1],[350,5],[360,1],[365,1],[367,2],[373,1],[384,5],[394,1],[399,1],[401,2],[407,1],[412,1],[492,5],[509,1],[511,2],[529,5],[551,1],[553,2],[565,1],[591,5],[617,2]]},"32":{"position":[[73,1],[120,1]]},"34":{"position":[[21,1],[100,1],[156,1],[192,1],[232,1],[340,2],[345,1],[349,1],[401,2],[438,2],[451,2],[459,1],[469,1],[473,1],[549,1],[614,2],[633,1],[701,1],[712,1],[723,1],[734,1],[745,1],[756,1],[767,1],[779,1],[791,1],[803,1],[815,1],[827,1],[838,1],[872,2],[883,1],[885,2],[898,2],[914,1],[916,2]]},"36":{"position":[[97,1],[288,1],[299,1],[305,1],[334,1],[347,1],[360,1],[373,1],[386,1],[399,1],[412,1],[425,1],[438,1],[451,1],[464,1],[477,1],[483,1],[532,1],[544,1],[558,1],[638,1],[660,1],[672,1],[685,2],[697,4],[705,2],[708,3]]},"40":{"position":[[319,1],[331,1],[346,2],[371,2],[399,2],[411,2]]},"42":{"position":[[67,1],[77,1],[136,2],[159,2],[169,1],[171,1],[178,2],[197,1],[214,1],[234,2],[253,2],[263,2],[266,2],[287,2]]},"44":{"position":[[64,2],[103,1],[110,2],[125,2],[142,2],[209,1],[226,2],[263,2],[279,1],[296,2],[327,2]]},"46":{"position":[[64,2],[103,1],[110,2],[154,2],[196,2],[232,2]]},"51":{"position":[[153,1],[184,2],[241,2],[263,2],[300,3],[330,2],[345,2]]},"53":{"position":[[78,1],[88,1],[154,2],[212,1],[496,1],[506,1],[568,2],[636,1],[696,1]]},"55":{"position":[[163,1],[238,1],[254,1],[292,1],[309,1],[330,1],[458,2],[464,1],[498,2],[517,1],[537,2],[545,1],[563,2],[571,1],[589,2],[597,1],[615,2],[623,1],[641,2],[688,1],[690,1],[697,2],[742,1],[744,1],[751,2],[795,1],[797,1],[804,2],[849,1],[851,1],[858,2],[871,1],[892,1],[913,1],[934,1],[952,1],[980,1],[992,1],[1004,1],[1006,1],[1039,1],[1043,1],[1061,1],[1109,2],[1117,1],[1176,1],[1232,2],[1276,2],[1290,1],[1302,1],[1330,2],[1341,1],[1350,1]]},"57":{"position":[[145,2],[182,2],[202,2],[209,1],[256,1],[263,2],[276,1],[285,1],[289,1],[302,2],[409,2],[449,1],[492,1],[494,1],[501,2],[522,2],[563,1],[606,1],[608,1],[615,2],[635,1],[651,1],[657,1],[664,1],[711,1],[713,2],[720,1],[815,1],[817,2]]},"59":{"position":[[244,1],[269,1],[278,1],[288,1],[297,1],[379,1],[480,2],[492,2],[517,2],[527,1],[535,1],[541,1],[550,1],[560,1],[569,1],[575,1],[585,1],[600,1],[614,1],[621,1],[629,1],[648,1],[652,1],[665,2],[674,1],[676,2]]},"61":{"position":[[347,2],[480,2],[490,2],[548,2],[576,2],[586,2],[610,2],[629,2],[636,1],[646,1],[655,1],[661,1],[669,1],[682,1],[696,1],[703,1],[709,1],[739,1],[743,1],[892,2],[905,2]]},"63":{"position":[[63,1],[75,1],[123,1],[264,1],[321,2],[348,2],[376,2],[395,2],[408,1],[417,1],[426,1],[435,1],[455,1],[599,1],[627,1],[670,1],[772,2],[796,3],[800,2],[863,3],[867,2],[901,3],[905,2],[917,3],[921,2],[955,3],[959,2],[965,1],[1083,3],[1120,1],[1122,2]]},"66":{"position":[[42,1],[52,1],[109,2],[130,1],[140,2],[150,1],[152,1],[159,2],[174,1],[192,1],[201,1],[218,2],[228,2],[231,1],[233,2],[331,1],[344,1],[403,1],[439,1],[506,1],[535,1],[602,2],[611,1],[664,2],[679,1],[713,2],[725,1],[737,1],[911,1],[920,1]]},"68":{"position":[[73,2],[84,1],[102,2],[128,2],[145,2],[163,1],[169,1]]},"70":{"position":[[313,1],[381,1],[504,1]]},"72":{"position":[[267,2],[273,1],[310,2],[315,1],[478,2],[485,1],[502,1],[520,2],[529,1],[531,2]]},"74":{"position":[[45,2],[102,1],[130,1],[186,1],[214,1],[262,1],[277,2]]},"77":{"position":[[453,2],[460,1],[471,1],[476,2],[596,1]]},"81":{"position":[[35,1],[71,1],[106,1],[193,2],[206,1],[221,2],[229,1],[240,2],[248,1],[259,2],[273,1],[310,2],[327,1],[336,1],[343,2],[358,1],[365,1],[386,1],[447,1],[454,1],[458,1],[477,1],[481,1],[504,1],[508,2],[530,1],[543,1],[567,1],[579,1],[592,1],[610,2],[619,1],[621,2],[635,2],[657,1],[659,2],[673,1]]},"83":{"position":[[121,1],[123,1],[137,1],[139,1],[237,1],[429,2],[442,1],[457,2],[470,2],[478,1],[490,2],[498,1],[509,2],[517,1],[529,2],[537,1],[551,2],[568,1],[577,1],[638,1],[645,1],[649,1],[668,1],[675,1],[679,1],[702,1],[706,1],[710,1],[714,1],[735,1],[748,1],[773,2],[780,1],[782,2],[789,1],[802,1],[820,2],[839,1],[841,2],[852,1],[865,1],[877,1],[894,1]]},"85":{"position":[[119,2],[142,2],[179,2],[220,2],[230,1],[236,1],[263,2],[282,1],[332,1],[375,1],[381,1],[413,1],[424,1],[436,2],[443,1],[474,2],[481,1],[483,2],[495,2],[502,1],[504,2],[516,2],[523,1],[525,2],[531,1],[557,2],[586,2],[614,2],[653,2],[675,1],[767,1],[798,1],[834,2]]},"89":{"position":[[80,1],[102,1],[104,1],[116,2],[121,1],[126,1],[128,1],[130,1],[132,1],[138,1],[193,2],[216,2],[278,1],[280,1],[287,2],[332,2],[342,2],[345,1],[347,2],[428,2],[454,2],[472,2],[485,2],[528,1],[532,1],[550,1]]},"91":{"position":[[83,1],[102,1],[109,1],[113,1],[120,1],[124,1],[131,1],[140,1],[155,1],[208,2],[224,2],[293,1],[295,1],[302,2],[314,1],[329,2],[343,2],[346,1],[348,2],[447,2],[460,2],[476,1],[493,1],[512,1],[542,2],[560,1],[576,1]]},"95":{"position":[[111,2],[143,2],[242,1],[244,1],[251,2],[284,1],[286,1],[293,2],[361,1],[370,1],[436,2],[447,1],[449,1],[451,2],[462,1],[464,1],[466,2]]},"97":{"position":[[72,1],[82,1],[217,2],[226,1],[237,2],[299,2],[309,2],[321,1],[352,2],[382,2],[397,1],[424,1],[438,1],[443,1],[447,1],[471,2],[606,2],[619,2],[629,1],[642,1]]},"105":{"position":[[155,1],[162,2],[192,2],[208,2],[271,2],[295,1],[301,1],[307,1]]},"107":{"position":[[181,2],[186,1],[214,2],[271,2],[279,1],[333,2],[358,2],[372,1],[374,2],[388,1],[390,2],[429,1],[453,1],[465,1],[494,1],[506,1],[552,2],[567,1],[569,2],[608,2],[617,1],[619,2],[633,2],[655,1],[657,2],[671,1],[677,1],[682,1],[691,1],[708,1],[742,1],[755,1],[774,1],[781,1],[802,1],[822,1]]},"112":{"position":[[60,1],[118,2],[137,1],[210,1],[247,2],[269,2],[322,1],[426,1],[445,1],[478,1],[485,1],[511,1],[562,1],[579,2],[592,2],[620,2],[635,2],[665,2],[674,2],[714,1],[773,2],[785,2]]},"114":{"position":[[82,1],[113,2],[131,2],[184,1],[237,2],[266,2],[277,1],[357,2],[385,2],[398,1],[471,1],[503,1],[613,2],[642,1],[739,1],[790,1],[818,1],[946,1],[1032,2],[1045,2],[1102,2],[1113,2],[1195,2],[1220,2],[1266,2],[1315,1],[1347,1],[1374,1]]}}}],["0",{"_index":212,"t":{"10":{"position":[[22,2]]},"28":{"position":[[571,2]]},"42":{"position":[[199,2]]},"44":{"position":[[128,2]]},"59":{"position":[[537,1]]},"66":{"position":[[681,2]]},"68":{"position":[[131,2]]},"81":{"position":[[329,1]]},"83":{"position":[[570,1]]},"89":{"position":[[140,1]]},"91":{"position":[[111,1],[316,2],[578,1]]},"97":{"position":[[631,2]]},"114":{"position":[[291,1],[779,2],[782,2],[926,2],[929,2],[1443,2],[1446,2]]}}}],["0.0",{"_index":365,"t":{"28":{"position":[[208,4]]},"34":{"position":[[725,3]]},"36":{"position":[[301,3],[375,3],[560,3]]},"57":{"position":[[211,3]]},"81":{"position":[[275,4]]},"114":{"position":[[769,4],[916,4],[1433,4]]}}}],["0.0_dp",{"_index":578,"t":{"55":{"position":[[547,6],[573,6],[599,6],[625,6]]}}}],["0.0d0",{"_index":1006,"t":{"107":{"position":[[281,5]]}}}],["0.3142e+01",{"_index":183,"t":{"6":{"position":[[2093,10]]}}}],["0.5",{"_index":647,"t":{"59":{"position":[[571,3]]},"61":{"position":[[657,3]]},"66":{"position":[[441,4]]}}}],["0.939146996",{"_index":1023,"t":{"107":{"position":[[757,11]]}}}],["001234",{"_index":179,"t":{"6":{"position":[[2034,6]]}}}],["005",{"_index":1026,"t":{"107":{"position":[[845,3]]}}}],["01_add.f90",{"_index":130,"t":{"6":{"position":[[706,11],[771,10]]}}}],["09",{"_index":1022,"t":{"107":{"position":[[739,2]]}}}],["1",{"_index":42,"t":{"4":{"position":[[117,2],[161,2],[467,2],[483,2],[649,2],[818,1],[882,3],[903,1],[1117,3],[1209,3],[1292,2],[1465,1],[1484,1],[1486,1],[1490,1],[1492,1]]},"16":{"position":[[93,2],[132,2],[290,2],[304,2],[1080,1]]},"28":{"position":[[441,2]]},"34":{"position":[[461,2],[471,1],[635,1]]},"36":{"position":[[534,2],[546,2],[662,2],[674,2]]},"53":{"position":[[214,2],[638,2],[698,2]]},"55":{"position":[[311,2]]},"57":{"position":[[287,1],[451,2],[565,2],[637,2]]},"59":{"position":[[602,2],[607,1]]},"61":{"position":[[684,2],[689,1]]},"63":{"position":[[892,3]]},"66":{"position":[[132,1],[176,2],[333,2],[405,2],[508,2],[613,2],[727,2],[739,2],[913,2]]},"68":{"position":[[86,1],[171,1]]},"81":{"position":[[128,3],[388,2],[545,2],[670,2]]},"83":{"position":[[125,2],[128,2],[141,2],[144,3],[210,1],[579,2],[716,2],[750,2]]},"89":{"position":[[111,2],[119,1],[134,1],[488,2],[513,2],[552,1]]},"91":{"position":[[122,1],[137,2],[157,1],[478,2],[509,2],[545,2],[562,1]]},"97":{"position":[[426,2],[440,2],[445,1]]},"107":{"position":[[455,2],[673,3],[684,2]]},"112":{"position":[[428,2]]}}}],["1.0",{"_index":388,"t":{"30":{"position":[[214,5]]},"34":{"position":[[714,3],[736,3]]},"36":{"position":[[290,3],[401,3],[427,3]]},"81":{"position":[[231,3]]},"83":{"position":[[481,3],[500,3],[520,3],[539,3]]},"85":{"position":[[232,3]]},"97":{"position":[[729,3]]},"114":{"position":[[764,4],[774,4],[911,4],[921,4],[1428,4],[1438,4]]}}}],["1.0d0",{"_index":1016,"t":{"107":{"position":[[508,6]]}}}],["1.234728",{"_index":166,"t":{"6":{"position":[[1681,8]]}}}],["1.2e2",{"_index":214,"t":{"10":{"position":[[50,6]]}}}],["1.4e4",{"_index":345,"t":{"26":{"position":[[35,6]]}}}],["1.5i",{"_index":222,"t":{"10":{"position":[[120,5]]}}}],["1.8448319779454493e",{"_index":1025,"t":{"107":{"position":[[825,19]]}}}],["10",{"_index":43,"t":{"4":{"position":[[120,2],[164,2],[470,4],[652,4]]},"10":{"position":[[25,3]]},"16":{"position":[[174,4],[211,4],[257,4]]},"26":{"position":[[252,2]]},"53":{"position":[[217,2],[641,2],[701,2]]},"66":{"position":[[341,2],[408,2],[511,2],[616,3],[684,3],[730,4],[742,3],[916,3]]},"68":{"position":[[105,3]]},"77":{"position":[[372,3],[422,2]]},"107":{"position":[[736,2]]}}}],["10**i",{"_index":953,"t":{"97":{"position":[[644,5]]}}}],["10.0",{"_index":957,"t":{"97":{"position":[[740,4]]}}}],["100",{"_index":646,"t":{"59":{"position":[[529,3]]},"66":{"position":[[336,4]]}}}],["100.0",{"_index":959,"t":{"97":{"position":[[752,5]]}}}],["1000",{"_index":595,"t":{"55":{"position":[[1119,6]]}}}],["1000.0",{"_index":961,"t":{"97":{"position":[[765,6]]}}}],["10000.0",{"_index":963,"t":{"97":{"position":[[779,7]]}}}],["100000.0",{"_index":965,"t":{"97":{"position":[[794,8]]}}}],["1000000",{"_index":861,"t":{"81":{"position":[[208,7]]},"83":{"position":[[444,7]]}}}],["10000000",{"_index":1001,"t":{"107":{"position":[[188,8]]}}}],["10^(12",{"_index":275,"t":{"16":{"position":[[1134,7],[1145,7]]}}}],["118.40",{"_index":568,"t":{"55":{"position":[[368,8]]}}}],["11_circ_area.f90",{"_index":811,"t":{"72":{"position":[[956,16],[1417,16]]}}}],["11_const_module.f90",{"_index":810,"t":{"72":{"position":[[927,19]]}}}],["11_const_module.o",{"_index":812,"t":{"72":{"position":[[973,17]]}}}],["12",{"_index":346,"t":{"26":{"position":[[51,2],[71,3]]}}}],["1234",{"_index":176,"t":{"6":{"position":[[1973,4],[1978,4],[2000,4],[2005,4],[2029,4]]}}}],["12_add.f90",{"_index":936,"t":{"95":{"position":[[738,10]]}}}],["12_add_module.f90",{"_index":935,"t":{"95":{"position":[[711,17]]}}}],["12_add_module.o",{"_index":937,"t":{"95":{"position":[[749,15]]}}}],["13",{"_index":353,"t":{"26":{"position":[[255,2]]}}}],["16",{"_index":237,"t":{"16":{"position":[[106,3],[145,3],[179,3],[216,3],[262,3]]}}}],["16_hypotenuse_program.f90",{"_index":695,"t":{"63":{"position":[[681,25],[1186,25]]}}}],["16_hypotenuse_subroutine.f90",{"_index":683,"t":{"63":{"position":[[161,28],[540,28],[641,28]]}}}],["16_hypotenuse_subroutine.o",{"_index":696,"t":{"63":{"position":[[707,26],[1212,26]]}}}],["18",{"_index":507,"t":{"44":{"position":[[211,3],[266,2]]}}}],["2",{"_index":73,"t":{"4":{"position":[[777,2],[793,3],[826,1],[848,2],[864,3],[905,1],[1075,2],[1143,2],[1165,2],[1235,2],[1295,1],[1453,2]]},"6":{"position":[[1410,1],[1892,1]]},"10":{"position":[[19,2],[62,2]]},"16":{"position":[[96,2],[135,2]]},"26":{"position":[[189,2]]},"28":{"position":[[330,2],[384,1]]},"34":{"position":[[624,2]]},"55":{"position":[[1041,1]]},"63":{"position":[[946,3]]},"68":{"position":[[125,2]]},"81":{"position":[[346,1],[511,2]]},"83":{"position":[[111,1]]},"91":{"position":[[146,2],[528,2]]}}}],["2(i4",{"_index":347,"t":{"26":{"position":[[60,10]]}}}],["2.0",{"_index":221,"t":{"10":{"position":[[114,3]]},"30":{"position":[[128,5]]},"34":{"position":[[703,3]]},"36":{"position":[[336,3]]}}}],["2.0000",{"_index":956,"t":{"97":{"position":[[733,6]]}}}],["2.2",{"_index":892,"t":{"85":{"position":[[377,3]]}}}],["2.3d",{"_index":215,"t":{"10":{"position":[[57,4]]}}}],["2.54",{"_index":144,"t":{"6":{"position":[[1045,4]]}}}],["2.5937",{"_index":958,"t":{"97":{"position":[[745,6]]}}}],["2.7048",{"_index":960,"t":{"97":{"position":[[758,6]]}}}],["2.7171",{"_index":962,"t":{"97":{"position":[[772,6]]}}}],["2.71828182",{"_index":799,"t":{"72":{"position":[[317,10]]}}}],["2.7186",{"_index":964,"t":{"97":{"position":[[787,6]]}}}],["2.7220",{"_index":966,"t":{"97":{"position":[[803,6]]}}}],["200",{"_index":267,"t":{"16":{"position":[[942,6]]}}}],["2008",{"_index":983,"t":{"103":{"position":[[64,4]]}}}],["2022",{"_index":1021,"t":{"107":{"position":[[731,4]]}}}],["20a",{"_index":845,"t":{"77":{"position":[[479,4]]}}}],["25",{"_index":162,"t":{"6":{"position":[[1623,2]]}}}],["255",{"_index":1089,"t":{"114":{"position":[[293,3],[785,4],[932,4],[1449,4]]}}}],["256",{"_index":202,"t":{"6":{"position":[[2389,3]]}}}],["27.0",{"_index":870,"t":{"81":{"position":[[662,5]]}}}],["2889.6612",{"_index":569,"t":{"55":{"position":[[386,9]]}}}],["29_mpi_hello_world.f90",{"_index":848,"t":{"77":{"position":[[547,22],[639,22]]}}}],["29_mpi_hello_world.out",{"_index":849,"t":{"77":{"position":[[573,22],[665,22],[728,24]]}}}],["2i4",{"_index":348,"t":{"26":{"position":[[101,7]]},"85":{"position":[[739,8]]}}}],["3",{"_index":74,"t":{"4":{"position":[[780,2],[797,3],[820,1],[851,2],[868,3],[907,1],[1053,2],[1078,2],[1170,2]]},"26":{"position":[[281,2]]},"28":{"position":[[419,2]]},"34":{"position":[[347,1]]},"81":{"position":[[132,2],[675,1]]}}}],["3.0",{"_index":383,"t":{"30":{"position":[[134,4]]},"34":{"position":[[747,3]]},"36":{"position":[[349,3]]},"81":{"position":[[250,3]]}}}],["3.14",{"_index":213,"t":{"10":{"position":[[44,5]]},"59":{"position":[[543,4]]}}}],["3.14159",{"_index":157,"t":{"6":{"position":[[1322,7]]},"14":{"position":[[24,7]]},"30":{"position":[[265,8],[311,8]]}}}],["3.14159265",{"_index":797,"t":{"72":{"position":[[275,10]]}}}],["3.1416",{"_index":181,"t":{"6":{"position":[[2063,6]]}}}],["3.5",{"_index":344,"t":{"26":{"position":[[30,4]]}}}],["4",{"_index":75,"t":{"4":{"position":[[783,2],[828,1],[854,2],[911,1],[1083,2],[1173,2]]},"6":{"position":[[1747,1],[1826,1]]},"16":{"position":[[99,2],[119,3],[138,2],[158,3],[168,2],[192,3],[205,2],[229,3],[251,2],[293,1],[843,1],[967,1]]},"20":{"position":[[199,2]]},"28":{"position":[[417,1]]},"77":{"position":[[701,1],[726,1]]},"83":{"position":[[239,1]]}}}],["4.0",{"_index":464,"t":{"36":{"position":[[388,3],[414,3],[440,3]]},"70":{"position":[[59,3]]},"83":{"position":[[785,3]]}}}],["4.9",{"_index":299,"t":{"20":{"position":[[152,5],[193,5]]}}}],["45",{"_index":603,"t":{"55":{"position":[[1304,2]]}}}],["5",{"_index":76,"t":{"4":{"position":[[786,2],[822,1],[857,2],[913,1],[1086,2],[1178,2]]},"20":{"position":[[158,1]]},"26":{"position":[[284,1]]},"53":{"position":[[309,2]]},"85":{"position":[[415,1]]},"97":{"position":[[228,1]]}}}],["5.0",{"_index":389,"t":{"30":{"position":[[220,4]]},"34":{"position":[[758,3]]},"36":{"position":[[453,3]]},"72":{"position":[[487,4]]}}}],["50000.0",{"_index":1076,"t":{"112":{"position":[[758,8]]}}}],["6",{"_index":77,"t":{"4":{"position":[[789,3],[830,1],[860,3],[915,1],[1089,3],[1181,3]]},"6":{"position":[[1806,1]]},"53":{"position":[[316,1]]}}}],["6.0",{"_index":472,"t":{"36":{"position":[[479,3]]}}}],["6.3781d6",{"_index":576,"t":{"55":{"position":[[519,8]]}}}],["63",{"_index":206,"t":{"8":{"position":[[34,2]]}}}],["65",{"_index":509,"t":{"44":{"position":[[281,3]]}}}],["76.0",{"_index":1069,"t":{"112":{"position":[[480,4],[540,5],[752,5]]}}}],["8",{"_index":236,"t":{"16":{"position":[[102,3],[141,3],[171,2],[208,2],[254,2],[275,3],[365,1],[399,1]]},"26":{"position":[[75,1]]},"85":{"position":[[426,1]]}}}],["86.67",{"_index":566,"t":{"55":{"position":[[349,7]]}}}],["9.0",{"_index":461,"t":{"36":{"position":[[362,3],[466,3]]}}}],["99",{"_index":705,"t":{"63":{"position":[[1087,3],[1098,2]]}}}],["9999816.5167837571",{"_index":1024,"t":{"107":{"position":[[783,18]]}}}],["a(1,1",{"_index":458,"t":{"36":{"position":[[327,6]]}}}],["a(1,2",{"_index":459,"t":{"36":{"position":[[340,6]]}}}],["a(1,3",{"_index":460,"t":{"36":{"position":[[353,6]]}}}],["a(2,1",{"_index":462,"t":{"36":{"position":[[366,6]]}}}],["a(2,2",{"_index":463,"t":{"36":{"position":[[379,6]]}}}],["a(2,3",{"_index":465,"t":{"36":{"position":[[392,6]]}}}],["a(i",{"_index":613,"t":{"57":{"position":[[504,4],[659,4]]}}}],["a(m,k",{"_index":454,"t":{"36":{"position":[[259,7]]}}}],["a)/nh=(b−a)/n",{"_index":635,"t":{"59":{"position":[[169,14]]}}}],["a,/,a",{"_index":367,"t":{"28":{"position":[[344,10]]}}}],["a,f12.4,a",{"_index":594,"t":{"55":{"position":[[1083,14]]}}}],["a,f8.4",{"_index":615,"t":{"57":{"position":[[684,11],[768,11]]}}}],["a,i4,a",{"_index":612,"t":{"57":{"position":[[467,13],[581,13]]}}}],["a.out",{"_index":135,"t":{"6":{"position":[[782,7]]},"72":{"position":[[991,7]]},"95":{"position":[[765,7]]},"109":{"position":[[589,5],[663,7],[745,6]]}}}],["a128",{"_index":21,"t":{"2":{"position":[[222,12]]}}}],["a=0.0",{"_index":674,"t":{"61":{"position":[[922,6]]}}}],["ab",{"_index":386,"t":{"30":{"position":[[191,4]]}}}],["abov",{"_index":128,"t":{"6":{"position":[[678,5]]},"44":{"position":[[409,5]]},"53":{"position":[[460,5]]},"61":{"position":[[23,5]]},"72":{"position":[[389,5]]},"99":{"position":[[182,5]]}}}],["abs(1.0",{"_index":880,"t":{"83":{"position":[[844,7]]}}}],["abs(x",{"_index":291,"t":{"20":{"position":[[22,6]]}}}],["abs_path",{"_index":14,"t":{"2":{"position":[[159,9],[246,8],[310,8]]}}}],["absolut",{"_index":4,"t":{"2":{"position":[[49,8],[291,9]]},"20":{"position":[[29,8]]}}}],["access",{"_index":806,"t":{"72":{"position":[[666,10],[724,10],[830,10]]},"114":{"position":[[948,9]]}}}],["accuraci",{"_index":1020,"t":{"107":{"position":[[646,8],[813,8]]}}}],["aco",{"_index":323,"t":{"22":{"position":[[99,4]]}}}],["adapt",{"_index":755,"t":{"70":{"position":[[375,5]]}}}],["add",{"_index":109,"t":{"6":{"position":[[182,3],[214,3],[388,3]]},"95":{"position":[[571,3],[674,3]]}}}],["add_modul",{"_index":928,"t":{"95":{"position":[[73,10],[514,10],[579,10]]}}}],["add_numb",{"_index":932,"t":{"95":{"position":[[159,12],[341,13],[394,11],[628,13]]}}}],["adult",{"_index":508,"t":{"44":{"position":[[242,7],[308,7]]},"46":{"position":[[170,7],[208,7]]}}}],["advance='no",{"_index":158,"t":{"6":{"position":[[1346,13]]}}}],["ag",{"_index":504,"t":{"44":{"position":[[67,3],[98,4],[113,3],[120,4],[185,5],[204,4],[258,4],[275,3]]},"46":{"position":[[67,3],[98,4],[113,3],[129,5]]},"112":{"position":[[197,3],[668,5]]}}}],["age_group",{"_index":503,"t":{"44":{"position":[[32,9],[367,9]]}}}],["age_select",{"_index":513,"t":{"46":{"position":[[31,10],[276,10]]}}}],["albert",{"_index":1066,"t":{"112":{"position":[[447,7],[521,7],[733,7]]}}}],["alia",{"_index":882,"t":{"85":{"position":[[25,5]]}}}],["alloc",{"_index":64,"t":{"4":{"position":[[557,10],[689,10]]},"57":{"position":[[25,11]]},"85":{"position":[[334,8]]},"114":{"position":[[1320,8]]}}}],["allocat",{"_index":65,"t":{"4":{"position":[[573,12],[609,11]]},"34":{"position":[[389,11],[426,11]]},"57":{"position":[[133,11],[170,11]]},"114":{"position":[[560,11],[601,11]]}}}],["allocate(a(length",{"_index":609,"t":{"57":{"position":[[363,19]]}}}],["allocate(b(length",{"_index":610,"t":{"57":{"position":[[383,19]]}}}],["allocate(colored_lin",{"_index":1118,"t":{"114":{"position":[[1376,22]]}}}],["allocate(p2",{"_index":890,"t":{"85":{"position":[[269,12]]}}}],["allocate(vector_lin",{"_index":1102,"t":{"114":{"position":[[860,21]]}}}],["allocate(vector_line_type::vector_lin",{"_index":1101,"t":{"114":{"position":[[820,39]]}}}],["allocate(x(n",{"_index":425,"t":{"34":{"position":[[666,14]]}}}],["allocate(y(n",{"_index":426,"t":{"34":{"position":[[681,14]]}}}],["allow",{"_index":124,"t":{"6":{"position":[[594,7]]},"72":{"position":[[804,6]]}}}],["alpha",{"_index":446,"t":{"36":{"position":[[81,6],[182,6],[282,5],[607,6]]}}}],["alphanumer",{"_index":208,"t":{"8":{"position":[[69,12]]}}}],["alt",{"_index":439,"t":{"34":{"position":[[901,5]]}}}],["altern",{"_index":419,"t":{"34":{"position":[[578,9]]},"112":{"position":[[487,14]]},"114":{"position":[[792,11]]}}}],["an=h[f(a)2+f(a+h)+f(a+2h)+⋯+f(b)2]a_n",{"_index":636,"t":{"59":{"position":[[206,37]]}}}],["analyt",{"_index":869,"t":{"81":{"position":[[638,11]]}}}],["anoth",{"_index":53,"t":{"4":{"position":[[294,7]]},"6":{"position":[[806,7]]}}}],["appropri",{"_index":765,"t":{"70":{"position":[[520,11]]}}}],["approxim",{"_index":871,"t":{"83":{"position":[[8,11],[327,11]]}}}],["apt",{"_index":402,"t":{"32":{"position":[[35,3]]},"109":{"position":[[263,3]]}}}],["area",{"_index":622,"t":{"59":{"position":[[22,4],[184,4],[394,4],[504,4],[564,4],[609,4],[616,4],[643,4],[654,4],[668,5],[679,4]]},"61":{"position":[[616,4],[650,4],[691,4],[698,4],[745,4]]},"72":{"position":[[492,4],[497,4],[523,5],[534,4]]},"81":{"position":[[83,4],[286,5],[562,4],[613,5],[624,4]]},"83":{"position":[[218,4]]}}}],["area_rect",{"_index":866,"t":{"81":{"position":[[292,9],[348,9],[569,9]]}}}],["area_under_curv",{"_index":860,"t":{"81":{"position":[[143,16],[689,16]]}}}],["arg",{"_index":363,"t":{"28":{"position":[[190,3],[488,4],[599,3]]}}}],["argument",{"_index":293,"t":{"20":{"position":[[59,8]]},"28":{"position":[[82,10],[279,9],[386,12],[505,8]]},"61":{"position":[[135,8]]}}}],["arithmet",{"_index":105,"t":{"6":{"position":[[110,10]]},"30":{"position":[[322,10]]}}}],["arr",{"_index":889,"t":{"85":{"position":[[223,3],[439,3],[748,3]]}}}],["arr(1",{"_index":893,"t":{"85":{"position":[[406,6]]}}}],["arr(2",{"_index":894,"t":{"85":{"position":[[417,6]]}}}],["array",{"_index":37,"t":{"4":{"position":[[29,5],[43,5],[207,5],[352,6],[551,5],[683,5],[741,5],[1374,5]]},"34":{"position":[[563,6],[588,5]]},"57":{"position":[[19,5],[425,5],[539,5]]},"112":{"position":[[335,5]]}}}],["array2",{"_index":60,"t":{"4":{"position":[[385,6],[536,6]]}}}],["article’",{"_index":743,"t":{"70":{"position":[[149,9]]}}}],["asin",{"_index":317,"t":{"22":{"position":[[40,4]]}}}],["asin(sqrt(a",{"_index":593,"t":{"55":{"position":[[1063,13]]}}}],["ask",{"_index":101,"t":{"6":{"position":[[70,4]]}}}],["assign",{"_index":58,"t":{"4":{"position":[[342,6],[717,6],[1359,6],[1402,9]]},"114":{"position":[[699,8],[811,6]]}}}],["associ",{"_index":897,"t":{"85":{"position":[[539,11],[574,11],[677,10]]}}}],["associated(p1",{"_index":898,"t":{"85":{"position":[[589,14],[656,14]]}}}],["ast",{"_index":447,"t":{"36":{"position":[[90,4]]}}}],["atan",{"_index":327,"t":{"22":{"position":[[160,4]]}}}],["atan(1.0",{"_index":602,"t":{"55":{"position":[[1292,9]]}}}],["atan(1.0d0",{"_index":263,"t":{"16":{"position":[[847,11],[971,11]]},"83":{"position":[[881,12],[896,11]]}}}],["atan2",{"_index":328,"t":{"22":{"position":[[177,5]]}}}],["attribut",{"_index":738,"t":{"70":{"position":[[47,11],[492,11]]}}}],["avail",{"_index":239,"t":{"16":{"position":[[313,9]]}}}],["avoid",{"_index":281,"t":{"18":{"position":[[85,7]]}}}],["b",{"_index":87,"t":{"4":{"position":[[1149,1],[1281,2]]},"6":{"position":[[246,2],[303,1],[316,1],[331,1],[361,2]]},"36":{"position":[[95,1],[620,2]]},"55":{"position":[[793,1],[847,1]]},"57":{"position":[[185,1],[835,2]]},"59":{"position":[[498,2],[539,1],[552,2]]},"61":{"position":[[392,2],[554,1],[638,2]]},"105":{"position":[[87,1],[168,1],[183,2],[214,1],[244,2],[277,1],[303,1],[305,1]]},"114":{"position":[[275,1]]}}}],["b(1,1",{"_index":466,"t":{"36":{"position":[[405,6]]}}}],["b(1,2",{"_index":467,"t":{"36":{"position":[[418,6]]}}}],["b(2,1",{"_index":468,"t":{"36":{"position":[[431,6]]}}}],["b(2,2",{"_index":469,"t":{"36":{"position":[[444,6]]}}}],["b(3,1",{"_index":470,"t":{"36":{"position":[[457,6]]}}}],["b(3,2",{"_index":471,"t":{"36":{"position":[[470,6]]}}}],["b(i",{"_index":614,"t":{"57":{"position":[[618,4],[666,4]]}}}],["b(k,n",{"_index":455,"t":{"36":{"position":[[267,7]]}}}],["b=3.14159",{"_index":675,"t":{"61":{"position":[[929,10]]}}}],["b^2}c=a2+b2",{"_index":680,"t":{"63":{"position":[[77,12]]}}}],["base",{"_index":714,"t":{"66":{"position":[[378,5]]},"114":{"position":[[93,4],[197,4]]}}}],["basic",{"_index":379,"t":{"30":{"position":[[0,5]]},"101":{"position":[[112,9]]}}}],["befor",{"_index":813,"t":{"72":{"position":[[1032,6],[1132,6]]}}}],["beforehand",{"_index":279,"t":{"18":{"position":[[45,11]]}}}],["below",{"_index":895,"t":{"85":{"position":[[445,5]]}}}],["benchmark",{"_index":1014,"t":{"107":{"position":[[438,9]]}}}],["beta",{"_index":448,"t":{"36":{"position":[[99,5],[189,4],[294,4],[626,5]]}}}],["between",{"_index":547,"t":{"55":{"position":[[23,7],[188,7]]}}}],["binari",{"_index":1045,"t":{"109":{"position":[[571,6]]}}}],["bit",{"_index":1104,"t":{"114":{"position":[[970,3]]}}}],["bla",{"_index":399,"t":{"32":{"position":[[8,4]]},"34":{"position":[[237,4]]}}}],["blank",{"_index":340,"t":{"24":{"position":[[102,5]]}}}],["blaslib",{"_index":403,"t":{"32":{"position":[[47,7]]}}}],["block",{"_index":973,"t":{"101":{"position":[[10,5]]}}}],["bna(36.12",{"_index":565,"t":{"55":{"position":[[338,10]]}}}],["bodi",{"_index":908,"t":{"87":{"position":[[118,5]]}}}],["both",{"_index":118,"t":{"6":{"position":[[486,4]]},"16":{"position":[[522,4]]},"34":{"position":[[525,4]]},"72":{"position":[[1068,4]]},"85":{"position":[[705,4]]}}}],["bound",{"_index":627,"t":{"59":{"position":[[67,6]]}}}],["brainerd",{"_index":986,"t":{"103":{"position":[[93,8]]}}}],["break",{"_index":194,"t":{"6":{"position":[[2247,5]]},"26":{"position":[[116,6],[181,7]]}}}],["brew",{"_index":1040,"t":{"109":{"position":[[327,4]]}}}],["build",{"_index":758,"t":{"70":{"position":[[405,5]]}}}],["built",{"_index":617,"t":{"57":{"position":[[736,5],[797,5]]}}}],["byte",{"_index":245,"t":{"16":{"position":[[452,6]]}}}],["c",{"_index":473,"t":{"36":{"position":[[507,1],[632,2],[653,1],[688,5]]},"63":{"position":[[159,1],[538,1],[639,1]]},"72":{"position":[[925,1]]},"95":{"position":[[709,1]]},"109":{"position":[[976,1]]}}}],["c(i,j",{"_index":475,"t":{"36":{"position":[[551,6],[712,6]]}}}],["c(m,n",{"_index":456,"t":{"36":{"position":[[275,6]]}}}],["c=a2+b2c",{"_index":678,"t":{"63":{"position":[[54,8]]}}}],["cabs(z",{"_index":387,"t":{"30":{"position":[[201,7]]}}}],["cacul",{"_index":644,"t":{"59":{"position":[[381,8]]}}}],["calcul",{"_index":145,"t":{"6":{"position":[[1107,9],[1195,9]]},"36":{"position":[[6,10]]},"42":{"position":[[0,9],[79,9]]},"55":{"position":[[165,9]]},"59":{"position":[[8,9]]},"61":{"position":[[201,12]]},"63":{"position":[[18,10],[815,9]]},"66":{"position":[[0,9]]},"81":{"position":[[73,9]]},"89":{"position":[[0,9],[82,9],[233,10]]},"91":{"position":[[0,9],[241,10]]}}}],["calculate_hypotenus",{"_index":692,"t":{"63":{"position":[[483,20]]}}}],["calculate_hypotenuse(s1",{"_index":704,"t":{"63":{"position":[[1040,24]]}}}],["calculate_hypotenuse(side_a",{"_index":684,"t":{"63":{"position":[[201,28]]}}}],["call",{"_index":28,"t":{"2":{"position":[[587,4],[695,4]]},"28":{"position":[[459,4]]},"36":{"position":[[578,4]]},"51":{"position":[[7,4],[203,4],[266,4]]},"61":{"position":[[153,7]]},"63":{"position":[[985,4],[1015,7],[1035,4]]},"66":{"position":[[411,4]]},"77":{"position":[[165,4],[187,4],[247,4],[304,4],[484,4]]},"81":{"position":[[401,4],[423,4]]},"83":{"position":[[592,4],[614,4]]},"89":{"position":[[296,4],[496,4]]},"95":{"position":[[604,4],[623,4],[642,4]]},"101":{"position":[[64,7],[92,4]]},"105":{"position":[[170,4]]},"107":{"position":[[297,4],[403,4],[522,4]]}}}],["carlo",{"_index":858,"t":{"81":{"position":[[43,5]]},"83":{"position":[[44,5]]}}}],["case",{"_index":116,"t":{"6":{"position":[[444,4]]},"8":{"position":[[154,4]]},"32":{"position":[[125,4]]},"46":{"position":[[124,4],[135,4]]}}}],["case(18:64",{"_index":515,"t":{"46":{"position":[[178,11]]}}}],["case(65",{"_index":516,"t":{"46":{"position":[[216,9]]}}}],["cc⇐αa∗b+βc",{"_index":449,"t":{"36":{"position":[[105,10]]}}}],["cdot",{"_index":641,"t":{"59":{"position":[[290,6]]}}}],["centimet",{"_index":138,"t":{"6":{"position":[[843,10],[907,10],[1007,10]]}}}],["certain",{"_index":826,"t":{"74":{"position":[[60,7]]}}}],["chang",{"_index":769,"t":{"70":{"position":[[587,7]]},"99":{"position":[[21,6],[128,8]]}}}],["charact",{"_index":197,"t":{"6":{"position":[[2265,9]]},"8":{"position":[[37,11],[82,10],[116,9]]},"10":{"position":[[152,10]]},"16":{"position":[[279,10]]},"24":{"position":[[108,9]]},"77":{"position":[[114,10]]}}}],["character(len=128",{"_index":11,"t":{"2":{"position":[[125,18],[346,18],[413,19],[458,18]]}}}],["character(len=20",{"_index":229,"t":{"12":{"position":[[86,17]]}}}],["character(len=32",{"_index":362,"t":{"28":{"position":[[169,17]]}}}],["character(len=64",{"_index":1054,"t":{"112":{"position":[[169,17]]}}}],["character(len=8",{"_index":1002,"t":{"107":{"position":[[197,16]]}}}],["check",{"_index":896,"t":{"85":{"position":[[533,5]]}}}],["choic",{"_index":1042,"t":{"109":{"position":[[405,6]]}}}],["circ",{"_index":152,"t":{"6":{"position":[[1261,4],[1483,4]]}}}],["circ_area",{"_index":801,"t":{"72":{"position":[[432,9],[551,9]]}}}],["circl",{"_index":147,"t":{"6":{"position":[[1140,6],[1228,6],[1381,7],[1452,6]]},"83":{"position":[[193,6],[271,6],[300,8]]}}}],["circum",{"_index":154,"t":{"6":{"position":[[1291,6],[1401,6],[1464,6]]}}}],["circumfer",{"_index":146,"t":{"6":{"position":[[1121,13],[1209,13],[1430,14]]},"12":{"position":[[42,13]]}}}],["class",{"_index":1095,"t":{"114":{"position":[[473,5],[665,5],[1246,5]]}}}],["class(line_typ",{"_index":1096,"t":{"114":{"position":[[583,17]]}}}],["close(unit=1",{"_index":535,"t":{"53":{"position":[[249,13],[676,13]]}}}],["cm",{"_index":143,"t":{"6":{"position":[[966,3],[1030,2],[1040,2]]}}}],["cm2inch",{"_index":141,"t":{"6":{"position":[[936,7],[1099,7]]}}}],["cmplx(1.0",{"_index":390,"t":{"30":{"position":[[254,10]]}}}],["co",{"_index":321,"t":{"22":{"position":[[79,3],[124,3]]}}}],["code",{"_index":129,"t":{"6":{"position":[[684,4],[745,4]]},"51":{"position":[[339,5]]},"61":{"position":[[51,5],[105,6],[244,4]]},"77":{"position":[[534,5]]},"101":{"position":[[171,5]]},"109":{"position":[[117,6],[428,6],[487,4],[631,5]]}}}],["color",{"_index":1110,"t":{"114":{"position":[[1105,7]]}}}],["colored_lin",{"_index":1097,"t":{"114":{"position":[[616,13],[726,12]]}}}],["colored_line%b",{"_index":1113,"t":{"114":{"position":[[1148,14]]}}}],["colored_line%direct",{"_index":1116,"t":{"114":{"position":[[1223,22]]}}}],["colored_line%g",{"_index":1112,"t":{"114":{"position":[[1132,15]]}}}],["colored_line%r",{"_index":1111,"t":{"114":{"position":[[1116,15]]}}}],["colored_line%x_start",{"_index":1108,"t":{"114":{"position":[[1048,20]]}}}],["colored_line_typ",{"_index":1086,"t":{"114":{"position":[[240,17],[306,17],[708,17]]}}}],["colored_line_type(0.0",{"_index":1100,"t":{"114":{"position":[[741,22]]}}}],["come",{"_index":815,"t":{"72":{"position":[[1127,4]]}}}],["comma",{"_index":341,"t":{"24":{"position":[[121,5]]},"105":{"position":[[147,7]]}}}],["command",{"_index":358,"t":{"28":{"position":[[69,7]]},"51":{"position":[[53,8],[170,7]]},"74":{"position":[[143,7]]}}}],["command_argument_count",{"_index":355,"t":{"28":{"position":[[12,22],[234,24]]}}}],["comment",{"_index":185,"t":{"6":{"position":[[2111,7]]}}}],["commerci",{"_index":762,"t":{"70":{"position":[[451,13]]}}}],["common",{"_index":338,"t":{"22":{"position":[[300,6]]},"70":{"position":[[39,7],[168,7]]}}}],["compil",{"_index":131,"t":{"6":{"position":[[721,7]]},"32":{"position":[[75,7]]},"34":{"position":[[194,8]]},"63":{"position":[[125,7],[504,7],[1155,7]]},"72":{"position":[[875,7],[1023,8],[1171,9],[1223,7],[1297,8]]},"77":{"position":[[522,7],[621,8]]},"95":{"position":[[678,7]]},"109":{"position":[[201,9],[518,8],[849,7]]}}}],["complex",{"_index":220,"t":{"10":{"position":[[96,7]]},"12":{"position":[[56,7]]},"16":{"position":[[196,8],[470,7]]},"20":{"position":[[93,7]]},"22":{"position":[[203,7]]},"30":{"position":[[15,7],[113,7],[139,7],[567,7],[597,8]]}}}],["complex_numb",{"_index":381,"t":{"30":{"position":[[84,14],[642,14]]}}}],["complx(x",{"_index":294,"t":{"20":{"position":[[68,9]]}}}],["compon",{"_index":611,"t":{"57":{"position":[[431,12],[545,12]]}}}],["compos",{"_index":207,"t":{"8":{"position":[[57,8]]}}}],["comput",{"_index":412,"t":{"34":{"position":[[81,9]]},"99":{"position":[[91,9]]},"109":{"position":[[53,10]]}}}],["concaten",{"_index":199,"t":{"6":{"position":[[2291,13]]}}}],["concurr",{"_index":728,"t":{"66":{"position":[[749,11],[824,10],[897,10]]}}}],["condit",{"_index":715,"t":{"66":{"position":[[387,10]]}}}],["conjg(z2",{"_index":397,"t":{"30":{"position":[[620,9]]}}}],["conjug",{"_index":396,"t":{"30":{"position":[[575,9],[606,10]]}}}],["consid",{"_index":288,"t":{"18":{"position":[[262,10]]},"109":{"position":[[155,8]]}}}],["consist",{"_index":976,"t":{"101":{"position":[[122,8]]}}}],["const_modul",{"_index":796,"t":{"72":{"position":[[208,12],[339,12],[446,12]]},"74":{"position":[[23,13],[83,13],[111,13],[167,13],[195,13],[243,13]]}}}],["constant",{"_index":793,"t":{"72":{"position":[[131,9]]}}}],["constants_modul",{"_index":794,"t":{"72":{"position":[[159,17]]}}}],["contain",{"_index":596,"t":{"55":{"position":[[1130,8]]},"61":{"position":[[359,8]]},"89":{"position":[[357,8]]},"91":{"position":[[371,8]]},"93":{"position":[[130,8]]},"95":{"position":[[185,8]]},"97":{"position":[[242,8]]},"99":{"position":[[192,8]]},"105":{"position":[[216,8]]}}}],["continu",{"_index":186,"t":{"6":{"position":[[2138,12]]}}}],["contrast",{"_index":967,"t":{"97":{"position":[[813,8]]}}}],["convers",{"_index":270,"t":{"16":{"position":[[1024,10]]}}}],["convert",{"_index":2,"t":{"2":{"position":[[22,7]]},"6":{"position":[[834,8],[896,10]]},"20":{"position":[[81,8],[167,8],[317,8]]}}}],["copi",{"_index":752,"t":{"70":{"position":[[315,4],[956,4]]}}}],["correct",{"_index":975,"t":{"101":{"position":[[100,8]]}}}],["cos(lat1",{"_index":589,"t":{"55":{"position":[[982,9]]}}}],["cos(lat2",{"_index":590,"t":{"55":{"position":[[994,9]]}}}],["cos(theta))/2",{"_index":563,"t":{"55":{"position":[[316,13]]}}}],["cosh",{"_index":324,"t":{"22":{"position":[[119,4]]}}}],["cosin",{"_index":322,"t":{"22":{"position":[[83,6],[112,6]]}}}],["count",{"_index":874,"t":{"83":{"position":[[156,5]]}}}],["cpu_time(end_tim",{"_index":1017,"t":{"107":{"position":[[527,18]]}}}],["cpu_time(start_tim",{"_index":1012,"t":{"107":{"position":[[408,20]]}}}],["creat",{"_index":817,"t":{"72":{"position":[[1189,6]]},"85":{"position":[[284,7]]},"109":{"position":[[562,6]]}}}],["creativ",{"_index":737,"t":{"70":{"position":[[30,8],[159,8]]}}}],["credit",{"_index":766,"t":{"70":{"position":[[532,7]]}}}],["cup_tim",{"_index":997,"t":{"107":{"position":[[41,8]]}}}],["current",{"_index":719,"t":{"66":{"position":[[471,7]]},"107":{"position":[[58,7]]}}}],["curv",{"_index":624,"t":{"59":{"position":[[37,5],[118,5],[199,6],[407,5]]},"81":{"position":[[98,5]]}}}],["cx",{"_index":228,"t":{"12":{"position":[[67,2]]}}}],["cycl",{"_index":721,"t":{"66":{"position":[[494,6],[529,5]]}}}],["c⇐αa∗b+βcc",{"_index":444,"t":{"36":{"position":[[59,10]]}}}],["d",{"_index":216,"t":{"10":{"position":[[65,1]]}}}],["dangl",{"_index":902,"t":{"85":{"position":[[781,8]]}}}],["data",{"_index":235,"t":{"16":{"position":[[68,4]]},"34":{"position":[[515,4]]},"53":{"position":[[27,4],[420,4],[513,4]]}}}],["data(10",{"_index":541,"t":{"53":{"position":[[575,8]]}}}],["data(ii",{"_index":544,"t":{"53":{"position":[[660,8],[718,8]]}}}],["date",{"_index":998,"t":{"107":{"position":[[66,4],[217,4],[351,6],[724,6]]}}}],["date(1:4",{"_index":1009,"t":{"107":{"position":[[361,10]]}}}],["date(5:6",{"_index":1010,"t":{"107":{"position":[[377,10]]}}}],["date(7:8",{"_index":1011,"t":{"107":{"position":[[393,9]]}}}],["date_and_tim",{"_index":996,"t":{"107":{"position":[[23,13]]}}}],["date_and_time(date=d",{"_index":1007,"t":{"107":{"position":[[302,24]]}}}],["dcmplx(1.0",{"_index":391,"t":{"30":{"position":[[299,11]]}}}],["deallocate(a",{"_index":67,"t":{"4":{"position":[[657,13]]},"57":{"position":[[838,13]]}}}],["deallocate(b",{"_index":621,"t":{"57":{"position":[[852,13]]}}}],["deallocate(colored_lin",{"_index":1117,"t":{"114":{"position":[[1349,24]]}}}],["deallocate(i",{"_index":441,"t":{"34":{"position":[[961,13]]}}}],["deallocate(p2",{"_index":901,"t":{"85":{"position":[[752,14]]}}}],["deallocate(x",{"_index":440,"t":{"34":{"position":[[947,13]]}}}],["debian",{"_index":1036,"t":{"109":{"position":[[250,7]]}}}],["decim",{"_index":172,"t":{"6":{"position":[[1836,7],[1907,7]]},"16":{"position":[[872,7]]}}}],["declar",{"_index":278,"t":{"18":{"position":[[36,8],[154,9]]},"63":{"position":[[266,7]]},"72":{"position":[[624,8]]},"99":{"position":[[148,8]]},"101":{"position":[[181,11]]},"112":{"position":[[324,7]]},"114":{"position":[[546,8]]}}}],["default",{"_index":238,"t":{"16":{"position":[[110,8],[149,8],[183,8],[220,8],[266,8],[295,8]]},"46":{"position":[[140,7]]},"109":{"position":[[737,7]]},"114":{"position":[[1252,7]]}}}],["defin",{"_index":560,"t":{"55":{"position":[[269,7]]},"112":{"position":[[65,7]]},"114":{"position":[[84,6]]}}}],["definit",{"_index":608,"t":{"57":{"position":[[340,10]]}}}],["deg2rad",{"_index":605,"t":{"55":{"position":[[1376,7]]}}}],["deg2rad(degre",{"_index":597,"t":{"55":{"position":[[1148,15]]}}}],["deg2rad(lat1",{"_index":583,"t":{"55":{"position":[[873,13]]}}}],["deg2rad(lat2",{"_index":585,"t":{"55":{"position":[[915,13]]}}}],["deg2rad(lon1",{"_index":584,"t":{"55":{"position":[[894,13]]}}}],["deg2rad(lon2",{"_index":586,"t":{"55":{"position":[[936,13]]}}}],["deg_to_rad",{"_index":601,"t":{"55":{"position":[[1279,10],[1352,10]]}}}],["degre",{"_index":599,"t":{"55":{"position":[[1178,7],[1235,6],[1343,6]]}}}],["depend",{"_index":1047,"t":{"109":{"position":[[793,9]]}}}],["descript",{"_index":290,"t":{"20":{"position":[[10,11]]},"22":{"position":[[10,11]]}}}],["determin",{"_index":49,"t":{"4":{"position":[[249,9]]},"18":{"position":[[193,10]]},"55":{"position":[[0,9]]},"107":{"position":[[85,9]]}}}],["dev",{"_index":404,"t":{"32":{"position":[[55,3],[69,3]]}}}],["dgemm",{"_index":442,"t":{"36":{"position":[[0,5]]}}}],["dgemm('n','n",{"_index":476,"t":{"36":{"position":[[583,14]]}}}],["diamet",{"_index":149,"t":{"6":{"position":[[1157,9]]}}}],["differ",{"_index":820,"t":{"72":{"position":[[1354,9]]}}}],["dimens",{"_index":66,"t":{"4":{"position":[[595,13]]},"24":{"position":[[45,11]]},"34":{"position":[[375,13],[412,13]]},"57":{"position":[[119,13],[156,13]]},"85":{"position":[[157,13]]}}}],["dimension",{"_index":70,"t":{"4":{"position":[[729,11]]}}}],["dimension(10",{"_index":61,"t":{"4":{"position":[[415,13]]}}}],["dimension(2",{"_index":84,"t":{"4":{"position":[[1040,12],[1222,12],[1440,12]]},"85":{"position":[[199,13]]}}}],["dimension(3",{"_index":86,"t":{"4":{"position":[[1130,12]]}}}],["direct",{"_index":1092,"t":{"114":{"position":[[388,9],[405,9],[1210,9]]}}}],["directori",{"_index":821,"t":{"72":{"position":[[1364,10]]},"109":{"position":[[607,9]]}}}],["dist",{"_index":582,"t":{"55":{"position":[[647,4],[1034,4],[1112,4]]}}}],["distanc",{"_index":546,"t":{"55":{"position":[[14,8],[179,8],[377,8],[1098,10]]}}}],["divid",{"_index":630,"t":{"59":{"position":[[107,6]]}}}],["do",{"_index":97,"t":{"6":{"position":[[17,6]]}}}],["done",{"_index":191,"t":{"6":{"position":[[2193,4]]},"12":{"position":[[81,4]]}}}],["dot_product",{"_index":618,"t":{"57":{"position":[[742,11],[803,11]]}}}],["dot_product(a",{"_index":620,"t":{"57":{"position":[[820,14]]}}}],["doubl",{"_index":218,"t":{"10":{"position":[[77,6]]},"16":{"position":[[233,6],[783,6]]},"30":{"position":[[276,6]]},"36":{"position":[[32,6],[165,6],[242,6]]}}}],["dp",{"_index":572,"t":{"55":{"position":[[461,2]]}}}],["du",{"_index":523,"t":{"51":{"position":[[256,2]]}}}],["dummi",{"_index":687,"t":{"63":{"position":[[288,5]]}}}],["dynam",{"_index":63,"t":{"4":{"position":[[543,7],[675,7]]},"57":{"position":[[11,7]]},"114":{"position":[[529,8]]}}}],["e",{"_index":798,"t":{"72":{"position":[[313,1]]},"74":{"position":[[136,1],[216,1],[236,2],[280,1]]}}}],["e12.4",{"_index":182,"t":{"6":{"position":[[2079,10]]}}}],["e8.2",{"_index":174,"t":{"6":{"position":[[1855,9]]}}}],["each",{"_index":1088,"t":{"114":{"position":[[279,4]]}}}],["earch/spher",{"_index":559,"t":{"55":{"position":[[210,12]]}}}],["earth",{"_index":549,"t":{"55":{"position":[[45,5]]}}}],["editor",{"_index":351,"t":{"26":{"position":[[198,7]]},"109":{"position":[[390,6]]}}}],["effect",{"_index":968,"t":{"99":{"position":[[5,7],[282,7]]}}}],["einstein",{"_index":1067,"t":{"112":{"position":[[455,9],[529,10],[741,10]]}}}],["element",{"_index":92,"t":{"4":{"position":[[1380,7]]},"114":{"position":[[958,8]]}}}],["end",{"_index":23,"t":{"2":{"position":[[319,3],[809,3]]},"4":{"position":[[195,3],[524,3],[1320,3],[1327,3]]},"6":{"position":[[376,3],[1087,3],[1471,3],[1920,3],[2210,3]]},"28":{"position":[[427,3],[670,3],[702,3]]},"30":{"position":[[630,3]]},"34":{"position":[[975,3]]},"36":{"position":[[564,3],[571,3],[719,3],[726,3],[733,3]]},"42":{"position":[[327,3]]},"44":{"position":[[348,3],[355,3]]},"46":{"position":[[253,3],[264,3]]},"51":{"position":[[358,3]]},"53":{"position":[[263,3],[669,3],[727,3],[734,3]]},"55":{"position":[[1363,3],[1384,3]]},"57":{"position":[[356,3],[509,3],[623,3],[671,3],[866,3]]},"59":{"position":[[636,3],[684,3]]},"61":{"position":[[502,3],[517,3],[716,3],[750,3],[772,3],[948,3]]},"63":{"position":[[468,3],[1132,3]]},"66":{"position":[[243,3],[359,3],[451,3],[571,3],[935,3]]},"68":{"position":[[152,3],[173,3],[180,3]]},"72":{"position":[[328,3],[539,3]]},"77":{"position":[[510,3]]},"81":{"position":[[548,3],[555,3],[677,3]]},"83":{"position":[[753,3],[760,3],[908,3]]},"85":{"position":[[844,3]]},"89":{"position":[[554,3],[561,3],[586,3]]},"91":{"position":[[364,3],[580,3],[587,3],[610,3]]},"95":{"position":[[303,3],[379,3],[475,3],[503,3],[662,3]]},"97":{"position":[[476,3],[491,3],[680,3],[687,3]]},"105":{"position":[[313,3],[333,3]]},"107":{"position":[[515,3],[687,3]]},"112":{"position":[[201,3],[279,3],[812,3]]},"114":{"position":[[165,3],[297,3],[427,4],[445,3],[1304,3],[1463,3]]}}}],["end_tim",{"_index":1004,"t":{"107":{"position":[[239,8],[572,8]]}}}],["enddo",{"_index":45,"t":{"4":{"position":[[136,5],[189,5],[518,5]]},"53":{"position":[[243,5]]},"66":{"position":[[206,5]]}}}],["endif",{"_index":34,"t":{"2":{"position":[[796,5]]},"42":{"position":[[321,5]]}}}],["endors",{"_index":776,"t":{"70":{"position":[[692,8]]}}}],["enter",{"_index":17,"t":{"2":{"position":[[197,6]]},"6":{"position":[[990,6],[1360,6]]},"24":{"position":[[31,6]]},"44":{"position":[[86,6],[160,5]]},"46":{"position":[[86,6]]},"57":{"position":[[230,6],[412,6],[525,6]]},"63":{"position":[[870,6],[924,6]]},"105":{"position":[[104,6]]}}}],["environ",{"_index":703,"t":{"63":{"position":[[1023,11]]}}}],["eq",{"_index":488,"t":{"40":{"position":[[108,4]]}}}],["equal",{"_index":486,"t":{"40":{"position":[[69,5],[99,5],[113,6],[129,5],[362,5],[390,5],[402,5],[418,5]]}}}],["equival",{"_index":493,"t":{"40":{"position":[[193,10],[215,10]]}}}],["eqv",{"_index":492,"t":{"40":{"position":[[187,5]]}}}],["error",{"_index":505,"t":{"44":{"position":[[145,7]]},"83":{"position":[[833,5]]},"114":{"position":[[1269,7]]}}}],["es9.1",{"_index":343,"t":{"26":{"position":[[14,6]]}}}],["even",{"_index":761,"t":{"70":{"position":[[446,4]]}}}],["even_numb",{"_index":732,"t":{"68":{"position":[[38,12],[192,12]]}}}],["everyth",{"_index":805,"t":{"72":{"position":[[592,10]]}}}],["exampl",{"_index":54,"t":{"4":{"position":[[302,7],[708,8]]},"6":{"position":[[519,8],[1939,7]]},"10":{"position":[[8,9],[34,9],[104,9]]},"16":{"position":[[763,8]]},"38":{"position":[[32,7]]},"44":{"position":[[415,8]]},"53":{"position":[[466,8]]},"57":{"position":[[0,7]]},"70":{"position":[[841,8]]},"72":{"position":[[79,8]]},"107":{"position":[[10,7]]},"114":{"position":[[0,7]]}}}],["except",{"_index":246,"t":{"16":{"position":[[459,6]]}}}],["exclus",{"_index":491,"t":{"40":{"position":[[172,11]]}}}],["execut",{"_index":132,"t":{"6":{"position":[[733,7]]},"51":{"position":[[36,7],[155,7],[187,11],[244,11]]},"61":{"position":[[233,10]]},"95":{"position":[[690,8]]},"99":{"position":[[71,8]]},"101":{"position":[[160,10]]},"107":{"position":[[103,9]]},"109":{"position":[[650,8],[715,10]]}}}],["execute_command_lin",{"_index":518,"t":{"51":{"position":[[12,20]]}}}],["execute_command_line(\"du",{"_index":525,"t":{"51":{"position":[[271,24]]}}}],["execute_command_line(\"l",{"_index":522,"t":{"51":{"position":[[208,26]]}}}],["exit",{"_index":374,"t":{"28":{"position":[[574,4]]},"51":{"position":[[333,5]]},"66":{"position":[[366,4],[446,4]]}}}],["exit_cod",{"_index":520,"t":{"51":{"position":[[143,9],[348,9]]}}}],["exitstat=exit_cod",{"_index":526,"t":{"51":{"position":[[304,19]]}}}],["exp",{"_index":333,"t":{"22":{"position":[[256,3]]}}}],["exp(12.0",{"_index":167,"t":{"6":{"position":[[1692,9]]}}}],["expect",{"_index":371,"t":{"28":{"position":[[517,9]]}}}],["expon",{"_index":264,"t":{"16":{"position":[[894,8]]}}}],["exponenti",{"_index":175,"t":{"6":{"position":[[1875,11]]},"22":{"position":[[260,11]]}}}],["express",{"_index":724,"t":{"66":{"position":[[645,12]]}}}],["extend",{"_index":1055,"t":{"112":{"position":[[212,9]]},"114":{"position":[[186,6]]}}}],["extends(colored_line_typ",{"_index":1090,"t":{"114":{"position":[[330,26]]}}}],["extends(line_typ",{"_index":1085,"t":{"114":{"position":[[218,18]]}}}],["extends(us",{"_index":1056,"t":{"112":{"position":[[233,13]]}}}],["extens",{"_index":1043,"t":{"109":{"position":[[462,9]]}}}],["extern",{"_index":424,"t":{"34":{"position":[[652,8]]},"51":{"position":[[44,8]]},"112":{"position":[[76,8]]}}}],["f",{"_index":668,"t":{"61":{"position":[[515,1]]},"97":{"position":[[240,1],[489,1]]},"114":{"position":[[432,1]]}}}],["f(0",{"_index":918,"t":{"91":{"position":[[104,4]]}}}],["f(1",{"_index":919,"t":{"91":{"position":[[115,4]]}}}],["f(a",{"_index":670,"t":{"61":{"position":[[663,5],[705,3]]}}}],["f(a+2h",{"_index":640,"t":{"59":{"position":[[280,7]]}}}],["f(a+h",{"_index":639,"t":{"59":{"position":[[271,6]]}}}],["f(b",{"_index":671,"t":{"61":{"position":[[671,5]]}}}],["f(n",{"_index":920,"t":{"91":{"position":[[126,4],[133,3],[142,3]]}}}],["f(x",{"_index":665,"t":{"61":{"position":[[441,4]]},"97":{"position":[[260,4],[675,4]]}}}],["f(x)=(1+1x)xf(x",{"_index":942,"t":{"97":{"position":[[55,16]]}}}],["f(x)f(x)f(x",{"_index":625,"t":{"59":{"position":[[43,12]]},"97":{"position":[[35,12]]}}}],["f10.4",{"_index":707,"t":{"63":{"position":[[1125,6]]}}}],["f5.1",{"_index":342,"t":{"26":{"position":[[6,7]]}}}],["f6.4",{"_index":171,"t":{"6":{"position":[[1769,9]]}}}],["f77",{"_index":122,"t":{"6":{"position":[[571,3]]}}}],["f8.1",{"_index":954,"t":{"97":{"position":[[656,7]]}}}],["f8.4",{"_index":180,"t":{"6":{"position":[[2050,9]]},"97":{"position":[[664,7]]}}}],["f90",{"_index":495,"t":{"40":{"position":[[226,3]]},"109":{"position":[[452,4]]}}}],["f_result",{"_index":667,"t":{"61":{"position":[[493,8]]},"97":{"position":[[312,8],[429,8]]}}}],["factori",{"_index":708,"t":{"66":{"position":[[10,10],[59,9],[77,9],[255,9]]},"89":{"position":[[10,9],[92,9],[244,11],[576,9]]}}}],["factorial(input",{"_index":913,"t":{"89":{"position":[[301,16]]}}}],["factorial(n",{"_index":914,"t":{"89":{"position":[[387,12],[501,11]]}}}],["fals",{"_index":225,"t":{"10":{"position":[[143,8]]},"85":{"position":[[696,5]]}}}],["fdefault",{"_index":242,"t":{"16":{"position":[[348,8],[385,8]]}}}],["fib",{"_index":923,"t":{"91":{"position":[[332,7]]}}}],["fibonacci",{"_index":915,"t":{"91":{"position":[[10,9],[85,9],[252,9],[600,9]]}}}],["fibonacci(i",{"_index":924,"t":{"91":{"position":[[351,12]]}}}],["fibonacci(n",{"_index":925,"t":{"91":{"position":[[399,12],[495,11],[514,11]]}}}],["file",{"_index":18,"t":{"2":{"position":[[204,4]]},"6":{"position":[[638,4],[694,4]]},"53":{"position":[[50,5],[108,4],[360,5],[397,5],[430,4],[523,4]]},"72":{"position":[[1103,5],[1208,6],[1275,4],[1325,6],[1339,5]]},"109":{"position":[[457,4],[492,6],[578,4],[830,6],[923,5]]}}}],["file='output.dat",{"_index":531,"t":{"53":{"position":[[173,18],[597,18]]}}}],["file_read",{"_index":540,"t":{"53":{"position":[[536,9],[746,9]]}}}],["file_writ",{"_index":529,"t":{"53":{"position":[[121,10],[275,10]]}}}],["filenam",{"_index":3,"t":{"2":{"position":[[30,9]]}}}],["filename.f90",{"_index":406,"t":{"32":{"position":[[100,12],[167,12]]},"34":{"position":[[212,12],[274,12]]}}}],["find",{"_index":710,"t":{"66":{"position":[[54,4]]},"72":{"position":[[1311,4]]},"107":{"position":[[53,4]]}}}],["first",{"_index":210,"t":{"8":{"position":[[110,5]]},"18":{"position":[[168,5]]},"26":{"position":[[142,6]]},"57":{"position":[[419,5]]},"61":{"position":[[214,5]]},"95":{"position":[[0,5]]},"109":{"position":[[869,5]]}}}],["floor",{"_index":298,"t":{"20":{"position":[[145,6]]}}}],["floor(3.2)=3",{"_index":297,"t":{"20":{"position":[[131,13]]}}}],["floor(a/p)*p",{"_index":314,"t":{"20":{"position":[[375,12]]}}}],["floor(x",{"_index":295,"t":{"20":{"position":[[101,8]]}}}],["follow",{"_index":133,"t":{"6":{"position":[[753,8]]},"40":{"position":[[241,9]]},"63":{"position":[[35,9]]},"70":{"position":[[475,9]]},"107":{"position":[[0,9]]},"109":{"position":[[875,8]]}}}],["format",{"_index":159,"t":{"6":{"position":[[1488,10],[1537,10],[1574,6],[1932,6]]},"70":{"position":[[367,7]]}}}],["format('hello",{"_index":843,"t":{"77":{"position":[[425,13]]}}}],["format('hypotenus",{"_index":706,"t":{"63":{"position":[[1101,18]]}}}],["formula",{"_index":554,"t":{"55":{"position":[[107,7]]},"63":{"position":[[45,8]]}}}],["fortran",{"_index":115,"t":{"6":{"position":[[428,7],[1558,7]]},"16":{"position":[[42,7]]},"18":{"position":[[3,7]]},"30":{"position":[[33,7]]},"51":{"position":[[67,7]]},"85":{"position":[[11,7]]},"87":{"position":[[9,7]]},"93":{"position":[[37,8]]},"103":{"position":[[0,7],[56,7],[125,7],[133,7]]},"109":{"position":[[0,7]]}}}],["fortran.html",{"_index":855,"t":{"79":{"position":[[54,12]]}}}],["forward",{"_index":1115,"t":{"114":{"position":[[1202,7]]}}}],["frac{1}{x}\\right)^xf(x)=(1+x1​)x",{"_index":944,"t":{"97":{"position":[[84,33]]}}}],["frac{f(b)}{2}\\right]an​=h[2f(a)​+f(a+h)+f(a+2h)+⋯+2f(b",{"_index":642,"t":{"59":{"position":[[299,58]]}}}],["free",{"_index":750,"t":{"70":{"position":[[298,4]]}}}],["full",{"_index":784,"t":{"70":{"position":[[951,4]]}}}],["function",{"_index":1,"t":{"2":{"position":[[10,8],[365,8],[813,8]]},"4":{"position":[[237,8]]},"20":{"position":[[0,9]]},"22":{"position":[[0,9],[31,8],[90,8],[151,8]]},"34":{"position":[[34,8]]},"55":{"position":[[1139,8],[1367,8]]},"61":{"position":[[91,8],[368,8],[432,8],[506,8],[754,8]]},"87":{"position":[[44,9]]},"91":{"position":[[43,9],[390,8],[591,8]]},"93":{"position":[[62,10]]},"97":{"position":[[251,8],[480,8],[838,9]]},"99":{"position":[[239,8]]}}}],["function_modul",{"_index":946,"t":{"97":{"position":[[152,15],[502,15],[571,15]]}}}],["function_t",{"_index":952,"t":{"97":{"position":[[552,14],[699,14]]}}}],["g",{"_index":1087,"t":{"114":{"position":[[272,2]]}}}],["gcc",{"_index":1034,"t":{"109":{"position":[[222,3],[275,3],[340,3],[364,4]]}}}],["ge",{"_index":487,"t":{"40":{"position":[[78,4]]}}}],["gener",{"_index":527,"t":{"53":{"position":[[13,8],[443,9]]},"83":{"position":[[66,8]]}}}],["get_abs_path",{"_index":15,"t":{"2":{"position":[[169,12],[521,12],[615,12],[715,12],[822,12]]}}}],["get_abs_path(input_path",{"_index":22,"t":{"2":{"position":[[257,24],[374,24]]}}}],["get_command(arg",{"_index":372,"t":{"28":{"position":[[531,16]]}}}],["get_command_argu",{"_index":356,"t":{"28":{"position":[[39,20]]}}}],["get_command_argument(i",{"_index":370,"t":{"28":{"position":[[464,23]]}}}],["getcwd(prefix",{"_index":32,"t":{"2":{"position":[[700,14]]}}}],["getenv('hom",{"_index":29,"t":{"2":{"position":[[592,14]]}}}],["gfortran",{"_index":134,"t":{"6":{"position":[[762,8]]},"32":{"position":[[91,8],[158,8]]},"34":{"position":[[203,8],[265,8]]},"63":{"position":[[149,8],[528,8],[629,8],[672,8],[1177,8]]},"72":{"position":[[915,8],[947,8],[1403,8]]},"95":{"position":[[699,8],[729,8]]},"109":{"position":[[192,8],[230,8],[279,8],[344,8],[534,8],[752,8],[966,8],[989,8]]}}}],["give",{"_index":764,"t":{"70":{"position":[[515,4],[772,4]]}}}],["given",{"_index":148,"t":{"6":{"position":[[1147,5],[1235,5]]},"16":{"position":[[575,5]]},"55":{"position":[[51,5],[223,5]]},"70":{"position":[[745,6]]}}}],["gnu",{"_index":233,"t":{"16":{"position":[[38,3]]}}}],["greater",{"_index":484,"t":{"40":{"position":[[38,7],[83,7],[333,7],[374,7]]}}}],["greatest",{"_index":296,"t":{"20":{"position":[[110,8]]}}}],["gt",{"_index":483,"t":{"40":{"position":[[33,4]]}}}],["guid",{"_index":982,"t":{"103":{"position":[[47,5],[153,5]]}}}],["h",{"_index":637,"t":{"59":{"position":[[246,1],[501,2],[548,1],[650,1]]},"61":{"position":[[613,2],[634,1],[741,1]]}}}],["h=(b−a)/nh=(b",{"_index":634,"t":{"59":{"position":[[155,13]]}}}],["hard",{"_index":655,"t":{"61":{"position":[[100,4]]}}}],["hav(theta",{"_index":561,"t":{"55":{"position":[[281,10]]}}}],["haversin",{"_index":553,"t":{"55":{"position":[[97,9],[256,9]]}}}],["haversine_formula",{"_index":571,"t":{"55":{"position":[[407,17],[1396,17]]}}}],["hello_world_mpi",{"_index":830,"t":{"77":{"position":[[35,15]]}}}],["here",{"_index":0,"t":{"2":{"position":[[0,4]]},"28":{"position":[[594,4]]},"53":{"position":[[0,4]]},"72":{"position":[[68,4]]}}}],["high",{"_index":69,"t":{"4":{"position":[[724,4]]},"109":{"position":[[25,4]]}}}],["holder",{"_index":747,"t":{"70":{"position":[[254,6]]}}}],["homebrew",{"_index":1039,"t":{"109":{"position":[[317,9]]}}}],["hs",{"_index":524,"t":{"51":{"position":[[260,2],[297,2]]}}}],["http://creativecommons.org/licenses/by/4.0",{"_index":786,"t":{"70":{"position":[[984,43]]}}}],["https://annefou.github.io/fortran/coarrays/coarrays.html",{"_index":517,"t":{"49":{"position":[[0,56]]}}}],["https://curc.readthedocs.io/en/latest/programming/mpi",{"_index":854,"t":{"79":{"position":[[0,53]]}}}],["https://github.com/sourangshughosh/awesomefortranlibrari",{"_index":991,"t":{"103":{"position":[[224,58]]}}}],["https://netlib.org/blas/#_level_1",{"_index":415,"t":{"34":{"position":[[158,33]]}}}],["https://people.math.sc.edu/burkardt/f_src/f_src.html",{"_index":990,"t":{"103":{"position":[[171,52]]}}}],["hyperbol",{"_index":320,"t":{"22":{"position":[[68,10],[128,10],[228,10]]}}}],["hypotenus",{"_index":677,"t":{"63":{"position":[[0,10],[238,11],[379,10],[444,10],[742,10],[825,10],[1144,10]]}}}],["i**2",{"_index":725,"t":{"66":{"position":[[671,5]]}}}],["i*h",{"_index":650,"t":{"59":{"position":[[631,4]]},"61":{"position":[[711,4]]}}}],["i*j",{"_index":727,"t":{"66":{"position":[[716,6]]}}}],["i.",{"_index":905,"t":{"87":{"position":[[73,5]]}}}],["i2",{"_index":46,"t":{"4":{"position":[[173,7],[502,7]]},"77":{"position":[[456,3],[467,3]]}}}],["i3",{"_index":545,"t":{"53":{"position":[[710,7]]}}}],["i4",{"_index":168,"t":{"6":{"position":[[1708,7],[1965,7]]},"26":{"position":[[24,5],[87,5],[93,4],[264,5],[275,5]]},"53":{"position":[[229,7],[652,7]]}}}],["i8",{"_index":177,"t":{"6":{"position":[[1992,7]]}}}],["i8.6",{"_index":178,"t":{"6":{"position":[[2019,9]]}}}],["i