Model SLOC Page
From CSDMS
Source Lines of Code
"Measuring programming progress by lines of code is like measuring aircraft building progress by weight"
Below is a rough count of the number of source lines of code contained within
the CSDMS model repository. Only models listed in the CSDMS model library
are included. In this estimate, a source line is considered as any line
that is not part of a comment, and is not blank. I have included SLOC
summaries by application, and by language.
Updated: 2015-11-23
By Application
Project | Language | Blank | Comment | Source | Total |
---|---|---|---|---|---|
MITgcm | Fortran 77/90 | 95446 | 95398 | 351858 | 542702 |
Regional Ocean Modeling System (ROMS) | Fortran 77/90 | 34763 | 90660 | 380656 | 506079 |
The Weather Research & Forecasting Model (WRF) | Fortran 77/90 | 79107 | 95442 | 309177 | 483726 |
HSPF | Fortran 77/90 | 57349 | 131134 | 182618 | 371101 |
Telemac | Fortran 77/90 | 37961 | 146882 | 153053 | 337896 |
CAM-CARMA | Fortran 77/90 | 53255 | 75157 | 172889 | 301301 |
SNAC | c/c++ | 50596 | 60936 | 141755 | 253287 |
Caesar | C# | 41927 | 29344 | 160373 | 231644 |
ADCIRC | Fortran 77/90 | 26835 | 72520 | 118517 | 217872 |
PSTSWM | Fortran 77/90 | 2473 | 2248 | 193163 | 197884 |
Anuga | Python | 42560 | 24522 | 102165 | 169247 |
ParFlow | c/c++ | 36554 | 34160 | 98220 | 168934 |
SELFE | c/c++ | 30290 | 19992 | 109343 | 159625 |
CHILD | c/c++ | 23139 | 43412 | 85615 | 152166 |
Finite-Volume, primitive equation Coastal Ocean Model (FVCOM) | Fortran 77/90 | 28641 | 27692 | 92876 | 149209 |
GISS GCM ModelE | Fortran 77/90 | 19727 | 27743 | 93620 | 141090 |
sedflux | c/c++ | 23568 | 22105 | 81912 | 127585 |
MODFLOW | Fortran 77/90 | 11178 | 24409 | 71703 | 107290 |
SWAN | Fortran 77/90 | 8675 | 51592 | 40899 | 101166 |
GSFLOW | Fortran 77/90 | 13841 | 22831 | 63744 | 100416 |
WAVEWATCH III (tm) | Fortran 77/90 | 7245 | 50209 | 28424 | 85878 |
Glimmer-CISM | Fortran 77/90 | 16524 | 22515 | 44951 | 83990 |
CICE | Fortran 77/90 | 17364 | 23051 | 40567 | 80982 |
ECBLIT/CLIO | Fortran 77/90 | 14427 | 14035 | 47884 | 76346 |
Erode (Python) | Python | 14520 | 33664 | 21883 | 70067 |
GEOtop | c/c++ | 22048 | 12162 | 29956 | 64166 |
MARSSIM | Fortran 77/90 | 2024 | 8857 | 41813 | 52694 |
BOM | Fortran 77/90 | 9008 | 8577 | 32218 | 49803 |
LOAM | Fortran 77/90 | 9450 | 7570 | 32693 | 49713 |
Regional Hydro-Ecologic Simulation System (RHESSys) | c/c++ | 4864 | 18745 | 26088 | 49697 |
TopoFlow (IDL) | IDL | 9967 | 17085 | 18003 | 45055 |
SWMM | c/c++ | 9421 | 10806 | 24273 | 44500 |
Precipitation-Runoff Modeling System | c/c++ | 7531 | 9502 | 27064 | 44097 |
XBeach | MATLAB | 9727 | 18226 | 16079 | 44032 |
Variable Infiltration Capacity (VIC) | c/c++ | 6820 | 9992 | 24648 | 41460 |
CMFT | Fortran 77/90 | 4679 | 15749 | 19968 | 40396 |
TopoFlow (Python) | Python | 8916 | 18546 | 12393 | 39855 |
One-Dimensional Transport with Equilibrium Chemistry (OTEQ) | Fortran 77/90 | 2220 | 4702 | 27868 | 34790 |
Chi analysis tools | c/c++ | 7280 | 9461 | 17409 | 34150 |
Distributed Hydrology Soil Vegetation Model (DHSVM) | c/c++ | 5627 | 7533 | 20477 | 33637 |
SIBERIA | Fortran 77/90 | 2997 | 8029 | 21453 | 32479 |
FVshock | Fortran 77/90 | 1824 | 3562 | 26164 | 31550 |
SLEPIAN Alpha | MATLAB | 5858 | 10880 | 14398 | 31136 |
TURBINS | c/c++ | 8619 | 4528 | 14669 | 27816 |
TauDEM | c/c++ | 4584 | 5848 | 17037 | 27469 |
Parker Models | c/c++ | 4940 | 7255 | 15002 | 27197 |
Distributed Routing Rainfall-Runoff Model (DR3M) | Fortran 77/90 | 3672 | 9500 | 13805 | 26977 |
One-Dimensional Transport with Inflow and Storage (OTIS) | Fortran 77/90 | 2148 | 10527 | 13197 | 25872 |
HIM | c/c++ | 3528 | 7662 | 13591 | 24781 |
SPHYSICS | Fortran 77/90 | 4206 | 3185 | 16838 | 24229 |
TopoToolbox | MATLAB | 4768 | 7726 | 10694 | 23188 |
Shoreline (IDL) | IDL | 4731 | 9700 | 8002 | 22433 |
ELCIRC | Fortran 77/90 | 2962 | 6303 | 12696 | 21961 |
Gvg3Dp | c/c++ | 7082 | 3848 | 10553 | 21483 |
SPHYSICS | Fortran 77/90 | 4296 | 3497 | 12325 | 20118 |
QUODDY | Fortran 77/90 | 1536 | 9049 | 8631 | 19216 |
FUNDY | Fortran 77/90 | 1583 | 8271 | 9056 | 18910 |
Longshore (IDL) | IDL | 3963 | 7497 | 6080 | 17540 |
WILSIM | c/c++ | 2940 | 2512 | 10790 | 16242 |
SEA | Fortran 77/90 | 3451 | 3910 | 8680 | 16041 |
HydroTrend | c/c++ | 2578 | 3674 | 8259 | 14511 |
STSWM | Fortran 77/90 | 1596 | 5854 | 5723 | 13173 |
Tectonics, Isostasy, Surface Transport, and Climate | c/c++ | 2384 | 1959 | 8726 | 13069 |
Larval TRANSport Lagrangian model | Fortran 77/90 | 2735 | 2549 | 7711 | 12995 |
LOAD ESTimator (LOADEST) | Fortran 77/90 | 551 | 563 | 11087 | 12201 |
SPAtially Referenced Regressions On Watershed attributes (SPARROW) | Statistical Analysis Software | 2629 | 2602 | 6284 | 11515 |
1D_Hillslope_MCMC | c/c++ | 2471 | 2584 | 6160 | 11215 |
Plumes (IDL) | IDL | 2309 | 4265 | 4511 | 11085 |
Nearshore POM | c/c++ | 881 | 2331 | 7524 | 10736 |
Marsh column model | c/c++ | 2581 | 1777 | 6225 | 10583 |
QTCM | Fortran 77/90 | 1373 | 3053 | 5922 | 10348 |
FineSed3D | Fortran 77/90 | 1423 | 2480 | 6397 | 10300 |
TAo | c/c++ | 1769 | 1234 | 6357 | 9360 |
Coastal Evolution Model | c/c++ | 2038 | 1146 | 5986 | 9170 |
SLEPIAN Bravo | MATLAB | 2056 | 2327 | 4317 | 8700 |
Web-based Interactive Landform Simulation Model | Java | 1080 | 1107 | 6429 | 8616 |
WBMsed | Java | 1080 | 1107 | 6422 | 8609 |
Non Local Means Filtering | c/c++ | 2000 | 1439 | 4910 | 8349 |
Sedtrans05 | Fortran 77/90 | 1331 | 1932 | 5030 | 8293 |
Plume | c/c++ | 1331 | 1740 | 4398 | 7469 |
Water Balance/Transport Model (WBM-WTM) | c/c++ | 1301 | 1221 | 4849 | 7371 |
Water Balance/Transport Model (WBM/WTM) | c/c++ | 1301 | 1221 | 4849 | 7371 |
SLEPIAN Charlie | MATLAB | 1652 | 2035 | 3654 | 7341 |
DeltaSIM | Visual Basic | 1314 | 537 | 5374 | 7225 |
Stoney Brook Parallel Ocean Model (sbPOM) | MATLAB | 1115 | 600 | 5098 | 6813 |
BatTri | MATLAB | 857 | 1792 | 3914 | 6563 |
MICOM | Fortran 77/90 | 844 | 2103 | 3394 | 6341 |
CURVCIRC | Fortran 77/90 | 1428 | 333 | 4478 | 6239 |
SHORECIRC | Fortran 77/90 | 1206 | 952 | 3798 | 5956 |
NUBBLE | Fortran 77/90 | 554 | 3172 | 2076 | 5802 |
Sakura | c/c++ | 1105 | 791 | 3467 | 5363 |
Erode-D8-Local | Python | 862 | 3446 | 985 | 5293 |
GOLEM | c/c++ | 910 | 1260 | 2950 | 5120 |
Golem | c/c++ | 910 | 1255 | 2952 | 5117 |
FUNWAVE | Fortran 77/90 | 558 | 257 | 4284 | 5099 |
Aquatellus | c/c++ | 974 | 998 | 3066 | 5038 |
SLEPIAN Delta | MATLAB | 1079 | 1861 | 1889 | 4829 |
Gc2d | Python | 1526 | 950 | 2297 | 4773 |
SedBerg | c/c++ | 948 | 594 | 3097 | 4639 |
Sorted Bedform Model | c/c++ | 750 | 688 | 3156 | 4594 |
pllcart3d | c/c++ | 958 | 274 | 3286 | 4518 |
REF-DIF | Fortran 77/90 | 1177 | 408 | 2629 | 4214 |
Geomorphic Model of Barrier, Estuarine, and Shoreface Translations (GEOMBEST) | MATLAB | 1201 | 846 | 2136 | 4183 |
LEMming | MATLAB | 1182 | 1343 | 1548 | 4073 |
MIDAS | Fortran 77/90 | 252 | 931 | 2580 | 3763 |
ACADIA | Fortran 77/90 | 589 | 1407 | 1584 | 3580 |
Physprop | MATLAB | 1026 | 920 | 1515 | 3461 |
Penn State Integrated Hydrologic Model (PIHM) | c/c++ | 427 | 564 | 2243 | 3234 |
Avulsion | c/c++ | 602 | 321 | 2307 | 3230 |
GMODEL | Fortran 77/90 | 67 | 0 | 2977 | 3044 |
Hilltop and hillslope morphology extraction | Python | 645 | 580 | 1792 | 3017 |
Sediment Transport Morphodynamics-AgDegNormalGravMixHyd | c/c++ | 493 | 675 | 1545 | 2713 |
Wave Module (Energy) | Fortran 77/90 | 706 | 474 | 1359 | 2539 |
Cyclopath | c/c++ | 528 | 339 | 1566 | 2433 |
GNE | Python | 636 | 426 | 1365 | 2427 |
Sediment Transport Morphodynamics-AgDegNormGravMixSubPW | c/c++ | 434 | 599 | 1375 | 2408 |
SIGNUM | MATLAB | 388 | 963 | 1025 | 2376 |
Sediment Transport Morphodynamics-AgDegNormGravMixPW | c/c++ | 426 | 595 | 1347 | 2368 |
Inflow | c/c++ | 432 | 366 | 1507 | 2305 |
TopoFlow-Infiltration-Richards 1D | Python | 490 | 996 | 774 | 2260 |
carboCAT | MATLAB | 608 | 411 | 1182 | 2201 |
CREST | Fortran 77/90 | 296 | 56 | 1813 | 2165 |
GIPL (Geophysical Institute Permafrost Laboratory) | Fortran 77/90 | 298 | 164 | 1701 | 2163 |
Hyper | Fortran 77/90 | 301 | 183 | 1637 | 2121 |
Implicit Drainage Area | c/c++ | 430 | 271 | 1418 | 2119 |
Xshore | c/c++ | 341 | 464 | 1280 | 2085 |
TopoFlow-Meteorology | Python | 440 | 907 | 638 | 1985 |
Erode-DEM-Smoother | Python | 365 | 1059 | 467 | 1891 |
Flow | c/c++ | 362 | 376 | 1143 | 1881 |
Wave Module (Kennedy) | c/c++ | 529 | 146 | 1150 | 1825 |
Failure | c/c++ | 372 | 229 | 1155 | 1756 |
mARM5D | Fortran 77/90 | 184 | 216 | 1349 | 1749 |
GISS ATOM | Fortran 77/90 | 121 | 287 | 1269 | 1677 |
NearCoM | c/c++ | 395 | 110 | 1092 | 1597 |
Sediment Transport Morphodynamics-Acronym1D | c/c++ | 349 | 377 | 869 | 1595 |
Mrip | MATLAB | 360 | 679 | 521 | 1560 |
Erode-D8-Global-Utils | Python | 309 | 663 | 551 | 1523 |
Diffusion | c/c++ | 204 | 481 | 818 | 1503 |
Erode-D8-Global | Python | 282 | 767 | 333 | 1382 |
Sediment Transport Morphodynamics-Acronym1R | c/c++ | 295 | 339 | 745 | 1379 |
Squall | c/c++ | 220 | 363 | 717 | 1300 |
Sediment Transport Morphodynamics-Acronym1 | c/c++ | 277 | 317 | 676 | 1270 |
Sediment Transport Morphodynamics-DredgeSlotBW | c/c++ | 182 | 332 | 745 | 1259 |
B2DWAVE | Fortran 77/90 | 265 | 394 | 486 | 1145 |
Sediment Transport Morphodynamics-AgDegBW | c/c++ | 211 | 322 | 584 | 1117 |
Sediment Transport Morphodynamics-AgDegNormalFault | c/c++ | 212 | 322 | 551 | 1085 |
Sediment Transport Morphodynamics-GravelSandTransition | c/c++ | 140 | 224 | 721 | 1085 |
Sediment Transport Morphodynamics-RecircFeed | c/c++ | 176 | 324 | 521 | 1021 |
Subside | c/c++ | 181 | 200 | 632 | 1013 |
Sediment Transport Morphodynamics-1D DeltaBW | c/c++ | 141 | 239 | 629 | 1009 |
TopoFlow-Data-HIS | Python | 204 | 561 | 240 | 1005 |
Sediment Transport Morphodynamics-AgDegNormal | c/c++ | 195 | 301 | 498 | 994 |
Bing | c/c++ | 155 | 258 | 571 | 984 |
Detrital Thermochron | Python | 247 | 134 | 580 | 961 |
TopoFlow-Ice-GC2D | Python | 223 | 392 | 320 | 935 |
Bioturbation | c/c++ | 178 | 178 | 569 | 925 |
TopoFlow-Infiltration-Smith-Parlange | Python | 187 | 423 | 289 | 899 |
TopoFlow-Infiltration-Green-Ampt | Python | 188 | 428 | 262 | 878 |
Sediment Transport Morphodynamics-1D DeltaNorm | c/c++ | 128 | 197 | 507 | 832 |
Compact | c/c++ | 191 | 98 | 541 | 830 |
Sediment Transport Morphodynamics-AgDegNormalSub | c/c++ | 159 | 238 | 427 | 824 |
ThawLake1D | MATLAB | 146 | 173 | 456 | 775 |
Bedrock Fault Scarp | Python | 177 | 209 | 366 | 752 |
Muds | c/c++ | 119 | 180 | 432 | 731 |
Sediment Transport Morphodynamics-1D RiverWFRisingBaseLevelNormal | c/c++ | 105 | 179 | 445 | 729 |
Bedrock Erosion Model | c/c++ | 60 | 18 | 627 | 705 |
Sediment Transport Morphodynamics-GSD Calculator | c/c++ | 137 | 218 | 336 | 691 |
Strata (IDL) | IDL | 137 | 227 | 322 | 686 |
TopoFlow-Diversions | Python | 141 | 359 | 179 | 679 |
Sediment Transport Morphodynamics-BackwaterWrightParker | c/c++ | 118 | 203 | 341 | 662 |
Sediment Transport Morphodynamics-Backwater Calculator | c/c++ | 131 | 188 | 317 | 636 |
DELTA | Fortran 77/90 | 34 | 122 | 474 | 630 |
Sediment Transport Morphodynamics-BedrockAlluvialTransition | c/c++ | 102 | 176 | 344 | 622 |
Sediment Transport Morphodynamics-SubsidingFan | c/c++ | 102 | 172 | 342 | 616 |
Sediment Transport Morphodynamics-SuspSedDensityStrat | c/c++ | 122 | 197 | 293 | 612 |
Stream Power | c/c++ | 52 | 9 | 515 | 576 |
CosmoLand | MATLAB | 160 | 141 | 271 | 572 |
Sediment Transport Morphodynamics-DepDistTotLoadCalc | c/c++ | 101 | 167 | 288 | 556 |
LONGPRO | Fortran 77/90 | 54 | 153 | 343 | 550 |
LITHFLEX2 | Fortran 77/90 | 19 | 65 | 438 | 522 |
Quake | c/c++ | 50 | 50 | 362 | 462 |
Sediment Transport Morphodynamics-SteadyStateAg | c/c++ | 78 | 136 | 244 | 458 |
Area-Slope Equation Calculator | MATLAB | 143 | 158 | 142 | 443 |
TopoFlow-Snowmelt-Energy Balance | Python | 57 | 302 | 62 | 421 |
ADI-2D | c/c++ | 42 | 9 | 364 | 415 |
Point Tidal Flat | MATLAB | 150 | 88 | 161 | 399 |
GISKnickFinder | Python | 68 | 81 | 222 | 371 |
Multiple Flow Direction (MFD) Routing (Successive) | c/c++ | 41 | 13 | 308 | 362 |
Sediment Transport Morphodynamics-RouseVanoniEquilibrium | c/c++ | 69 | 125 | 164 | 358 |
TopoFlow-Evaporation-Read File | Python | 84 | 158 | 109 | 351 |
Sediment Transport Morphodynamics-WPHydResAMBL | c/c++ | 68 | 110 | 170 | 348 |
Wetland3P | MATLAB | 74 | 85 | 184 | 343 |
Crevasse Flow | MATLAB | 47 | 124 | 166 | 337 |
Spirals (1D) | c/c++ | 31 | 4 | 289 | 324 |
TopoFlow-Evaporation-Priestley Taylor | Python | 83 | 158 | 75 | 316 |
Flex 2D (ADI) | c/c++ | 44 | 14 | 256 | 314 |
ModelParameterDictionary | Python | 33 | 144 | 134 | 311 |
TopoFlow-Evaporation-Energy Balance | Python | 67 | 179 | 61 | 307 |
Sediment Transport Morphodynamics-Fall Velocity | c/c++ | 67 | 112 | 121 | 300 |
TopoFlow-Channels-Dynamic Wave | Python | 63 | 135 | 98 | 296 |
Multiple Flow Direction (MFD) Routing | c/c++ | 31 | 6 | 253 | 290 |
Fourier-Bessel Integration | c/c++ | 37 | 6 | 244 | 287 |
TopoFlow-Saturated Zone-Darcy Layers | Python | 26 | 217 | 39 | 282 |
Ice Sheet Glacier Reconstruction | c/c++ | 40 | 15 | 220 | 275 |
Fractional Noises (2D) | c/c++ | 27 | 6 | 240 | 273 |
Eolian Dune Model | c/c++ | 34 | 4 | 227 | 265 |
2DFLOWVEL | Fortran 77/90 | 14 | 46 | 196 | 256 |
Fractional Noises (1D) | c/c++ | 23 | 5 | 227 | 255 |
WINDSEA | Fortran 77/90 | 15 | 63 | 173 | 251 |
WSGFAM | MATLAB | 54 | 34 | 135 | 223 |
Pixel-scale Hypsometric Integral Calculator (PsHIC) | MATLAB | 42 | 49 | 114 | 205 |
STORM | Fortran 77/90 | 34 | 50 | 118 | 202 |
Flex 2D | c/c++ | 21 | 7 | 166 | 194 |
WAVEREF | Fortran 77/90 | 12 | 35 | 144 | 191 |
Channel Oscillation | c/c++ | 16 | 3 | 168 | 187 |
STVENANT | Fortran 77/90 | 13 | 41 | 132 | 186 |
TopoFlow-Snowmelt-Degree-Day | Python | 49 | 84 | 53 | 186 |
TopoFlow-Channels-Diffusive Wave | Python | 52 | 88 | 43 | 183 |
TopoFlow-Channels-Kinematic Wave | Python | 53 | 81 | 41 | 175 |
Flex 1D | c/c++ | 16 | 3 | 142 | 161 |
FTCS (2D Terraced Diffusion) | c/c++ | 22 | 10 | 117 | 149 |
Ice Ages | c/c++ | 17 | 3 | 119 | 139 |
zscape (serial) | c/c++ | 32 | 34 | 58 | 124 |
Fill In Pits Flats DEM | c/c++ | 19 | 2 | 89 | 110 |
Lava Flow (2D) | c/c++ | 10 | 2 | 93 | 105 |
FTCS (2D) | c/c++ | 17 | 6 | 81 | 104 |
Coupled1D | c/c++ | 11 | 4 | 85 | 100 |
FTCS (1D nonlinear) | c/c++ | 10 | 3 | 81 | 94 |
Yang's Routine | Fortran 77/90 | 7 | 29 | 56 | 92 |
Total | - | 1072315 | 1657978 | 4103813 | 6834106 |
By Language
Language | Projects | Blank | Comment | Source | Total |
---|---|---|---|---|---|
Fortran 77/90 | 63 | 542303 | 1069880 | 2465363 | 4077546 |
c/c++ | 104 | 350269 | 367599 | 1183957 | 1901825 |
Python | 30 | 70243 | 86189 | 137658 | 294090 |
C# | 1 | 41927 | 29344 | 160373 | 231644 |
MATLAB | 22 | 40480 | 60991 | 92280 | 193751 |
IDL | 5 | 21141 | 38834 | 36954 | 96929 |
Java | 2 | 2160 | 2214 | 12851 | 17225 |
Statistical Analysis Software | 1 | 2460 | 2390 | 5796 | 10646 |
Visual Basic | 1 | 1332 | 537 | 8581 | 10450 |
Total | 229 | 1072315 | 1657978 | 4103813 | 6834106 |