diff --git a/wetb/hawc2/at_time_file.py b/wetb/hawc2/at_time_file.py
index 642225edc668e5292e63f7cefb38c4b14c36f41d..10ed8583dd11b1bb280db37a1aa216d43bfcbde1 100644
--- a/wetb/hawc2/at_time_file.py
+++ b/wetb/hawc2/at_time_file.py
@@ -15,6 +15,8 @@ standard_library.install_aliases()
 import numpy as np
 class AtTimeFile(object):
     """Loads an at time file generated by HAWC2
+    
+    Note that the radius in this context is the curved radius
 
     >>> atfile = AtTimeFile("at_time.dat") # load file
     >>> atfile.attribute_names # Attribute names
@@ -23,27 +25,34 @@ class AtTimeFile(object):
     [ 0.       -0.775186 -2.91652 ]
     >>> atfile.twist()[:3]) # first 3 twist rows
     [ 0.       -0.775186 -2.91652 ]
-    >>> atfile.twist(10) # Twist at radius = 10 (interpolated)
+    >>> atfile.twist(curved_length=10) # Twist at curved_length = 10 (interpolated)
+    -5.34743208242399
+    >>> atfile.twist(radius=10) # Twist at curved_length = 10 (interpolated)
     -5.34743208242399
     """
-    def __init__(self, filename):
+    def __init__(self, filename, blade_radius=None):
+        self.blade_radius = blade_radius
         with open(filename, encoding='utf-8') as fid:
             lines = fid.readlines()
         self.attribute_names = lines[2].lower().replace("#", "").split()
         data = np.array([[float(l) for l in lines[i].split() ] for i in range(3, len(lines))])
         self.data = data
         def func_factory(column):
-            def values(radius=None):
-                if radius is None:
+            def values(radius=None, curved_length=None):
+                assert radius is None or curved_length is None, "Specify either radius or curved_length"
+                if radius is None and curved_length is None:
                     return self.data[:, column]
+                elif radius is not None:
+                    assert self.blade_radius is not None, "blade_radius must be specified in __init__ when requesting value of radius (alternatively you can request for curved_length)"
+                    return np.interp(radius/self.blade_radius, self.data[:, 0]/self.data[-1, 0], self.data[:, column])
                 else:
-                    return np.interp(radius, self.data[:, 0], self.data[:, column])
+                    return np.interp(curved_length, self.data[:, 0], self.data[:, column])
             return values
         for column, att_name in enumerate(self.attribute_names):
             setattr(self, att_name, func_factory(column))
 
-    def curved_radius(self, radius=None):
-        """Radius of calculation point(s)
+    def ac_radius(self, radius=None):
+        """Radius (curved distance) of aerodynamic calculation point(s) 
 
         Parameters
         ----------
diff --git a/wetb/hawc2/tests/test_AtTimeFile.py b/wetb/hawc2/tests/test_AtTimeFile.py
index b132016386a8e63c4b1e2d694e07a2dc55958599..6f17562bab8741498c04106893e0541d9f50a17f 100644
--- a/wetb/hawc2/tests/test_AtTimeFile.py
+++ b/wetb/hawc2/tests/test_AtTimeFile.py
@@ -24,11 +24,12 @@ class TestAtTimeFile(unittest.TestCase):
 
 
     def test_doc_examples(self):
-        atfile = AtTimeFile(self.testfilepath + "at_time.dat")  # load file
+        atfile = AtTimeFile(self.testfilepath + "at_time.dat", blade_radius=20.501)  # load file
         self.assertEqual(atfile.attribute_names, ['radius_s', 'twist', 'chord'])
         np.testing.assert_array_equal(atfile[:3, 1], [ 0., -0.775186, -2.91652 ])
         np.testing.assert_array_equal(atfile.twist()[:3], [ 0. , -0.775186 , -2.91652 ])
-        self.assertEqual(atfile.twist(10), -5.34743208242399)  # Twist at radius = 10 (interpolated)
+        self.assertAlmostEqual(atfile.twist(radius=10), -5.34743208242399)  # Twist at radius = 10 (interpolated)
+        self.assertEqual(atfile.twist(curved_length=10), -5.34743208242399)  # Twist at radius = 10 (interpolated)
 
 
 
@@ -40,18 +41,24 @@ class TestAtTimeFile(unittest.TestCase):
         self.assertEqual(atfile.chord()[9], 1.54999)
 
 
-    def test_at_time_file_at_radius(self):
+    def test_at_time_file_at_curved_radius(self):
         atfile = AtTimeFile(self.testfilepath + "at_time.dat")
-        self.assertEqual(atfile.radius_s(9), 9)
-        self.assertEqual(atfile.twist(9), -6.635983309665461)
-        self.assertEqual(atfile.chord(9), 1.3888996578373045)
+        self.assertEqual(atfile.radius_s(curved_length=9), 9)
+        self.assertEqual(atfile.twist(curved_length=9), -6.635983309665461)
+        self.assertEqual(atfile.chord(curved_length=9), 1.3888996578373045)
+
+    def test_at_time_file_at_radius(self):
+        atfile = AtTimeFile(self.testfilepath + "at_time.dat", blade_radius=20.501/2)
+        self.assertEqual(atfile.radius_s(radius=9/2), 9)
+        self.assertEqual(atfile.twist(radius=9/2), -6.635983309665461)
+        self.assertEqual(atfile.chord(radius=9/2), 1.3888996578373045)
 
 
     def test_at_time_file_radius(self):
         atfile = AtTimeFile(self.testfilepath + "at_time.dat")
-        self.assertEqual(atfile.curved_radius()[12], 10.2505)
-        self.assertEqual(atfile.curved_radius(10), 10.2505)
-        self.assertEqual(atfile.curved_radius(10.5), 10.2505)
+        self.assertEqual(atfile.ac_radius()[12], 10.2505)
+        self.assertEqual(atfile.ac_radius(10), 10.2505)
+        self.assertEqual(atfile.ac_radius(10.5), 10.2505)
 
 if __name__ == "__main__":
     #import sys;sys.argv = ['', 'Test.testName']