 	gpu_pdata_arrays pdata,
 	gpu_boxsize box,
 	gpu_nlist_array nlist,
-	float2 *d_coeffs,
-	float* electronDensity,
-	float* pairPotential,
-	float* embeddingFunction,
-	float* derivativeElectronDensity,
-	float* derivativePairPotential,
-	float* derivativeEmbeddingFunction,
-	float* atomDerivativeEmbeddingFunction,
-	EAMData eam_data)
+	float2 *d_coeffs)
 	{
 		// read in the coefficients
 	extern __shared__ float2 s_coeffs[];

	cudaError_t error = cudaBindTexture(0, pdata_pos_tex, pdata.pos, sizeof(float4) * pdata.N);
	if (error != cudaSuccess)
		return error;

    gpu_compute_eam_forces_kernel<<< grid, threads, sizeof(float2)*coeff_width*coeff_width >>>(force_data,
	pdata,
	box,
	nlist,
	d_coeffs,
	eam_arrays.electronDensity,
	eam_arrays.pairPotential,
	eam_arrays.embeddingFunction,
	eam_arrays.derivativeElectronDensity,
	eam_arrays.derivativePairPotential,
	eam_arrays.derivativeEmbeddingFunction,
	eam_arrays.atomDerivativeEmbeddingFunction,
	eam_data);

	cudaThreadSynchronize();


	pdata,
	box,
	nlist,
	d_coeffs);
	if (!g_gpu_error_checking)
		{
		return cudaSuccess;
