Sample JAVA program of Carbon de Broglie waves.

Top page (correct Bohr model including helium).
Back to molecular bond page.

If you copy and paste the program source code below into a text editor, you can easily compile and run this.
(This class file name is tetrah, so save this text editor as "tetrah.java", and compile it.)
Here we use the new unit of 1 MM = 1 × 10-14 meter.

In this program, first we input central charge Z.
From this central charge, this program compute potential energies and force of tetrahedral carbon.
And using Virial theorem ( E = -T = 1/2 V ), this program calculate de Broglie wave in one orbit
In the screen, this de Broglie wave's number (= almost 2.0 ), and the distance between each valence electron and the central C nucleus are shown.


import java.util.Scanner;
class tetrah {
 public static void main(String[] args) {
 
 Scanner stdIn=new Scanner(System.in);   
 System.out.println("central charge Z ?  ");  
 double Z=stdIn.nextDouble(); 

 double E = 148.024 ;  // E = sum of 1-4 ionization energy of carbon  
 double me=9.1093826e-31; 
 double pai=3.141592653589793; double epsi=8.85418781787346e-12;
 double h=6.62606896e-34; double ele=1.60217653e-19; 

 double ke=(ele*ele)/(4.0*pai*epsi);

 double poten = -2.0 * E * 1.602177e-19;  // poten = potential energy (eV)

                                     // 2r=one side length of tetrahedron
 double r =(ke/poten) * (-(8.0*Z)/Math.sqrt(6.0) + 3.0);  
                                
 double kinetic=-0.5*poten;       // kinetic = total kinetic energy ( Virial )
 double velo=Math.sqrt((kinetic)/(2.0*me));  // velo = electron's velocity (m/s) 

                                 // F = total force acting on one electron
 double F = (ke/(r*r))*(Z*2.0/3.0 - Math.sqrt(6.0)/4.0  );

 double dia=r*Math.sqrt(6)/2.0;  // dia = distance between center and electron
 dia=dia*1.0e14;

 double radius=(me*velo*velo)/F; // rotation radius from centrifugal force
 double debroglie = h/(me*velo);       // de Broglie wavelength of electron
 double wave=(2*pai*radius)/debroglie;  // wave's number in one orbit

 
 System.out.printf("distance between center and electron = %.2f ", dia);
 System.out.printf(" de Broglie wave: %.3f \n", wave);
  
 }}