Файл:Fubini Nightmare foliation Katok example.svg

Материал из testwiki
Перейти к навигации Перейти к поиску
Исходный файл (SVG-файл, номинально 720 × 720 пкс, размер файла: 1,62 МБ)

Этот файл находится на Викискладе и может использоваться другими проектами. Информация с его страницы описания приведена ниже.

Краткое описание

Описание
English: Fubini Nighmare foliation example due to Katok
Русский: Кошмар Фубини, конструкция Катка
Дата
Источник

Собственная работа Actually, I've used C++-program to produce Asymptote source. See ru:Кошмар Фубини (Russian) for details on the algorithm. I hereby release the following source code into the public domain.

You have to do the following in order to produce an svg file (assuming the file above is saved as 'fubini.C'):

g++ fubini.C -o fubini
./fubini > fubini.asy # prepare a cup of coffee here. it's a long calculations with default options
asy fubini.asy
pstoedit fubini.eps fubini.svg
Автор Ilya Voyager
SVG‑разработка
InfoField
 Исходный код этого SVG-файла корректен.
 Это векторное изображение было создано с помощью Asymptote
Исходный код
InfoField

Asymptote code

#include <iostream>
#include <math.h>
#include <vector>
#include <time.h>
#include <stdlib.h>
#include <assert.h>

using namespace std;
double F(double p, vector<int> a, int N)
{
	assert(p>0 && p<1);
	int i;
	double x=0;
	double q=1-p;
	for(i=0;i<N;i++)
	{
		if(a[i]==1)
		{
			x+=q;
			q*=p;
		}
		else
		{
			q*=(1-p);
		}
	}
	return x;
}

main()
{
	srand(time(NULL));
	vector<int> a;
	double prec=2E-3;
	int N=int(1/(prec*prec));
	int exp=500;
	int i,j;
	double p;
	bool first=true;
	cout << "import graph;\nimport math;\nimport fontsize;\nunitsize(7inch);\ndefaultpen(0.45mm);\n" << endl;
	for(i=0;i<exp;i++)
	{
		a.clear();
		for(j=0;j<N;j++)
		{
			a.push_back(rand()%2);
		}
		first=true;
		for(p=2*prec;p<1-2*prec;p+=prec)
		{
			if(first)
			{
				cout << "draw(";
				first=false;
			}
			else
			{
				cout << "--";
			}
			cout << "(" << p << "," << F(p,a,N) << ")" ;
		}
		cout << ");" << endl;
	}
	cout << "xaxis(\"$p$\",BottomTop,fontsize(48));\nyaxis(\"$x$\",LeftRight,fontsize(48));" << endl;
}

Лицензирование

Public domain Я, владелец авторских прав на это произведение, передаю его в общественное достояние. Это разрешение действует по всему миру.
В некоторых странах это не может быть возможно юридически, в таком случае:
Я даю право кому угодно использовать данное произведение в любых целях без каких-либо условий, за исключением таких условий, которые требуются по закону.
Creative Commons CC-Zero Этот файл доступен на условиях Creative Commons CC0 1.0 Универсальной передачи в общественное достояние (Universal Public Domain Dedication).
Лица, связанные с работой над этим произведением, решили передать данное произведение в общественное достояние, отказавшись от всех прав на произведение по всему миру в рамках закона об авторских правах (а также связанных и смежных прав), в той степени, которую допускает закон. Вы можете копировать, изменять, распространять и исполнять данное произведение в любых целях, в том числе в коммерческих, без получения на это разрешения автора.

Краткие подписи

Добавьте однострочное описание того, что собой представляет этот файл

Элементы, изображённые на этом файле

изображённый объект

История файла

Нажмите на дату/время, чтобы увидеть версию файла от того времени.

Дата/времяМиниатюраРазмерыУчастникПримечание
текущий22:43, 11 июля 2009Миниатюра для версии от 22:43, 11 июля 2009720 × 720 (1,62 МБ)wikimediacommons>Ilya Voyagersizes fixed

Следующая страница использует этот файл: