summaryrefslogtreecommitdiff
path: root/src/3rdparty/proj/pj_qsfn.c
blob: ccb12308095930f773ec8aee708069c18c463455 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/* determine small q */
#include <math.h>
#include <projects.h>

# define EPSILON 1.0e-7
	double
pj_qsfn(double sinphi, double e, double one_es) {
	double con;

	if (e >= EPSILON) {
		con = e * sinphi;
		return (one_es * (sinphi / (1. - con * con) -
		   (.5 / e) * log ((1. - con) / (1. + con))));
	} else
		return (sinphi + sinphi);
}