Matches in SemOpenAlex for { <https://semopenalex.org/work/W2987139871> ?p ?o ?g. }
Showing items 1 to 51 of
51
with 100 items per page.
- W2987139871 abstract "The underlying unity of the numerous surveying computational methods is hidden by many practical differences in data acquisition. Traditional programming languages have added to the confusion by requiring programmers to describe the numeric data in very concrete and low-level structures (mostly arrays). In fact the algorithms behind all coordinate determination from surveying observations come down to basic methods of linear algebra. Lego uses the paradigm of object oriented programming (OOP) to more closely model the fundamental mathematical structures of all geodetic methods. Once the methods are in OOP form, the commonality across them becomes more obvious and a general architecture for a wide range of geodetic treatments becomes possible. This paper describes the fundamental concepts of this architecture and its advantages in terms of clarity (maintainability, testability and multi-author), portability and extensibility (observation types, resolution techniques and storage methods). The very first version of Lego was built in 1994 as a set of C routines to be used for the adjustment of theodolite data and tracker data. The routines were organized into six modules. Each module answered a specific task. The tasks had been identified as followed: general implementation, input, generic surveying formulas, statistical functions, matrix manipulation and specific resolution technique. This organization was the reason for the name Lego, but more seriously the purpose of this separation was to make Lego easily adaptable to any environment and easily expandable to new resolution techniques. At a second look, it was also a cry for being converted into a more modern language. Because C++ is primarily a superset of C, most C++ compilers have no problems compiling regular C code and may also handle a mixture of C and C++. This made the transformation of Lego very fast and painless. Up to now Lego is still using C functions for file access and dynamic memory allocation but is organized into classes allowing stronger data typing and, most of all, data hiding. It also benefits from some of the more advanced concepts of object programming such as encapsulation and virtual functions. Unlike with the C version where different executables coexisted there is only one C++ Lego." @default.
- W2987139871 created "2019-11-22" @default.
- W2987139871 creator A5058599131 @default.
- W2987139871 date "2003-05-14" @default.
- W2987139871 modified "2023-09-25" @default.
- W2987139871 title "LEGO: A Modular Approach to Accelerator Alignment Data Analysis" @default.
- W2987139871 cites W1487010845 @default.
- W2987139871 doi "https://doi.org/10.2172/813116" @default.
- W2987139871 hasPublicationYear "2003" @default.
- W2987139871 type Work @default.
- W2987139871 sameAs 2987139871 @default.
- W2987139871 citedByCount "0" @default.
- W2987139871 crossrefType "report" @default.
- W2987139871 hasAuthorship W2987139871A5058599131 @default.
- W2987139871 hasBestOaLocation W29871398712 @default.
- W2987139871 hasConcept C101468663 @default.
- W2987139871 hasConcept C115903868 @default.
- W2987139871 hasConcept C138958017 @default.
- W2987139871 hasConcept C160713754 @default.
- W2987139871 hasConcept C162319229 @default.
- W2987139871 hasConcept C199360897 @default.
- W2987139871 hasConcept C41008148 @default.
- W2987139871 hasConcept C63000827 @default.
- W2987139871 hasConcept C73752529 @default.
- W2987139871 hasConceptScore W2987139871C101468663 @default.
- W2987139871 hasConceptScore W2987139871C115903868 @default.
- W2987139871 hasConceptScore W2987139871C138958017 @default.
- W2987139871 hasConceptScore W2987139871C160713754 @default.
- W2987139871 hasConceptScore W2987139871C162319229 @default.
- W2987139871 hasConceptScore W2987139871C199360897 @default.
- W2987139871 hasConceptScore W2987139871C41008148 @default.
- W2987139871 hasConceptScore W2987139871C63000827 @default.
- W2987139871 hasConceptScore W2987139871C73752529 @default.
- W2987139871 hasLocation W29871398711 @default.
- W2987139871 hasLocation W29871398712 @default.
- W2987139871 hasOpenAccess W2987139871 @default.
- W2987139871 hasPrimaryLocation W29871398711 @default.
- W2987139871 hasRelatedWork W1537342125 @default.
- W2987139871 hasRelatedWork W2017260672 @default.
- W2987139871 hasRelatedWork W2019744830 @default.
- W2987139871 hasRelatedWork W2026066379 @default.
- W2987139871 hasRelatedWork W2367476165 @default.
- W2987139871 hasRelatedWork W2382559277 @default.
- W2987139871 hasRelatedWork W2763815264 @default.
- W2987139871 hasRelatedWork W4233387348 @default.
- W2987139871 hasRelatedWork W1482645738 @default.
- W2987139871 hasRelatedWork W2528467228 @default.
- W2987139871 isParatext "false" @default.
- W2987139871 isRetracted "false" @default.
- W2987139871 magId "2987139871" @default.
- W2987139871 workType "report" @default.