 
 	real3 absOmega = Calc_ANCF_Point_Omega(ANCF_NodesVelD, ANCF_SlopesVelD, indexOfClosestNode, sE, lE, rX); //interpolation using ANCF beam, cubic hermit equation
 		//ff1
-	//	velMasD[absMarkerIndex] = R4(beamPointVel + cross(absOmega, dist3), markerMass);
-		velMasD[absMarkerIndex] = R4(beamPointVel, markerMass);
+	//	velMasD[absMarkerIndex] = R4(beamPointVel + cross(absOmega, dist3), markerMass); //wrong
+	velMasD[absMarkerIndex] = R4(beamPointVel, markerMass);
 }
 ////--------------------------------------------------------------------------------------------------------------------------------
 void MakeRigidIdentifier(

	CUT_CHECK_ERROR("Kernel execution failed: UpdateKernelRigid");

	LF_totalTorqueOfAcc3.clear();
	//################################################### update rigid body things
	//** "posRadD2"/"velMasD2" associated to BCE markers are updated based on new rigid body (position, orientation)/(velocity, angular velocity)
	UpdateRigidMarkersPosition<<<nBlocks_numRigid_SphMarkers, nThreads_SphMarkers>>>(
			R3CAST(posRadD2), R4CAST(velMasD2),

	}
	cudaMemcpyToSymbolAsync(dTD, &dT, sizeof(dT));

	//################################################### make force arrays
	int numFlBcRigid = 2 + numRigidBodies;
	int2 totalNumberOfFlexNodes2 = ANCF_ReferenceArrayNodesOnBeamsD[ANCF_ReferenceArrayNodesOnBeamsD.size() - 1];
	int totalNumberOfFlexNodes = totalNumberOfFlexNodes2.y;
	int totalNumberOfFlexBCEMultNodes = flexMapEachMarkerOnAllBeamNodesD.size();

	thrust::device_vector<real3> flex_FSI_NodesForces1(totalNumberOfFlexNodes);
	thrust::device_vector<real3> flex_FSI_NodesForces2(totalNumberOfFlexNodes);
	thrust::fill(flex_FSI_NodesForces1.begin(), flex_FSI_NodesForces1.end(),R3(0));
	thrust::fill(flex_FSI_NodesForces2.begin(), flex_FSI_NodesForces2.end(),R3(0));

	//**
	thrust::device_vector<real3> flexNodesForcesAllMarkers1(totalNumberOfFlexBCEMultNodes);
	thrust::device_vector<real3> flexNodesForcesAllMarkers2(totalNumberOfFlexBCEMultNodes);

	uint nBlocks_numFlex_SphMarkers;
	uint nThreads_SphMarkers;
	computeGridSize(numFlex_SphMarkers, 256, nBlocks_numFlex_SphMarkers, nThreads_SphMarkers);
	//** maps each BCE marker FORCE onto all beam nodes. Does not sum them up, writes them next to each other. Assumes the BCE forces
	//*** at the beam center line. "flexNodesForcesAllMarkers1" and "flexNodesForcesAllMarkers1" are built.
	MapForcesOnNodes<<<nBlocks_numFlex_SphMarkers, nThreads_SphMarkers>>>(
			R3CAST(flexNodesForcesAllMarkers1),
			R3CAST(flexNodesForcesAllMarkers2),
