下のソースプログラムをそのままテキストエディタ(メモ帳など)にコピー and ペースト すれば、簡単にコンパイルと実行できる。
(この class file name は tetrah なので、このテキストエディタを "tetrah.java" とセーブしてコンパイルしてほしい。)
ここでは 1 MM = 1 × 10-14 meter という新しい単位を使用している。
このサンプルプログラムでは、実行すると、中心電荷 Z を入力する。
この中心電荷の値から、このプログラムは 正四面体構造の炭素の ポテンシャルエネルギーと 力を計算する。
そして ビリアル定理 ( E = -T = 1/2 V ) を用いて、このプログラムは 1軌道に含まれる ドブロイ波を計算する。
画面上には このドブロイ波の数 (= ほぼ 2.0 ) と、各価電子と 中心の C 原子核との距離が表示される。
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);
}}