A computer-implemented method for generating an atmospheric model using one or more pressure-sensing mobile devices, each mobile device having a pressure sensor and a position-determining subsystem, the method comprising: - collecting (300; 360), by the one or more mobile devices, pressure data and location data at each of a plurality of locations, the location data including altitude data, the pressure data and location data being collected at the plurality of locations by one mobile device which moves around to the plural locations to collect the pressure readings or by a plurality of mobile devices located at the plurality of locations; and - generating (310; 372), by the one or more mobile devices or a server or server cluster operating in connection with the one or more mobile devices, an atmospheric model based on the pressure data and location data collected at the plurality of locations; wherein said collecting pressure data and location data for the respective locations comprises the substeps of: - determining an Above Mean Sea Level (AMSL) altitude using the position-determining subsystem and - determining a pressure altitude using the pressure sensor; said collecting pressure data and location data further comprises: - pre-filtering AMSL altitude measurements based on accuracy and time consistency with pressure changes; and said generating the atmospheric model comprises: - calculating or estimating a difference between the pressure altitude and the AMSL altitude; - performing a linear regression on an equation AMSL altitude = offset + scale factor * pressure altitude to solve for the offset and the scale factor; and - calculating a temperature at sea level based on the AMSL altitude and the pressure altitude, wherein the temperature T at sea level is calculated based on the equation 1 - scale factor = (T - 15)/3; and wherein the atmospheric model for pressure is generated based on the AMSL altitude and a temperature at altitude using a given lapse rate. - collecting (300; 360), by the one or more mobile devices, pressure data and location data at each of a plurality of locations, the location data including altitude data, the pressure data and location data being collected at the plurality of locations by one mobile device which moves around to the plural locations to collect the pressure readings or by a plurality of mobile devices located at the plurality of locations; and - generating (310; 372), by the one or more mobile devices or a server or server cluster operating in connection with the one or more mobile devices, an atmospheric model based on the pressure data and location data collected at the plurality of locations; wherein - determining an Above Mean Sea Level (AMSL) altitude using the position-determining subsystem and - determining a pressure altitude using the pressure sensor; - pre-filtering AMSL altitude measurements based on accuracy and time consistency with pressure changes; and - calculating or estimating a difference between the pressure altitude and the AMSL altitude; - performing a linear regression on an equation AMSL altitude = offset + scale factor * pressure altitude - calculating a temperature at sea level based on the AMSL altitude and the pressure altitude, wherein the temperature T at sea level is calculated based on the equation 1 - scale factor = (T - 15)/3; and