Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

IGA knotvectors

Hi all, I have a code for IGA written in python/numpy and I am considering to convert it to Sagemath, in order to take advantage of its computational & plotting capabilities. My concerns are about performance. I have seen some benchmarks dealing with "typical" calculations, and Sagemath is definitely faster. However, when it comes to a specialized application, additional questions rise, e.g. selecting the most appropriate classes for my objects.

For example, in my current implementation, I have a class for knotvectors which stores the knot-indices and the knot-values (among other things). A naive approach is to have a class with two arrays, namely "index" and "value". What would be a more efficient way to store this info?

I have checked the documentation, and found various classes.. Unfortunately, there is no mention on performance. e.g. Would a "Family" or an "EnumeratedSet" object perform faster than storing in two arrays?

Converting the whole code, just to find out that the Sagemath approach performs slower, would be a tremendous waste of time. Any thoughts are wellcome!