[PATCH 3/3] gas pressures: use an actual compressibility table for air

Dirk Hohndel dirk at hohndel.org
Wed Feb 24 15:43:19 PST 2016


On Wed, Feb 24, 2016 at 01:28:06PM -0800, Linus Torvalds wrote:
> -	double bar = pressure.mbar / 1000.0;
> +#define ARRAY_SIZE(array) (sizeof(array)/sizeof(array[0]))
> +double gas_compressibility_factor(struct gasmix *gas, double bar)
> +{
> +	static const struct z_factor {
> +		double bar, z_factor;
> +	} air_table[] = {
> +		{   1, 0.9999 },
> +		{   5, 0.9987 },
> +		{  10, 0.9974 },
> +		{  20, 0.9950 },
> +		{  40, 0.9917 },
> +		{  60, 0.9901 },
> +		{  80, 0.9903 },
> +		{ 100, 0.9930 },
> +		{ 150, 1.0074 },

So I noticed this in the earlier email that you sent on the topic but
since I'm traveling and rather busy I didn't get around to comment.

But this bothers me. from 60 to 80 to 100 bar the z_factor goes UP!
That just seems wrong. Maybe there's something in the physics that I don't
get that makes this a magic range, but still... this at least needs an
explanation.

/D


More information about the subsurface mailing list