openai/NavierStokesAndEuler
Duplication Places in code with 6 or more lines that are exactly the same. |
Duplication Overall
- 8% duplication:
- 545,965 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
- 46,905 duplicated lines
- 3,366 duplicates
Duplication per Extension
Duplication per Component (primary)
Duplication Between Components (50+ lines)
flowchart TB
n0["ComparatorChallenges"]
n1["NavierStokes"]
n2["Euler"]
n0 ---|"404"| n1
n0 ---|"240"| n2
classDef default fill:#00b2ee,stroke:#ffffff,color:#000000;
classDef highlighted fill:#00b2ee,stroke:#ffffff,color:#000000;
linkStyle 0 stroke:#DC143CFF,stroke-width:10px
linkStyle 1 stroke:#DC143CA5,stroke-width:5px
Download:
Mermaid (.mmd)
(open online Mermaid editor)
2D force graph
|
3D force graph
Show more details on duplication between components...
From Component
--> To Component
Duplicated
Lines
File Pairs
Details
ComparatorChallenges (52%)
  --> NavierStokes (<1%)
404
2 file pairs
details...
ComparatorChallenges (31%)
  --> Euler (<1%)
240
3 file pairs
details...
flowchart TB
n0["ComparatorChallenges"]
n1["NavierStokes"]
n2["Euler"]
n0 ---|"404"| n1
n0 ---|"240"| n2
classDef default fill:#00b2ee,stroke:#ffffff,color:#000000;
classDef highlighted fill:#00b2ee,stroke:#ffffff,color:#000000;
linkStyle 0 stroke:#DC143CFF,stroke-width:10px
linkStyle 1 stroke:#DC143CA5,stroke-width:5px
Show more details on duplication between components...
| From Component --> To Component |
Duplicated Lines |
File Pairs | Details |
|---|---|---|---|
| ComparatorChallenges (52%)   --> NavierStokes (<1%) |
404 | 2 file pairs | details... |
| ComparatorChallenges (31%)   --> Euler (<1%) |
240 | 3 file pairs | details... |
Longest Duplicates
The list of 50 longest duplicates.
| Size | # | Folders | Files | Lines | Code |
|---|---|---|---|---|---|
| 4706 | x 2 | NavierStokesNavierStokes | 47:5333 (94%)58:5344 (94%) | view | |
| 281 | x 2 | NavierStokesNavierStokes | 18:324 (95%)32:338 (92%) | view | |
| 208 | x 2 | NavierStokesNavierStokes | 5332:5560 (4%)5343:5571 (4%) | view | |
| 178 | x 2 | ComparatorChallengesNavierStokes | 58:269 (76%)32:243 (88%) | view | |
| 103 | x 2 | EulerEuler | 14:126 (90%)35:147 (78%) | view | |
| 101 | x 2 | EulerEuler | 13:135 (91%)38:160 (77%) | view | |
| 86 | x 2 | NavierStokesNavierStokes | 159:244 (12%)989:1074 (7%) | view | |
| 83 | x 2 | EulerEuler | 13:108 (90%)49:144 (68%) | view | |
| 77 | x 2 | EulerEuler | 16:105 (87%)57:146 (64%) | view | |
| 75 | x 2 | NavierStokesNavierStokes | 64:149 (<1%)22:107 (6%) | view | |
| 72 | x 2 | EulerEuler | 23:94 (77%)49:120 (63%) | view | |
| 71 | x 2 | EulerEuler | 59:129 (52%)32:102 (72%) | view | |
| 71 | x 2 | NavierStokesNavierStokes | 193:263 (24%)71:141 (50%) | view | |
| 68 | x 2 | EulerEuler | 82:149 (44%)77:144 (47%) | view | |
| 66 | x 2 | EulerEuler | 13:91 (88%)49:127 (64%) | view | |
| 66 | x 2 | EulerEuler | 58:125 (56%)97:163 (44%) | view | |
| 60 | x 2 | EulerEuler | 90:149 (39%)74:133 (33%) | view | |
| 60 | x 2 | EulerEuler | 74:133 (33%)85:144 (41%) | view | |
| 59 | x 2 | NavierStokesNavierStokes | 715:773 (3%)82:140 (46%) | view | |
| 56 | x 2 | NavierStokesNavierStokes | 631:686 (6%)161:216 (19%) | view | |
| 53 | x 2 | NavierStokesNavierStokes | 253:309 (<1%)601:657 (3%) | view | |
| 51 | x 2 | EulerEuler | 21:73 (48%)20:72 (46%) | view | |
| 49 | x 2 | NavierStokesNavierStokes | 190:242 (16%)256:308 (14%) | view | |
| 47 | x 2 | NavierStokesNavierStokes | 7728:7774 (<1%)8269:8315 (<1%) | view | |
| 47 | x 2 | EulerEuler | 52:99 (51%)70:117 (44%) | view | |
| 47 | x 2 | ComparatorChallengesEuler | 109:162 (30%)82:135 (43%) | view | |
| 43 | x 2 | EulerEuler | 25:69 (56%)28:72 (39%) | view | |
| 43 | x 2 | EulerEuler | 29:73 (40%)25:69 (56%) | view | |
| 42 | x 2 | NavierStokesNavierStokes | 161:202 (21%)102:143 (29%) | view | |
| 42 | x 2 | EulerEuler | 63:104 (39%)68:109 (37%) | view | |
| 42 | x 2 | NavierStokesNavierStokes | 8513:8554 (<1%)432:473 (6%) | view | |
| 42 | x 2 | NavierStokesNavierStokes | 154:195 (5%)96:137 (14%) | view | |
| 42 | x 2 | NavierStokesNavierStokes | 87:128 (33%)118:159 (27%) | view | |
| 41 | x 2 | EulerEuler | 8:58 (91%)21:71 (73%) | view | |
| 40 | x 2 | EulerEuler | 37:76 (43%)42:81 (36%) | view | |
| 40 | x 2 | NavierStokesNavierStokes | 224:263 (14%)161:200 (20%) | view | |
| 39 | x 2 | EulerEuler | 16:63 (32%)15:61 (26%) | view | |
| 38 | x 2 | NavierStokesNavierStokes | 1:40 (<1%)1:40 (<1%) | view | |
| 37 | x 2 | EulerEuler | 124:160 (15%)46:82 (27%) | view | |
| 36 | x 2 | NavierStokesNavierStokes | 42:78 (2%)378:414 (2%) | view | |
| 35 | x 2 | ComparatorChallengesEuler | 37:81 (23%)36:80 (32%) | view | |
| 34 | x 2 | NavierStokesNavierStokes | 75:108 (1%)195:228 (1%) | view | |
| 33 | x 2 | EulerEuler | 36:68 (28%)18:50 (37%) | view | |
| 33 | x 2 | NavierStokesNavierStokes | 276:308 (2%)48:80 (25%) | view | |
| 33 | x 2 | NavierStokesNavierStokes | 7742:7774 (<1%)296:328 (4%) | view | |
| 33 | x 2 | NavierStokesNavierStokes | 8283:8315 (<1%)296:328 (4%) | view | |
| 33 | x 2 | EulerEuler | 190:222 (14%)193:225 (14%) | view | |
| 32 | x 2 | NavierStokesNavierStokes | 79:110 (28%)268:299 (11%) | view | |
| 32 | x 2 | NavierStokesNavierStokes | 1415:1446 (2%)348:379 (7%) | view | |
| 31 | x 2 | EulerEuler | 26:58 (27%)59:91 (22%) | view |
Most Frequent Duplicates
The list of 50 most frequently found duplicates.
About This Analysis
- For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
- Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
- You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
- To learn more about duplications and techniques for eliminating duplication, Sokrates recommends the following resources:
- Avoid Repetition, MartinFlower.com (IEEE Software article)
- Refactoring duplicated code, sourcemaking.com
- Beck Design Rules, MartinFowler.com
- DRY (Don't Repeat Yourself) Principle, Wikipedia
- The Cut-and-Paste Programming Software Development Anti-Pattern, sourcemaking.com
- Code Smells / Duplicated Code, Jeff Atwood, codinghorror.com:
- "Duplicated code is the bane of software development. Stamp out duplication whenever possible. You should always be on the lookout for more subtle cases of near-duplication, too. Don't Repeat Yourself!"
- Reducing Coupling, MartinFlower.com (IEEE Software article):
- "There are several ways to describe coupling, but it boils down to this: If changing one module in a program requires changing another module, then coupling exists. ... Duplication always implies coupling, because changing one piece of duplicate code implies changing the other."