The Sri Lankan government has been heavily criticised for an artillery bombardment that killed dozens of civilians in the east of the island.
The attack has outraged Tamils
Peace negotiator Erik Solheim said he was "very troubled" by the attack. Human rights group Amnesty International called it "appalling".
Some 2,000 people were in a camp hit by army shells. Clashes between troops and Tamil rebels have trapped thousands.
Meanwhile, a fierce sea battle has been going on off Sri Lanka's north coast.
Both sides accuse the other of starting the clash, in which the navy says it sank 22 rebel craft and lost two of its own. Twenty sailors are missing.
The rebels say they captured four sailors alive and five of their fighters were killed.
'So many dead and wounded'
Mr Solheim accused government forces of an "onslaught" in Vakarai, where the refugee camp was shelled on Wednesday.
"Yet again it is civilians who are being killed and made to suffer due to military operations," he said in a statement.
"I am extremely disappointed that the parties are not honouring the promises they made in Geneva a week and a half ago to refrain from launching any military offensives."
Thousands have been trying to flee the shelling in the eastern district of Batticaloa.
But the BBC's Dumeetha Luthra in Colombo says they have nowhere to go as the lines from the Tamil Tiger-controlled areas into government territory are closed.
Aid agencies are working on creating a humanitarian corridor, but the government has so far failed to provide any safety assurance to allow supply convoys safe passage, she says.
The school being used as a makeshift camp shelled on Wednesday was hit by the army in a heavy exchange of fire with the Tamil Tigers in rebel-held territory.
The rebels say at least 45 civilians were killed on the spot - three more died later of their injuries.
A number of children were among the wounded
Government defence spokesman Keheliya Rambukwella told the AFP news agency that the military had targeted two Tamil Tiger artillery positions, but conceded a civilian centre had also been hit.
"While we regret this whole episode, we also must say that national security is uppermost in our minds," he told reporters.
Mr Rambukwella said the government would investigate the incident, but said the army was responding to an earlier Tamil Tiger attack and accused the rebels of using civilians as human shields.
International truce monitors who have visited the scene described total panic as tens of thousands of people try to leave the area.
Two hospitals have received more than 100 casualties, including at least 17 children.
"There were a lot of explosions, so many people dead and wounded," 29-year-old survivor Palachchenai Kadiraveli told the Reuters news agency.
"A lot of children died... there are thousands of people trying to leave."
Call for answers
The Sri Lanka Monitoring Mission (SLMM) estimates that about 35,000 people have been displaced by fighting in the region which flared up in August.
"Our monitors saw there were no military installations in the camp area, so we would certainly like some answers from the military regarding the nature and reasons of this attack," SLMM spokeswoman Helen Olafsdottir said.
The human rights group, Amnesty International, said: "It is appalling that the military should attack a camp for displaced people - these are civilians who have already been forced from their homes because of the conflict."
The government says nearly 3,000 people - troops, rebels and civilians - have been killed in violence since last year. There is no reliable independent confirmation of that figure.
Correspondents say a 2002 ceasefire now exists only in name.