 	float pairForce = 0.0f;
 	float virial = 0.0f;
 	force.w = force_data.force[idx].w;
-	int nr = eam_data.nr;
-	int nrho = eam_data.nrho;
-	int ntypes = eam_data.ntypes;
+	int nr = eam_data_ti.nr;
+	int nrho = eam_data_ti.nrho;
+	int ntypes = eam_data_ti.ntypes;
 	float adef = atomDerivativeEmbeddingFunction[idx];
 	for (int neigh_idx = 0; neigh_idx < n_neigh; neigh_idx++)
 		{

//texture<float, 1, cudaReadModeElementType> derivativePairPotential_tex;
texture<float, 1, cudaReadModeElementType> derivativeEmbeddingFunction_tex;
texture<float, 1, cudaReadModeElementType> atomDerivativeEmbeddingFunction_tex;
__constant__ EAMTexInterData eam_data;

extern "C" __global__ void gpu_compute_eam_tex_inter_forces_kernel(
	gpu_force_data_arrays force_data,

	// loop over neighbors

	float atomElectronDensity  = 0.0f;
	int nr = eam_data_ti.nr;
	int nrho = eam_data_ti.nrho;
	int ntypes = eam_data_ti.ntypes;
	float m_pe = 0.0f;
	for (int neigh_idx = 0; neigh_idx < n_neigh; neigh_idx++)
		{
