Finite-difference frequency-domain. Make a 3D grid. Write discrete
approximations for the differential operators using these grid points.
This gives you a large number of linear equations. Your boundary
conditions will give you more equations. Solve your linear system.
Finite-difference time-domain. Make 3D grid, set up initial conditions,
find time derivatives from spatial derivatives, step forward in time.
Probably some boundary condition drives the system at every point in time.
Expansion in wavefunctions. Write a general solution for the Helmholtz eqn
in the coordinate system of your choice. Approximate this by a finite
subset of this solution. Expansion coeeficients are the unknowns you need
to find. Choose a sufficiently large set of points where boundary
conditions are specified, write equations for fields at these points. This
gives you a linear system. Solve it. Works best if the linear system is
overdetermined.
Approximate the 3D Helmholtz equation. For example, paraxial
approximation.
Lots of methods. Which methods are usable depends on the specific problem.
--
Timo Nieminen - Home page: http://www.physics.uq.edu.au/people/nieminen/
Shrine to Spirits: http://www.users.bigpond.com/timo_nieminen/spirits.html
Anyway, feel free to give more details. Can't make any really useful
suggestions without more information.