====== Clone ======
###
Clone(//a//) creates a copy of the object //a//.
The statement $a=b$ for objects creates two variables pointing to the same object. Changing the value of one object changes the value of the other.
###
===== Input =====
* //a// : object of any type
===== Output =====
* //a'// : object of same type as //a// and an exact copy of it.
===== Example a=b =====
###
A small example showing the effect on //b// after changing //a// when //a=b//:
###
==== Input ====
-- some example codedofile("../definitions.Quanty")
Opp2 = Opp1
Opp1.Name = "I'm the name of operator one"
Opp2.Name = "I'm the name of operator two"
print(Opp1.Name)
print(Opp2.Name)
psi2 = psi1
psi1.Name = "I'm the name of psi one"
psi2.Name = "I'm the name of psi two"
print(psi1.Name)
print(psi2.Name)
==== Result ====
I'm the name of operator two
I'm the name of operator two
I'm the name of psi two
I'm the name of psi two
===== Example a=Clone(b) =====
###
A small example showing //a=Clone(b)//:
###
==== Input ====
dofile("../definitions.Quanty")
Opp2 = Clone(Opp1)
Opp1.Name = "I'm the name of operator one"
Opp2.Name = "I'm the name of operator two"
print(Opp1.Name)
print(Opp2.Name)
psi2 = Clone(psi1)
psi1.Name = "I'm the name of psi one"
psi2.Name = "I'm the name of psi two"
print(psi1.Name)
print(psi2.Name)
==== Result ====
I'm the name of operator one
I'm the name of operator two
I'm the name of psi one
I'm the name of psi two
===== Example a=a+b =====
###
A small example showing that operations acting on objects lead to cloning the object:
###
==== Input ====
dofile("../definitions.Quanty")
Opp = Opp1 + Opp2
Opp.Name = "I'm the name of operator Opp and different from Opp1 and Opp2"
print(Opp1.Name)
print(Opp2.Name)
print(Opp.Name)
==== Result ====
Lx
Ly
I'm the name of operator Opp and different from Opp1 and Opp2
===== Table of contents =====
{{indexmenu>.#1}}