What's the difference between 浮かぶ and 浮く?


I often see 浮く in contexts relating to floatability, like:

[code]

    氷は水に浮きます
    
[/code]

However, sometimes I see 浮く used where I'd use 浮かぶ. When should one be used
over the other? Are there any cases where both are acceptable?




浮く to float, float to the surface. 「魚が浮いた」 「泡が浮く」 「木が水に浮く」 「空に浮く」

浮かぶ to be floating at a surface, float with no movement (think of the かぶ like
~ている）。 「氷が浮かぶ」 「白雲が浮かぶ」




浮く to float, float to the surface. 「魚が浮いた」 「泡が浮く」 「木が水に浮く」 「空に浮く」

浮かぶ to be floating at a surface, float with no movement (think of the かぶ like
~ている）。 「氷が浮かぶ」 「白雲が浮かぶ」

