Getting two or more column values through a Cursor SQL Server
I think I have a solution for you... but!!! IMPORTANT: You are not considering having more than 1 record in DETAIL that equals the Min Value...
You also are missing the TENSION column in TEST table

Anyway, to answer your question try replacing this:

SELECT @minV=Min(Round(Sqrt(POWER((Abs(lat - @latBegin)),2) + POWER((Abs(long - @longBegin)),2)) * 3958.73926185, 4) * 1000,latitude) over (Partition by rID Order by rID)  
, @temp=temp

        FROM dbo.ExperimentDetails  
            WHERE rid='041'  

        Insert into dbo.Test(rid,lat,lon,min,temp) values   (@rid,@latBegin,@longBegin,@minV,@temp)  


With this:

    SELECT @minV=Min(Round(Sqrt(POWER((Abs(lat - @latBegin)),2) + POWER((Abs(long - @longBegin)),2)) * 3958.73926185, 4) * 1000,latitude) over (Partition by rID) 
    FROM dbo.ExperimentDetails  WHERE rid=@rid  

   Insert into dbo.Test(rid,lat,lon,min,temp,tension) 
   select rid, @latBegin,@longBegin,@minV,temp,tension from  
   dbo.ExperimentDetails  WHERE rid=@rid and Round(Sqrt(POWER((Abs(lat - @latBegin)),2) + POWER((Abs(long - @longBegin)),2)) * 3958.73926185, 4) * 1000,latitude) = @minV 


Good Luck!

---FOR STEP 5 -----

First of all, 
I will assume that you already have created the other table 
let's say: Temp360

So, include another 2 variables in the DECLARE zone...
let's say: @min360 decimal(15,10) and @avgtemp decimal(15,10)

DECLARE @rID int,@latBegin decimal(15,10),@longBegin decimal(15,10),@minV decimal(15,10),@temp decimal(15,10), @min360 decimal(15,10),@avgtemp decimal(15,10)


then use this code inside your cursor loop:

//part 1... what we already know + JUST getting the AvgTemp 

        SELECT @minV=Min(Round(Sqrt(POWER((Abs(lat - @latBegin)),2) + POWER((Abs(long - @longBegin)),2)) * 3958.73926185, 4) * 1000,latitude), @avgtemp = AVG(temp)
        FROM dbo.ExperimentDetails  WHERE rid=@rid  

       Insert into dbo.Test(rid,lat,lon,min,temp,tension) 
       select rid, @latBegin,@longBegin,@minV,temp,tension from  
       dbo.ExperimentDetails  WHERE rid=@rid and Round(Sqrt(POWER((Abs(lat - @latBegin)),2) + POWER((Abs(long - @longBegin)),2)) * 3958.73926185, 4) * 1000,latitude) = @minV 

//part 2... something similar + the Average Temp we already got.

        SELECT @min360=Min(Round(Sqrt(POWER((Abs(lat - @latBegin)),2) + POWER((Abs(long - @longBegin)),2)) * 3958.73926185, 4) * 1000,latitude) over (Partition by rID) 
        FROM dbo.ExperimentDetails  WHERE rid=@rid  and 
Round(Sqrt(POWER((Abs(lat - @latBegin)),2) + POWER((Abs(long - @longBegin)),2)) * 3958.73926185, 4) * 1000,latitude) &gt;=360

       Insert into dbo.Test360(rid,lat,lon,min,avgtemp,tension) 
       select rid, @latBegin,@longBegin,@min360,@avgtemp,tension from  
       dbo.ExperimentDetails  WHERE rid=@rid and Round(Sqrt(POWER((Abs(lat - @latBegin)),2) + POWER((Abs(long - @longBegin)),2)) * 3958.73926185, 4) * 1000,latitude) = @min360