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

Multilayered sphere/ellipsoid #293

Closed
myurkin opened this issue Apr 23, 2021 · 1 comment · Fixed by #333
Closed

Multilayered sphere/ellipsoid #293

myurkin opened this issue Apr 23, 2021 · 1 comment · Fixed by #333
Labels
comp-Logic Related to internal code logic good first issue Should be easy to solve for someone not familiar with the internals of the code pri-Low Kept mostly for reference usability Makes using code more convenient

Comments

@myurkin
Copy link
Member

myurkin commented Apr 23, 2021

The new shape coated2, corresponding to three concentric layers, will be added soon (#291). The natural extension of this shape is arbitrary number of concentric spheres (onion), with command line like:

-shape onion <d2/d> [<d3/d> ...]

where d=d1 is the diameter of the outer sphere, and d1,d2,... is the non-increasing sequence of diameters. The number of layers is limited only by MAX_NMAT, but this will be relaxed when #12 is solved.

For a reference - https://github.com/adda-team/adda/wiki/AddingShape

When this shape is implemented, coated2 will become deprecated, while coated will remain, since it additionally allows for non-concentric shapes (shift of the core from the center).

One more step is to make concentric ellipsoid:

-shape onion_ell <y/x> <z/x> <d2/d> [<d3/d> ...]

And one more idea is confocal spheroid (not the same as concentric), which is sometimes used in methods based on separation of variables (but I am not sure that it is relevant for any practical problems).

@myurkin myurkin added feature Allows new functionality help wanted Should be doable without understanding the whole code, but not as easy as "good first issue" comp-Logic Related to internal code logic pri-Low Kept mostly for reference good first issue Should be easy to solve for someone not familiar with the internals of the code usability Makes using code more convenient and removed help wanted Should be doable without understanding the whole code, but not as easy as "good first issue" feature Allows new functionality labels Apr 23, 2021
myurkin added a commit that referenced this issue Jul 2, 2024
Adds new shapes `onion` and `onion_ell` (#293), including new tests, documentation, images, etc. Other changes:
- specifies `coated2` as deprecated shape
- updates the default value of `MAX_NMAT` to 60
- MAX_N_SH_PARMS is now calculated directly from MAX_NMAT, but extra check for its sufficiency is added to PARSE_FUNC(shape)
- Use of MAX_NMAT is now more informative in various help strings (`-h m` and for new shapes) due to use of new macro TO_STRING(A)
- overall extends the testing framework with Bash scripts in `tests/equiv`:
  - adds several new functions
  - moves common parts to a new file common.sh
  - comparison of shape files now ignores differences in shape names (if it is expected)
  - adds processing of exit codes and possibility to stop on the first error
  - increases refractive indices, adds -grid 16, but balances this with -eps 1 (keeping the computational time approximately the same)
- makes `tests/2exec` less stringent for "-int igt 3" (due to improvement of corresponding routines since 1.4.0)
- adds hints on inserting SVG files into MS Word in svg_images.txt
- adds specific note about an interim version of the manual
- increments ADDA version to 1.5.0-alpha2

---------

Co-authored-by: Maxim Yurkin <yurkin@gmail.com>
@myurkin
Copy link
Member Author

myurkin commented Jul 2, 2024

Confocal spheroid still remains, but I do not see sufficient motivation even to create a special issue for it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comp-Logic Related to internal code logic good first issue Should be easy to solve for someone not familiar with the internals of the code pri-Low Kept mostly for reference usability Makes using code more convenient
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant