Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
c7d11fc
docs: add Milestone AK design spec
imikejackson Jun 1, 2026
71bc698
docs: revise AK spec per review (seed pattern, output names, voxel or…
imikejackson Jun 1, 2026
7d56898
docs: add Milestone AK implementation plan
imikejackson Jun 1, 2026
b8e5ef8
feat(lib): add buildUniformODF grid helper to MTRSimDriver
imikejackson Jun 1, 2026
c27c1f6
feat(lib): add gridToODFComponent reconstruction helper
imikejackson Jun 1, 2026
40bfe04
feat(lib): add remapSimToZYX voxel-order helper
imikejackson Jun 1, 2026
f331a9e
feat(lib): add simulateMTR end-to-end driver; main.cpp uses it
imikejackson Jun 1, 2026
6a79b63
fix(lib): correct main.cpp voxel ordering + harden simulateMTR per re…
imikejackson Jun 1, 2026
14fbb90
feat(filter): scaffold MTRSimFilter + MTRSim algorithm, params, prefl…
imikejackson Jun 1, 2026
38bb3e0
fix(filter): harden MTRSimFilter preflight + conventions per review
imikejackson Jun 1, 2026
b107269
feat(filter): implement MTRSim algorithm execute + statistical wiring…
imikejackson Jun 1, 2026
3c70392
fix(filter): drop dead seed write, reorder VF checks, tidy per review
imikejackson Jun 1, 2026
0f46063
ENH: Add optional polar coloring output to MTRSimFilter
imikejackson Jun 1, 2026
4f41e57
docs: add MTRSimFilter (Generate Synthetic Microtexture) documentation
imikejackson Jun 1, 2026
dea7856
docs: record AK plan execution corrections; ignore CTest Testing/ dir
imikejackson Jun 1, 2026
78e6d53
docs: add MTRSimFilter overview/algorithm/ODF figures
imikejackson Jun 1, 2026
b9c696d
fix(filters): parameter keys must end with _path / _index (FilterVali…
imikejackson Jun 2, 2026
62636dc
STY: Add clang-format file and format all sources.
imikejackson Jun 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
89 changes: 89 additions & 0 deletions .clang-format
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
---
Language: Cpp
# AccessModifierOffset: -2
# AlignAfterOpenBracket: Align
# AlignConsecutiveAssignments: false
# AlignConsecutiveDeclarations: false
# AlignEscapedNewlinesLeft: false
# AlignOperands: true
# AlignTrailingComments: true
# AllowAllParametersOfDeclarationOnNextLine: true
# AllowShortBlocksOnASingleLine: false
# AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: false
# AllowShortIfStatementsOnASingleLine: false
# AllowShortLoopsOnASingleLine: false
# AlwaysBreakAfterDefinitionReturnType: None
# AlwaysBreakAfterReturnType: None
# AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: true
# BinPackArguments: true
# BinPackParameters: true
BraceWrapping:
AfterClass: true
AfterControlStatement: true
AfterEnum: true
AfterFunction: true
AfterNamespace: true
AfterObjCDeclaration: false
AfterStruct: true
AfterUnion: false
BeforeCatch: false
BeforeElse: true
IndentBraces: false
#BreakBeforeBinaryOperators: None
BreakBeforeBraces: Custom
BreakBeforeTernaryOperators: false
BreakConstructorInitializersBeforeComma: true
ColumnLimit: 200
# CommentPragmas: '^ IWYU pragma:'
# ConstructorInitializerAllOnOneLineOrOnePerLine: false
ConstructorInitializerIndentWidth: 0
# ContinuationIndentWidth: 4
# Cpp11BracedListStyle: true
# DerivePointerAlignment: false
# DisableFormat: false
# ExperimentalAutoDetectBinPacking: false
# ForEachMacros: [ foreach, Q_FOREACH, BOOST_FOREACH ]
# IncludeCategories:
# - Regex: '^"(llvm|llvm-c|clang|clang-c)/'
# Priority: 2
# - Regex: '^(<|"(gtest|isl|json)/)'
# Priority: 3
# - Regex: '.*'
# Priority: 1
# IndentCaseLabels: false
# IndentWidth: 2
# IndentWrappedFunctionNames: false
# KeepEmptyLinesAtTheStartOfBlocks: true
# MacroBlockBegin: ''
# MacroBlockEnd: ''
# MaxEmptyLinesToKeep: 1
# NamespaceIndentation: None
# ObjCBlockIndentWidth: 2
# ObjCSpaceAfterProperty: false
# ObjCSpaceBeforeProtocolList: true
# PenaltyBreakBeforeFirstCallParameter: 19
# PenaltyBreakComment: 300
# PenaltyBreakFirstLessLess: 120
# PenaltyBreakString: 1000
# PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 100
PointerAlignment: Left
# ReflowComments: true
SortIncludes: true
# SpaceAfterCStyleCast: false
# SpaceBeforeAssignmentOperators: true
SpaceBeforeParens: Never
# SpaceInEmptyParentheses: false
# SpacesBeforeTrailingComments: 1
# SpacesInAngles: false
# SpacesInContainerLiterals: true
# SpacesInCStyleCastParentheses: false
# SpacesInParentheses: false
# SpacesInSquareBrackets: false
SpaceAfterTemplateKeyword: true
Standard: c++20
TabWidth: 2
UseTab: Never
...
56 changes: 56 additions & 0 deletions .clang-tidy
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
---
Checks: "-abseil-*,
bugprone-*,
-boost-*,
-cert-*,
clang-diagnostic-*,
-clang-diagnostic-documentation,
clang-analyzer-*,
cppcoreguidelines-*,
-cppcoreguidelines-avoid-magic-numbers,
-darwin-*,
-fuchsia-*,
-google-*,
-hicpp-*,
-linuxkernel-*,
-llvm-*,
misc-*,
modernize-*,
-modernize-use-trailing-return-type,
-modernize-use-nodiscard,
-modernize-use-auto,
-mpi-*,
-objc-*,
-openmp-*,
performance-*,
-portability-*,
readability-*,
-readability-function-cognitive-complexity,
-readability-function-size,
-readability-uppercase-literal-suffix,
-readability-magic-numbers"
WarningsAsErrors: '*'
HeaderFilterRegex: 'simplnx/.*\.hpp'
FormatStyle: file
CheckOptions:
cppcoreguidelines-macro-usage.AllowedRegexp: 'SIMPLNX_EXPORT|SIMPLNX_NO_EXPORT|SIMPLNX_DEPRECATED'
readability-identifier-naming.IgnoreMainLikeFunctions: 'false'
readability-identifier-naming.PrivateMemberPrefix: 'm_'
readability-identifier-naming.NamespaceCase: lower_case
readability-identifier-naming.ClassCase: CamelCase
readability-identifier-naming.ClassMethodCase: camelBack
readability-identifier-naming.PrivateMember: CamelCase
readability-identifier-naming.PublicMemberCase: CamelCase
readability-identifier-naming.StructCase: CamelCase
readability-identifier-naming.FunctionCase: camelBack
readability-identifier-naming.VariableCase: camelBack
readability-identifier-naming.GlobalVariableCase: CamelCase
readability-identifier-naming.GlobalConstantCase: CamelCase
readability-identifier-naming.GlobalConstantPrefix: 'k_'
readability-identifier-naming.GlobalFunctionCase: CamelCase
readability-identifier-naming.LocalPointerCase: camelBack
readability-identifier-naming.LocalPointerSuffix: 'Ptr'
readability-identifier-naming.TypeAliasCase: CamelCase
readability-identifier-naming.TypeAliasSuffix: 'Type'
readability-identifier-naming.MacroDefinitionCase: UPPER_CASE
...
99 changes: 99 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
name: Bug Report
description: File a bug report
title: "BUG: "
labels: ["bug", "needs triage"]
body:
- type: markdown
attributes:
value: |
We're sorry to hear your having trouble with our application. By filling out the following form in its entirety, we will be able to better diagnose the problem and help you reach a resolution. Thank you in advance for taking the time to fill out the form!
- type: checkboxes
attributes:
label: Is there an existing issue for this?
description: Please search to see if an issue already exists for the bug you encountered.
options:
- label: I have searched the existing issues, known issues in release notes, and documentation.
required: true
- type: textarea
id: brief-description
attributes:
label: Brief Description of the Issue and Expected Behavior
description: Briefly describe the issue you encountered and what you expected to happen.
placeholder: Tell us what you see!
value: "A bug happened!"
validations:
required: true
- type: textarea
id: system-information
attributes:
label: Platform and Version Information
description: |
Please complete the following steps and paste it in the box below:

1. Select the `Help` dropdown from the taskbar at the top left side of the application
2. Select the `About DREAM3D-NX` option near the bottom of the dropdown submenu
3. Click the `Copy Info` button from the pop-up window to copy it to your clipboard
4. Paste the information in the box below, using `ctrl-v` on the keyboard or by left-clicking and selecting `paste`

Example copied information shown in the preview.
placeholder: |
DREAM3D-NX Build Revision: cba61ebbca
DREAM3D-NX Build Date: 2025/07/18
Operating System: Ubuntu 22.04.5 LTS
Architecture: x86_64
System Locale: en_US
Installed RAM: 62.5 GB
Built and maintained by BlueQuartz Software, LLC.
validations:
required: true
- type: dropdown
id: error-type
attributes:
label: What section did you encounter the error in? [Further details may be required during triage process]
multiple: true
options:
- GUI client
- NXRunner
- Visualization
- Workflow
- Filter Library (or Search Bar)
- Filter Parameters
validations:
required: false
- type: textarea
id: steps-to-reproduce
attributes:
label: Steps To Reproduce
description: Please include the steps to reproduce the behavior in order to help you as efficiently as possible.
placeholder: |
1. With this config...
2. Run '...'
3. See error...
validations:
required: false
- type: textarea
id: logs
attributes:
label: Relevant log output
description: Please copy and paste any relevant log output. This can be found in the output widget of the interface or the console output of PipelineRunner.
render: "Text"
validations:
required: false
- type: textarea
id: further-detail
attributes:
label: Anything else?
description: |
Links? Pipelines? References? Compiler? Hardware? Anything that will give us more context about the issue you are encountering!

Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false
- type: checkboxes
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you understand that your issue may be closed if you do not remain cordial, do not provide further detail if prompted, or do not engage with responses from the developers in a reasonable time.
options:
- label: I agree to follow this project's Code of Conduct
required: true
73 changes: 73 additions & 0 deletions .github/ISSUE_TEMPLATE/documentation_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
name: Documentation Report
description: File a report for additional sections or discrepancies, missing, or comment errors in our documentation.
title: "DOC: "
labels: ["documentation", "needs triage"]
body:
- type: markdown
attributes:
value: |
Thank you for helping to better our documentation! By filling out the following form in its entirety, we will be able to better what needs to be fixed or improved on. Thank you in advance for taking the time to fill out the form!
- type: checkboxes
attributes:
label: Is there an existing issue for this?
description: Please search to see if an issue already exists for the bug you encountered.
options:
- label: I have searched the existing issues, known issues in release notes, and documentation.
required: true
- type: textarea
id: brief-description
attributes:
label: Brief Description of the Documentation Issue or Improvement
description: Briefly describe the issue you found and what you expected.
placeholder: Tell us what you see!
value: "The discrepancy can be found at ___ and I think it should be ___"
validations:
required: true
- type: dropdown
id: version
attributes:
label: Version
description: What version of our software are you running? [Further details may be required during triage process]
options:
- DREAM3D NX (version 7.0.0+)
- NXRunner built from source - Please provide git hash of commit in description
- other (Please enter in the extended description at the bottom)
validations:
required: true
- type: dropdown
id: error-type
attributes:
label: What section of the documentation did you encounter the discrepancy in? [Further details may be required during triage process]
multiple: true
options:
- Filter Documentation
- Python Bindings Documentation
- Release Notes
- Acknowledgements
- Licensing
- README.md
- CONTRIBUTING.md
- SUPPORT.md
- Other - Please provide additional information in the "Anything Else?" Section
validations:
required: false
- type: textarea
id: further-detail
attributes:
label: Anything else?
description: |
Is this in relation to multilingual support?
Is there sections you think should be added to help other users?
Is there a missing reference?

Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false
- type: checkboxes
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you understand that your issue may be closed if you do not remain cordial, do not provide further detail if prompted, or do not engage with responses from the developers in a reasonable time.
options:
- label: I agree to follow this project's Code of Conduct
required: true
77 changes: 77 additions & 0 deletions .github/ISSUE_TEMPLATE/functionality_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
name: Request New Functionality
description: Share your recommendations for new features, filters, and functionality!
title: "ENH: "
labels: ["enhancement", "needs triage"]
body:
- type: markdown
attributes:
value: |
We're excited to hear your visions for our library. By filling out the following form in its entirety, we will be able to get a better understanding of your idea. Thank you in advance for taking the time to fill out the form!
- type: checkboxes
attributes:
label: Is there an existing plan for this?
description: Please search to see if a plan already exists for your suggestion. [If so, feel free to comment your support in that discussion/report]
options:
- label: I have searched the existing discussions, release notes, and documentation.
required: true
- type: textarea
id: brief-description
attributes:
label: Description of the Feature, Filter, or Functionality?
description: Describe your feature in detail or even provide an implementation plan/existing open source library to reference!
value: What if simplnx had...
validations:
required: true
- type: dropdown
id: version
attributes:
label: Version
description: What version of our software are you running? [Further details may be required during triage process]
options:
- 7.x.x+ (DREAM3DNX)
- NXRunner built from source - Please provide git hash of commit in description
- other (Please enter in the extended description at the bottom)
validations:
required: true
- type: dropdown
id: suggestion-type
attributes:
label: What section did you foresee your suggestion falling in? [Further details may be required during triage process]
multiple: true
options:
- Python Bindings
- NXRunner
- Filter Library (or Search Bar)
- Filter Parameters
- Infrastructure
- External Compatibility
validations:
required: false
- type: textarea
id: steps-to-implement
attributes:
label: High Level Steps To Implement
description: Please include the steps to implement the behavior in order to help you as efficiently as possible.
placeholder: |
1. Based on this paper/library...
2. Alter...
validations:
required: false
- type: textarea
id: further-detail
attributes:
label: Anything else?
description: |
Links? References? Anything that will give us more context about the issue you are encountering!

Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false
- type: checkboxes
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you understand that your issue may be closed if you do not remain cordial, do not provide further detail if prompted, or do not engage with responses from the developers in a reasonable time.
options:
- label: I agree to follow this project's Code of Conduct
required: true
Loading
Loading