LDM
Lentilles / Dioptres / Miroirs


Joseph Hormière
(programme écrit en 1997)

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

   Position éléments cardinaux

En faisant : DEL (pour effacer l'écran) 100 +/- ENTER SYS1 CALC, on trouve dans X et GY les résultats suivants :

   Position objet, image intermédiaire, image finale    Grandissements intermédiaires

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

    Position éléments cardinaux

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

   Position éléments cardinaux 

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).


Retour au Menu