Repository navigation
Core shell bifrustum prism clean - #792
sara-mokhtari wants to merge 13 commits into
Conversation
Note that the a axis of a prism is crossing a vertice of the polygon in the (a,b) plane.
|
2D orientation question:
Since I do not really understand how the functions must be defined for 2D orientations (how the API works), I think this part should be carefully reviewed. |
There was a problem hiding this comment.
No quality gates enabled for this code.
See analysis details in CodeScene
Quality Gate Profile: Custom Configuration
Install CodeScene MCP: safeguard and uplift AI-generated code. Catch issues early with our IDE extension and CLI tool.
Description
Fixes #775
This model describes a core-shell particle with a bifrustum core and a prism shell. Both shapes are defined with their symmetry axis along the z-axis and centered at the origin. The bifrustum core can be rotated around the z-axis by an angle alpha (core_rotation) and translated along the z-axis by a distance z_0 (core_translation) with respect to the prism shell.
Depends on #781 (support for pure Python 2D models): this PR is based on
py-Iqabcand targets it,so the diff only shows the bifrustum. Once #781 is merged, I will retarget this PR to
masterand merge
masterinto this branch.weighted by their respective scattering length densities (sld_shell, sld_core)
and the solvent scattering length density (sld_solvent).
Fqabc/Iqabcwiththeta,phi,psiNote for review: the model structure is inspired from mixture.py, with parameters having a prefix "core_" or "shell_" (ex: core_radius, shell_radius). The idea is to start generalizing the model. Also, prism.py was updated to be able to call directly Fqabc without flattening qa, qb, qc beforehand (important if we want to make a general core-shell model at the end).
How Has This Been Tested?
model_testpassesReview Checklist:
[if using the editor, use
[x]in place of[ ]to check a box]Documentation (check at least one)
Installers
Licensing (untick if necessary)