Nom | n LDM : DEFS, INVS, PCX, CALC ; D, DIV0, I, O, R, S, T, U, W, Z |
Contenu | Calcul des éléments cardinaux d'une association de lentilles minces, dioptres et miroirs. Recherche des positions des images et des grandissements associés. |
Mode d'emploi |
Conventions : Sens positif = sens de la lumière incidente. Dans le cas des miroirs et des systèmes catadioptriques, les distances changent de signe quand la lumière change de sens, de même les distances focales des lentilles minces, mais les rayons de courbure des dioptres restent invariants. Commencer par DEFS (DEFinition du Système), un menu apparaît ; il faut sélectionner un composant : LM, lentille mince DS, dioptre sphérique DP, dioptre plan MS, miroir sphérique MP, miroir plan, puis entrer les valeurs demandées (distance, indice, rayon de courbure, focale). Pour le premier composant, la distance est généralement choisie égale à 0. Ensuite, c'est la distance qui sépare le composant du composant précédent. Quand le système a été entièrement défini, sélectionner NON dans le menu. A ce moment, les données se trouvent stockées sous forme de listes dans SYS1, pour le système initial, et SYS2, pour le système inversé. Il est donc possible de modifier les données (attention ! l'ordre des composants est inversé dans SYS2 par rapport à SYS1) : si on modifie uniquement SYS1, il faudra effectuer INVS pour modifier SYS2. Le calcul des points cardinaux et des focales est obtenu par PCX (Points CardinauX). Pour obtenir les images successives d'un objet, faire : x (abscisse de l'objet par rapport au premier composant) ENTER SYS1 (recherche d'une image) ou SYS2 (recherche d'un objet) CALC X donne la liste des positions des images successives, GY donne la liste des grandissements transversaux successifs, XT donne la position de l'image finale, GYT donne le grandissement transversal total. |
Bytes |
DEFS (# 6F19h 603.5) INVS (# A39Eh 236) PCX(# 8D31h 266.5) CALC(# CEE6h 350.5) D (# 154Fh 35) DIV0(# 5FF0h 54) I (# F827h 39) O(# 388Dh 39) R(# C2B3h 44) S (# 7539h 30) T(# 4DDAh 109.5) U(# 8D45h 66) W (# 526Fh 102.5) Z(# A7Dh 27.5) |
Programme |
DEFS << RCLMENU { } 'SYS1' STO WHILE CLLCD " Ajouter lentille mince : LM dioptre : DS ou DP miroir : MS ou MP" 3 DISP { "LM" "DS" "DP" "MS" "MP" "NON" } TMENU WHILE -1 WAIT IP { 11 12 13 14 15 16 } OVER POS NOT REPEAT DROP END DUP 16 ¹ REPEAT ® c << CASE c 11 = = THEN D "Focale ?" S 2 END c 12 = = THEN D R O I 4 END c 13 = = THEN D 1.E12 O I 4 END c 14 = = THEN D R 1 -1 4 END c 15 = = THEN D 1.E12 1 -1 4 END END >> ® LIST 1® LIST 'SYS1' SWAP STO+ END DROP MENU INVS >> INVS << SYS1 SIZE ® k << 1 k FOR j SYS1 j GET HEAD NEXT k ROLL 1 k FOR j SYS1 j GET TAIL IF OBJ® 3 = = THEN SWAP ROT NEG ROT ROT 3 ELSE 1 END ® LIST NEXT 1 k FOR j k 2 * PICK k 1 + PICK + NEXT k ® LIST REVLIST 'SYS2' STO CLEAR >> >> PCX << SYS1 T SYS2 T 4 ROLL DUP2 SWAP - 5 ROLL NEG 5 ROLL NEG DUP2 SWAP - 1 6 FOR j W 6 ROLL NEXT 6 ® LIST {" f' = " " SkF' = " " SkH' = " " f = " " S1F = " " S1H = " } SWAP << + >> DOLIST OBJ ® DROP 1 6 FOR j 6 ROLL DUP j DISP NEXT "" 7 DISP 7 FREEZE >> CALC << ® x0 s << x0 1 ® LIST 'X' STO { } 'GY' STO s 1 DO GETI IF OBJ ® 2 = = THEN Z ROT - DUP DIV0 INV ROT DIV0 INV + DIV0 INV DUP ROT DIV0 / ELSE Z 5 ROLL - ROT ROT / ROT OVER NEG 1 + SWAP / SWAP ROT DIV0 / DUP ROT + INV DUP ROT * END 'GY' SWAP STO+ 'X' SWAP STO+ UNTIL -64 FS? END GY { 1 } + P LIST 'GYT' STO Z 'XT' STO DROP2 >> >> D << "Distance ?" S >> DIV0 << DUP IF 0 = = THEN .000000001 SWAP DROP END >> I << "Indice image ?" S >> O << "Indice objet ?" S >> R << "Rayon de courbure ?" S >> S << { V } INPUT OBJ® >> T << 'SY' STO -1.E18 SY CALC XT GY { 1 1 } + TAIL P LIST SY U 'SY' PURGE >> U << HEAD OBJ® IF 4 = = THEN / DUP 1 - / * NEG END SWAP DROP * >> W << DUP DUP CASE ABS .000001 < THEN 0 3 ROLLD DROP2 END ABS 1000000 > THEN "¥" SWAP DROP END END >> Z << X DUP SIZE GET >> |
Commentaires | Ce programme est inspiré du travail de H.Canon, A.Ramboux & Loïc Fieux dans "HP48 physique-chimie en prépa" édité chez Dunod (1994). J'ai supprimé la représentation graphique qui apporte peu, vu la faible résolution de l'écran, pour mieux préciser les entrées de données et calculer, en plus des images, les points cardinaux du système. |
Exemples |
1. Doublet de lentilles minces : f '1 = 30 mm ; e = 20 mm ; f '2 = 30 mm DEFS LM 0 ENTER 30 ENTER LM 20 ENTER 30 ENTER NON INVS PCX En faisant : DEL (pour effacer l'écran) 100 +/- ENTER SYS1 CALC, on trouve dans X et GY les résultats suivants : XT contient la position de l'image finale : S2A' = 12.972... GYT contient le grandissement total : gy (A, A' ) = gy (A, A1).gy (A1, A' ) = - 0.243 2. Lentille mince L, de focale 50 mm, associée à un dioptre plan air / eau placé à 20 mm de L DEFS LM 0 ENTER 50 ENTER DP 1 ENTER 1.3333 ENTER NON PCX 3. Bille de verre de rayon 10 mm, d'indices 1 / 1,5 argentée sur son dioptre arrière. DEFS DS 0 ENTER 10 ENTER 1 ENTER 1.5 ENTER MS 20 ENTER -10 ENTER DS -20 ENTER 10 ENTER 1.5 ENTER 1 ENTER NON PCX Le sens positif est celui de la lumière incidente (cf. convention précisée au début). Ainsi, quand la lumière traverse le dioptre "à l'envers", la distance miroir-dioptre est négative (DS -20 ENTER 10 ENTER), mais le rayon de courbure du dioptre reste positif (DS -20 ENTER 10 ENTER). |