Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove dependence on Fortran for calculation of Bessel functions #307

Open
myurkin opened this issue Dec 7, 2021 · 0 comments
Open

Remove dependence on Fortran for calculation of Bessel functions #307

myurkin opened this issue Dec 7, 2021 · 0 comments
Labels
comp-Library Related to external libraries maintainability Simplifies further code development (standardization, robustness)
Milestone

Comments

@myurkin
Copy link
Member

myurkin commented Dec 7, 2021

While compiling Fortran sources is not a big deal (can be done reliably in various environments), we have a special compilation option NO_FORTRAN to compile without them. The functionality of the obtained executable is naturally determined by the absence of the corresponding Fortran routines. The main dependence so far is IGT sources, which are especially important for rectangular sources. However, we will soon merge IGT_SO (#299), which provides an efficient substitute. After that IGT will be left mainly for testing purposes.

But simultaneously we are adding Bessel beams (#304) and later EELS (#155), which depend on calculation of Bessel functions (including modified ones of complex argument) in file bessel.f90. Thus, it would be nice to rewrite this file in C99 - I guess, this can be done semi-automatically.

@myurkin myurkin added maintainability Simplifies further code development (standardization, robustness) comp-Library Related to external libraries labels Dec 7, 2021
@myurkin myurkin added this to the 1.6 milestone Dec 7, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp-Library Related to external libraries maintainability Simplifies further code development (standardization, robustness)
Projects
None yet
Development

No branches or pull requests

1 participant