Survey123 for ArcGIS version 1.7 introduced support for more advanced mathematical functions, which can be called in the calculation and constraint columns of a survey question. The table below is a summary of the new mathematical functions.
With these newly supported mathematical functions, sophisticated calculations can be applied to answers in a survey. Here are just a few examples of ways that some of these functions can be incorporated into your survey.
Example 1: The area of a circular plot would be quite hard to measure directly, and without these functions you would likely need to rely on estimations or use a calculator. Now, though, the area can be calculated with this expression automatically by Survey123 for ArcGIS.
round(pi()*pow(${plotRadius},2),2)
Example 2: Say you are putting together a vegetation field survey. You want field users to visit a series of sites, each with 5 plots. You do not need them to sample every plot. Instead, you want them to randomly survey 2 plots in each site. The following screenshot illustrates how using the random and round functions you can make survey123 automatically present the plots to visit to the field user.
round(random()*5+0.5,0)
Looking at the example above closely, you will notice that we use the random function first. This function picks a random number between 0 and 1, which we multiply by 5 to scale the range to five points as needed, then we add point five and round to keep the site number between 1 and 5.
Example 3: I do not intend to describe in detail the next example, but I wanted to share it with you to illustrate the level of complexity that calculations can support. This particular example was generously shared by a Survey123 user during our beta testing for 1.7 and it calculates the water flow within a pipe based on the speed of the water, diameter of the pipe and other variables.
If you want to learn more about how to use Mathematical functions I recommend you have a look at the following:
Try out our new mathematical functions to make your survey form smarter!