sbrisard / pw85 Goto Github PK
View Code? Open in Web Editor NEWC++ implementation of the overlap test for ellipsoids introduced by Perram and Wertheim (J. Comp. Phys, 58(3), 409–416, 1985)
License: BSD 3-Clause "New" or "Revised" License
C++ implementation of the overlap test for ellipsoids introduced by Perram and Wertheim (J. Comp. Phys, 58(3), 409–416, 1985)
License: BSD 3-Clause "New" or "Revised" License
The test of contact_function
shows very poor accuracy with the following parameters
golden_ratio = (1.+np.sqrt(5.))/2.
norm = np.sqrt(1+golden_ratio**2)
u_abs = 1./norm
v_abs = golden_ratio/norm
r = np.array([0., u_abs, v_abs])
n1 = np.array([0., u_abs, v_abs])
n2 = np.array([0., u_abs, v_abs])
a1 = c1 = 1.999
a2 = c2 = 0.0199
(these are spheres!)
This ticket is strongly related to #1: the same changes should be implemented in the Makefile
.
For the time being, it returns 0 allways. A non-zero value should be returned in case of non-convergence.
PW85 now invokes the GSL implementation of the Brent algorithm. This probably requires to change the license to GPL (check the legal issue).
Auto-formatting breaks some lines and introduces spurious asterisks in RST directives.
The commands that read the config file and import the dynamic library should be wrapped in a function.
For consistency with function pw85__xT_adjA_x
.
The python module should be renamed pw85
, while we are at it!
In the meson.build
script, the following command
pw85_version = run_command('more', # `more` works on both windows and linux
join_paths(meson.source_root(),
'..',
'metadata',
'version.txt')).stdout().strip()
Leads to an incorrect header file
#define PW85_VERSION "::::::::::::::
C:/Users/sbrisard/Documents/programmes/pw85/src/../metadata/version.txt
::::::::::::::
1.0"
under windows/MSYS2. Replacing more
with cat
works fine.
This directive conflicts with how breathe processes the signature of functions.
The role of this directive is not clear. What is the consequence of removing it?
The make.bat
that is automatically generated by sphinx-quickstart
has been altered in order to place the generated html files in PROJECT_ROOT/docs
(this is required by GitHub pages).
For the time being, the following command is executed
if exist "_build\html\" xcopy /i /s /e _build\html ..\docs
This hack should be made a bit more robust, by
html
target was indeed invoked,sphinx-build
ran successfully.Owing to the use of the GSL library, the function pw85_f
(to be maximized) needs to have a signature that is compatible with GSL, namely
double func(double x, void* params)
We propose to write a "low-level" implementation of pw85_f
with precisely this signature. Besides, the value returned by this low-level implementation should be negated (as gsl_min_fminimizer_brent
seeks minimizers). The hi-level implementation would keep the present signature.
A detailed error message should be provided, documenting the location of the expected config file, as well as its structure.
An error should be thrown when convergence could not be reached.
One-letter names ought to be avoided.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.