A "flop" is an attempt to either fool referees into calling undeserved fouls or fool fans into thinking the referees missed a foul call by exaggerating the effect of contact with an opposing player.
The main factor in determining whether a player committed a flop is whether his physical reaction to contact with another player is inconsistent with what would have been expected given the force or direction of the contact. For example, a player will be considered to have committed a “flop" if he falls to the floor following minimal contact or lunges in a direction different from the direction of the contact.
So here's a problem. The ref has to psychoanalyze the player: Did he try to fool me or didn't he? The ref has to make a series of inferences from the actions of the player to determine whether the player is trying to fool him. Good luck with that. It is a very subjective judgement call, a call that will invariably be dependent upon the "reputation" that the player has for flops, or with the particular history the ref has with a player.
Another problem that I've already wondered about: Does the charging call vary depending upon the mass of the guy taking the charge? So if we really want to get into the physics of it, if IT takes the charge at X newtons of force and reacts by falling down, but Cousins takes the same charge at X newtons of force and takes a minor step back for balance, are they both charges? Or is the charge call literally dependent upon the size of the player taking the charge so that the smaller player has an advantage over a bigger player?