Comments (3)
Dear Sam,
Sorry for the lot of time I took to look at that.
As a rule of thumb, the o.e. movements are supposed to be small to check tolerances. Otherwise, you may find unexpected results, as you got.
I made some tests. I first made a pencil beam (zero cross section and very small divergence) to check the center. When you increase the X rotation, is like if you change the incident angle. When you arrive to an angle of 17 deg you see the change as the grazing incidence becomes 0. Then increasing goes well up to 90+17. Checking the angles before and after this value, you see the interception changes from negative Y to positive Y, meaning that shadow changes from one solution to another of the quartic equation (i.e. it is looking at another part of the curved surface). Therefore, when you rotate 180 deg shadow looks to another part of the surface.
We found this problem on several occasions. Shadow automatically selects one solution of the two in conics or 4 solutions in toroids. Unfortunately, there is no way to control that.
I hope this gives some light to the problem.
Best regards,
Manuel
PS: If you do not mind, I copied your question to the shadow3 issues: #56
from shadow3.
I communicated with Sam in private last week.
from shadow3.
Thank you both very much for your help.
The context was attempting to consistently select the interior surface of a self-intersecting torus, such as the one on the right-hand side of these plots.
I could usually access the surface I wanted using various OE rotations, but not every time.
Per Manuel's suggestion, I followed the 'thermal bump' tutorial to project the desired figure onto a plane mirror, which worked great.
Thanks again,
Sam
from shadow3.
Related Issues (20)
- Failure to compile in fedora (using gcc/gfortran 8) HOT 2
- Info not working HOT 2
- cannot update the adds-ons on Jan.26, 2020 HOT 5
- Laue Symmetrical (or asymmetrical for alpha=90deg) is buggy HOT 1
- Wiggler source size calculation HOT 3
- Error while running test program HOT 4
- Flat vs. uniform geometrical source HOT 2
- Unexpected behavior of CRL + crystal HOT 2
- compound lens problem for zero lenses
- fatal error LNK1136: invalid or corrupt file HOT 8
- Installation from source not working HOT 30
- License for this repo HOT 2
- SI100 produces unrealistic intensity HOT 1
- simulation of paraboloid mirror HOT 1
- BRAGG standalone use HOT 1
- Parabolic mirror with small distances HOT 2
- reflectivity with graphite 002 HOT 10
- improve plot range (get_good_range) HOT 1
- Storing the output data HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from shadow3.