Orbit trap
ಗಣಿತಶಾಸ್ತ್ರದಲ್ಲಿ, ಆರ್ಬಿಟ್ ಟ್ರ್ಯಾಪ್ ಎನ್ನುವುದು ಫ್ರ್ಯಾಕ್ಟಲ್ ಅನ್ನು ರಚಿಸಲು ಬಳಸುವ ಪುನರಾವರ್ತಿತ ಕಾರ್ಯವು ಜ್ಯಾಮಿತೀಯ ಆಕಾರವನ್ನು ತಲುಪುತ್ತದೆ, ಇದನ್ನು "ಟ್ರ್ಯಾಪ್" ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ವಿಶಿಷ್ಟ ಬಲೆಗಳೆಂದರೆ ಬಿಂದುಗಳು, ರೇಖೆಗಳು, ವೃತ್ತಗಳು, ಹೂವಿನ ಆಕಾರಗಳು ಮತ್ತು ರಾಸ್ಟರ್ ಚಿತ್ರಗಳು. ಆರ್ಬಿಟ್ ಟ್ರ್ಯಾಪ್ಗಳನ್ನು ಸಾಮಾನ್ಯವಾಗಿ ಸಂಕೀರ್ಣ ಸಮತಲವನ್ನು ಪ್ರತಿನಿಧಿಸುವ ಎರಡು ಆಯಾಮದ ಫ್ರ್ಯಾಕ್ಟಲ್ಗಳಿಗೆ ಬಣ್ಣ ನೀಡಲು ಬಳಸಲಾಗುತ್ತದೆ. ಉದಾಹರಣೆಗಳು ಪಾಯಿಂಟ್ ಆಧಾರಿತ ಒಂದು ಬಿಂದು-ಆಧಾರಿತ ಕಕ್ಷೆಯ ಬಲೆಯು ಒಂದು ಕಾರ್ಯದ ಕಕ್ಷೆಯು ಒಂದೇ ಬಿಂದುವಿಗೆ, ಸಾಮಾನ್ಯವಾಗಿ ಮೂಲಕ್ಕೆ ಎಷ್ಟು ಹತ್ತಿರದಲ್ಲಿದೆ ಎಂಬುದರ ಆಧಾರದ ಮೇಲೆ ಒಂದು ಬಿಂದುವಿಗೆ ಬಣ್ಣ ನೀಡುತ್ತದೆ. ರೇಖೆ ಆಧಾರಿತ ಕಕ್ಷೆಯ ಬಲೆಯು ಒಂದು ಕಾರ್ಯದ ಕಕ್ಷೆಯು ಒಂದು ಅಥವಾ ಹೆಚ್ಚಿನ ರೇಖೆಗಳಿಗೆ ಎಷ್ಟು ಹತ್ತಿರದಲ್ಲಿದೆ ಎಂಬುದರ ಆಧಾರದ ಮೇಲೆ ಒಂದು ಬಿಂದುವಿಗೆ ಬಣ್ಣ ನೀಡುತ್ತದೆ, ಸಾಮಾನ್ಯವಾಗಿ ಲಂಬ ಅಥವಾ ಸಮತಲ (x = a ಅಥವಾ y = a ರೇಖೆಗಳು). ಪಿಕ್ಓವರ್ ಕಾಂಡಗಳು ಎರಡು ರೇಖೆಗಳನ್ನು ಬಳಸುವ ರೇಖೆ ಆಧಾರಿತ ಕಕ್ಷೆಯ ಬಲೆಗೆ ಒಂದು ಉದಾಹರಣೆಯಾಗಿದೆ. ಅಲ್ಗಾರಿದಮ್ ಆರ್ಬಿಟ್ ಟ್ರ್ಯಾಪ್ಗಳನ್ನು ಸಾಮಾನ್ಯವಾಗಿ ಪುನರಾವರ್ತಿತ ಕಾರ್ಯದ ಆಧಾರದ ಮೇಲೆ ಎರಡು ಆಯಾಮದ ಫ್ರ್ಯಾಕ್ಟಲ್ಗಳ ವರ್ಗದೊಂದಿಗೆ ಬಳಸಲಾಗುತ್ತದೆ. ಪ್ರತಿ ಪಿಕ್ಸೆಲ್ ಅಂತಹ ಫ್ರ್ಯಾಕ್ಟಲ್ ಬಣ್ಣಗಳನ್ನು ಸೃಷ್ಟಿಸುವ ಪ್ರೋಗ್ರಾಂ, ಇದು ಸಂಕೀರ್ಣ ಸಮತಲದಲ್ಲಿ ಪ್ರತ್ಯೇಕ ಬಿಂದುಗಳನ್ನು ಪ್ರತಿನಿಧಿಸುತ್ತದೆ, ಆ ಬಿಂದುಗಳು ಒಂದು ಕಾರ್ಯದ ಮೂಲಕ ನಿಗದಿತ ಸಂಖ್ಯೆಯ ಬಾರಿ ಹಾದುಹೋದಾಗ ಅವುಗಳ ನಡವಳಿಕೆಯ ಆಧಾರದ ಮೇಲೆ. ಈ ರೀತಿಯ ಫ್ರ್ಯಾಕ್ಟಲ್ನ ಅತ್ಯುತ್ತಮ ಉದಾಹರಣೆಯೆಂದರೆ ಮ್ಯಾಂಡೆಲ್ಬ್ರಾಟ್ ಸೆಟ್, ಇದು zn + 1 = zn2 + c ಕಾರ್ಯವನ್ನು ಆಧರಿಸಿದೆ. ಮ್ಯಾಂಡೆಲ್ಬ್ರಾಟ್ ಚಿತ್ರಗಳನ್ನು ಬಣ್ಣ ಮಾಡುವ ಅತ್ಯಂತ ಸಾಮಾನ್ಯ ವಿಧಾನವೆಂದರೆ ಒಂದು ನಿರ್ದಿಷ್ಟ ಬೇಲ್ಔಟ್ ಮೌಲ್ಯವನ್ನು ತಲುಪಲು ಅಗತ್ಯವಾದ ಪುನರಾವರ್ತನೆಗಳ ಸಂಖ್ಯೆಯನ್ನು ತೆಗೆದುಕೊಂಡು ನಂತರ ಆ ಮೌಲ್ಯವನ್ನು ಬಣ್ಣವನ್ನು ನಿಗದಿಪಡಿಸುವುದು. ಇದನ್ನು ಎಸ್ಕೇಪ್ ಟೈಮ್ ಅಲ್ಗಾರಿದಮ್ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ. ಪಾಯಿಂಟ್-ಆಧಾರಿತ ಕಕ್ಷೆಯ ಬಲೆಯನ್ನು ಬಳಸಿಕೊಂಡು ಮ್ಯಾಂಡೆಲ್ಬ್ರೋಟ್ ಸೆಟ್ಗೆ ಬಣ್ಣ ಹಾಕುವ ಪ್ರೋಗ್ರಾಂ ಪ್ರತಿ ಪಿಕ್ಸೆಲ್ಗೆ "ದೂರ" ವೇರಿಯೇಬಲ್ ಅನ್ನು ನಿಗದಿಪಡಿಸುತ್ತದೆ, ಇದು ಮೊದಲು ನಿಗದಿಪಡಿಸಿದಾಗ ಸಾಮಾನ್ಯವಾಗಿ ತುಂಬಾ ಹೆಚ್ಚಾಗಿರುತ್ತದೆಃ ಡಬಲ್ ದೂರ = 10e5 ಪ್ರೋಗ್ರಾಂ ಸಂಕೀರ್ಣ ಮೌಲ್ಯವನ್ನು ಪುನರಾವರ್ತಿತ ಕಾರ್ಯದ ಮೂಲಕ ಹಾದುಹೋಗುವುದರಿಂದ ಅದು ಕಕ್ಷೆಯಲ್ಲಿನ ಪ್ರತಿಯೊಂದು ಬಿಂದು ಮತ್ತು ಬಲೆಯ ಬಿಂದುವಿನ ನಡುವಿನ ಅಂತರವನ್ನು ಪರಿಶೀಲಿಸುತ್ತದೆ. ಅಂತರದ ವೇರಿಯೇಬಲ್ನ ಮೌಲ್ಯವು ಪುನರಾವರ್ತನೆಯ ಸಮಯದಲ್ಲಿ ಕಂಡುಬರುವ ಕಡಿಮೆ ಅಂತರವಾಗಿರುತ್ತದೆಃ ಖಾಸಗಿ ಡಬಲ್ ಗೆಟ್ ಡಿಸ್ಟೆನ್ಸ್ (ಕಾಂಪ್ಲೆಕ್ಸ್ ಸಿ, ಕಾಂಪ್ಲೆಕ್ಸ್ ಪಾಯಿಂಟ್, ಇಂಟ್ ಮ್ಯಾಕ್ಸಿಮೆಟರೇಷನ್) {ಡಬಲ್ ಡಿಸ್ಟೆನ್ಸ್ = 1e20; ಕಾಂಪ್ಲೆಕ್ಸ್ ಝಡ್ = ಹೊಸ ಕಾಂಪ್ಲೆಕ್ಸ್ (0,0); (ಇಂಟ್ ಐ = 0; ಐ <ಮ್ಯಾಕ್ಸಿಮೆಟರೇಷನ್; ಐ + +) {// ಮ್ಯಾಂಡೆಲ್ಬ್ರೊಟ್ ಪುನರಾವರ್ತನೆಯನ್ನು ನಿರ್ವಹಿಸಿ ಝಡ್ = z.multiply (ಝಡ್); ಝಡ್ = z.add (ಸಿ);// ಹೊಸ ದೂರವನ್ನು ಹೊಂದಿಸಿ ಡಿಸ್ಟ್ = ಮಿನಿ (ಡಿಸ್ಟ್, |z-ಪಾಯಿಂಟ್ |) ಕಾಂಪ್ಲೆಕ್ಸ್ ಝ್ ಮಿನಸ್ ಪಾಯಿಂಟ್ = ಹೊಸ ಕಾಂಪ್ಲೆಕ್ಸ್ (ಝಡ್); ಝ್ ಮಿನಸ್ ಪಾಯಿಂಟ್ = zMinusPoint.subtract (ಪಾಯಿಂಟ್); ಡಬಲ್ ಝ್ ಮಿನಸ್ ಪಾಯಿಂಟ್ ಮಾಡ್ಯುಲಸ್ .. ಫ್ರ್ಯಾಕ್ಟಲ್ಗಳು