This file is indexed.

/usr/share/lifelines/st/trigtest.ll is in lifelines-reports 3.0.61-2.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
/*
 * @progname       trigtest.ll
 * @version        1.0
 * @author         Matt Emmerton
 * @category
 * @output         Text
 * @description    Tests functionality of trig-related functions.
 *
 * Test trig and spherical distance calculations
 *
 */

options("explicitvars")

proc main()
{
  print("Simple Sine/Cosine/Tangent operations (degree->value)", nl())
  print(nl())

  set(angle1,0)
  set(angle2,45)
  set(angle3a,89.99)
  set(angle3b,90)
  set(angle3c,90.01)
  set(angle4,135)
  set(angle5,180)
  set(angle6,225)
  set(angle7a,269.99)
  set(angle7b,270)
  set(angle7c,270.01)
  set(angle8,315)
  set(angle9,360)

  print("angle\tsin\tcos\ttan", nl())
  print(f(angle1),  "\t", f(sin(angle1)),  "\t", f(cos(angle1)),  "\t", f(tan(angle1)),  nl())
  print(f(angle2),  "\t", f(sin(angle2)),  "\t", f(cos(angle2)),  "\t", f(tan(angle2)),  nl())
  print(f(angle3a), "\t", f(sin(angle3a)), "\t", f(cos(angle3a)), "\t", f(tan(angle3a)), nl())
  print(f(angle3b), "\t", f(sin(angle3b)), "\t", f(cos(angle3b)), "\t", "N/A",           nl())
  print(f(angle3c), "\t", f(sin(angle3c)), "\t", f(cos(angle3c)), "\t", f(tan(angle3c)), nl())
  print(f(angle4),  "\t", f(sin(angle4)),  "\t", f(cos(angle4)),  "\t", f(tan(angle4)),  nl())
  print(f(angle5),  "\t", f(sin(angle5)),  "\t", f(cos(angle5)),  "\t", f(tan(angle5)),  nl())
  print(f(angle6),  "\t", f(sin(angle6)),  "\t", f(cos(angle6)),  "\t", f(tan(angle6)),  nl())
  print(f(angle7a), "\t", f(sin(angle7a)), "\t", f(cos(angle7a)), "\t", f(tan(angle7a)), nl())
  print(f(angle7b), "\t", f(sin(angle7b)), "\t", f(cos(angle7b)), "\t", "N/A",           nl())
  print(f(angle7c), "\t", f(sin(angle7c)), "\t", f(cos(angle7c)), "\t", f(tan(angle7c)), nl())
  print(f(angle8),  "\t", f(sin(angle8)),  "\t", f(cos(angle8)),  "\t", f(tan(angle8)),  nl())
  print(f(angle9),  "\t", f(sin(angle9)),  "\t", f(cos(angle9)),  "\t", f(tan(angle9)),  nl())
  print(nl())

  print("Simple ArcSine/ArcCosine/ArcTangent operations (value->degree)", nl())
  print(nl())

  set(value1,-1)
  set(value2,-0.707)
  set(value3,-0.3535)
  set(value4,0.0)
  set(value5,0.3535)
  set(value6,0.707)
  set(value7,1.0)

  print("value\tarcsin\tarccos\tarctan", nl())
  print(f(value1), "\t", f(arcsin(value1)), "\t", f(arccos(value1)), "\t", f(arctan(value1)), nl())
  print(f(value2), "\t", f(arcsin(value2)), "\t", f(arccos(value2)), "\t", f(arctan(value2)), nl())
  print(f(value3), "\t", f(arcsin(value3)), "\t", f(arccos(value3)), "\t", f(arctan(value3)), nl())
  print(f(value4), "\t", f(arcsin(value4)), "\t", f(arccos(value4)), "\t", f(arctan(value4)), nl())
  print(f(value5), "\t", f(arcsin(value5)), "\t", f(arccos(value5)), "\t", f(arctan(value5)), nl())
  print(f(value6), "\t", f(arcsin(value6)), "\t", f(arccos(value6)), "\t", f(arctan(value6)), nl())
  print(f(value7), "\t", f(arcsin(value7)), "\t", f(arccos(value7)), "\t", f(arctan(value7)), nl())
  print(nl())

  print("Reflexive operations (arcOP(OP(degree)) == degree)", nl())
  print("NOTE: Due to the periodic nature of these functions, output degree values may be",nl())
  print("different than the input degree values.", nl())
  print("NOTE: Due to roundoff, values may be out by a value of one in the least significant place.", nl())
  print(nl())

  print("angle\t\tarcsin(sin)\tarccos(cos)\tarctan(tan)", nl())
  print(f(angle1),   "\t\t", f(arcsin(sin(angle1))),   "\t\t", f(arccos(cos(angle1))),   "\t\t", f(arctan(tan(angle1))),   nl())
  print(f(angle2),   "\t\t", f(arcsin(sin(angle2))),   "\t\t", f(arccos(cos(angle2))),   "\t\t", f(arctan(tan(angle2))),   nl())
  print(f(angle3a),  "\t\t", f(arcsin(sin(angle3a))),  "\t\t", f(arccos(cos(angle3a))),  "\t\t", f(arctan(tan(angle3a))),  nl())
  print(f(angle3c),  "\t\t", f(arcsin(sin(angle3c))),  "\t\t", f(arccos(cos(angle3c))),  "\t\t", f(arctan(tan(angle3c))),  nl())
  print(f(angle4),   "\t\t", f(arcsin(sin(angle4))),   "\t\t", f(arccos(cos(angle4))),   "\t\t", f(arctan(tan(angle4))),   nl())
  print(f(angle5),   "\t\t", f(arcsin(sin(angle5))),   "\t\t", f(arccos(cos(angle5))),   "\t\t", f(arctan(tan(angle5))),   nl())
  print(f(angle6),   "\t\t", f(arcsin(sin(angle6))),   "\t\t", f(arccos(cos(angle6))),   "\t\t", f(arctan(tan(angle6))),   nl())
  print(f(angle7a),  "\t\t", f(arcsin(sin(angle7a))),  "\t\t", f(arccos(cos(angle7a))),  "\t\t", f(arctan(tan(angle7a))),  nl())
  print(f(angle7c),  "\t\t", f(arcsin(sin(angle7c))),  "\t\t", f(arccos(cos(angle7c))),  "\t\t", f(arctan(tan(angle7c))),  nl())
  print(f(angle8),   "\t\t", f(arcsin(sin(angle8))),   "\t\t", f(arccos(cos(angle8))),   "\t\t", f(arctan(tan(angle8))),   nl())
  print(f(angle9),   "\t\t", f(arcsin(sin(angle9))),   "\t\t", f(arccos(cos(angle9))),   "\t\t", f(arctan(tan(angle9))),   nl())
  print(nl())

  print("Decimal Degrees to DMH Conversions", nl())
  print(nl())

  set(deg1,44)
  set(min1,17)
  set(sec1,29)

  dms2deg(deg1,min1,sec1,dec1)
  print(d(deg1), " degrees, ", d(min1), " minutes and ", d(sec1), " seconds = ", f(dec1), " degrees.", nl())

  deg2dms(dec1,deg1,min1,sec1)
  print(f(dec1), " degrees = ", d(deg1), " degrees, ", d(min1), " minutes and ", d(sec1), " seconds.", nl())
  print(nl())

  print("Spherical Distance Calculations", nl())
  print(nl())

  /* 43.410815 / 43^24'38" is my house (lat) */
  set(deg1,43)
  set(min1,24)
  set(sec1,38)
  dms2deg(deg1,min1,sec1,dec1)

  /* -80.508982 / -80^30'32" is my house (lon) */
  set(deg2,-80)
  set(min2,30)
  set(sec2,32)
  dms2deg(deg2,min2,sec2,dec2)

  /* 44.101825 / 44^06'06" is my cottage (lat) */
  set(deg3,44)
  set(min3,06)
  set(sec3,06)
  dms2deg(deg3,min3,sec3,dec3)

  /* -81.721931 / -81^43'18" is my cottage (lon) */
  set(deg4,-81)
  set(min4,43)
  set(sec4,18)
  dms2deg(deg4,min4,sec4,dec4)

  print("House Lat: ", d(deg1), " degrees, ", d(min1), " minutes and ", d(sec1), " seconds = ", f(dec1), " degrees.", nl())
  print("House Lon: ", d(deg2), " degrees, ", d(min2), " minutes and ", d(sec2), " seconds = ", f(dec2), " degrees.", nl())
  print("Cottage Lat: ", d(deg3), " degrees, ", d(min3), " minutes and ", d(sec3), " seconds = ", f(dec3), " degrees.", nl())
  print("Cottage Lon: ", d(deg4), " degrees, ", d(min4), " minutes and ", d(sec4), " seconds = ", f(dec4), " degrees.", nl())

  print("House to Cottage: ", f(spdist(dec1,dec2,dec3,dec4)), nl())
  print("House to Cottage (via roads, suggested by Google Maps: ", f(138.2))
}