Skip to content

[IGA] Expose active CP indices and higher-order derivatives at arbitrary local coordinates for BRep Surfaces#14251

Open
juancamarotti wants to merge 5 commits intomasterfrom
iga/add_evaluate_shape_functions_functionality
Open

[IGA] Expose active CP indices and higher-order derivatives at arbitrary local coordinates for BRep Surfaces#14251
juancamarotti wants to merge 5 commits intomasterfrom
iga/add_evaluate_shape_functions_functionality

Conversation

@juancamarotti
Copy link
Contributor

@juancamarotti juancamarotti commented Mar 3, 2026

Motivation

Currently, Kratos allows evaluating shape functions (and first derivatives) at arbitrary local coordinates on BRepSurfaces through ShapeFunctionsValues() and ShapeFunctionsLocalGradients(). However:

  • The active control-point indices at a given parameter position are not accessible (only available through QuadraturePointGeometry).
  • For non-quadrature points, derivatives are limited to first order via ShapeFunctionLocalGradients(), preventing access to higher-order derivatives.

What this PR adds
Extends the BrepSurface class with a routine called ShapeFunctionsValuesAndCPIndices() which returns the following values at a certain point in the surface parameter space:

  • Active control-point indices
  • Shape function values
  • Higher-order derivatives (up to requested order)

Comments

  • A test for this new functionality was added
  • This new function was exposed to the python interface

Copy link
Contributor

@rickyaristio rickyaristio left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree with the new function. Please check my comments.

@juancamarotti juancamarotti requested review from a team and rickyaristio March 3, 2026 15:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants