문제

우리가 개발하고있는 게임을 최적화하면서, 우리는 모든 CPU 사이클이 원한 단계에 달려 있습니다. 우리는 다른 객체 주위를 돌고있는 물체의 위치 계산에 라디안을 사용하고 조회 테이블에서 불필요한 정확도를 줄이고 싶습니다. 이를 위해, 우리는 사전 정의 된 PI를 많이 사용합니다. 이 pi는 얼마나 정확해야합니까?

그래서 내 질문은 다음과 같습니다.

  • 얼마나 정확한가?
  • 또는 더 나은 필요한 정확도를 결정하는 방법은 무엇입니까?
도움이 되었습니까?

해결책

당신은 당신이 저장할 수있는 부동산 지점만큼 정확하게 만들 수 있습니다. 동일한 유형의보다 정확한 부동 소수점 수를 사용하여 계산을 수행하는 데 더 오래 걸리지 않습니다.

정확도는 일반적으로 유의 한 숫자의 수로 측정됩니다. 관심있는 정확도의 숫자 수를 스스로 결정해야합니다. PI에 덜 정확한 값을 사용하면 해당 값의 부정확성이 다른 계산으로 전파됩니다.

다른 팁

비교로 : NASA는 우주에 도킹 할 수 있도록 7 가지 소수의 정확도로 PI를 사용한다고 생각합니다.

우선 위치 계산이 얼마나 정확한 지 확인해야합니다. 즉, PI에 의존하는 프로그램의 공식이 얼마나 정확한지를 결정해야합니다. 우리는 이것을 달성하기 위해 얼마나 정확한 PI가 필요한지 알기 위해 거기서 시작해야합니다.

결정된 후에는 PI에 얼마나 좋은 정확도가 필요한지를 결정하기 위해 다소 간단한 수치 분석을 사용할 수 있습니다. 나는 당신을 도울 수 있지만, 그렇게하려면 포지션 공식이 필요합니다 :)

편집 : 당신의 공식은 pi에 선형으로 의존한다고 생각합니다. 즉, pi가 제곱되거나 유사한 모호한 함수 f (x, y, z, pi)를 사용하지 않습니다. 이 경우 공식의 정확도는 PI 정확도 (예 : k*eps)의 요인입니다. 그렇지 않으면 기본적으로 PI에 대한 F의 미분의 계수입니다. 다른 모든 매개 변수의 정확도를 계산하지 않으면 F에 따라 다릅니다!

건배 !

그것은 얼마나 많은지에 달려 있습니다 유효 숫자 당신은 당신의 계산에 있습니다. 공식이 주어졌습니다

c = pi * d

얼마나 많은지 알고 싶다면 신장 원의 둘레에서 마일 직경은 1 마일에 63,360 인치가 있고 둘레에는 199,051 인치가 있기 때문에 원하는 정확도를 유지하려면 6 자리의 PI가 필요합니다. 답에 6 자리가 6 자리가 있기 때문에 필요한 정확도로 계산하려면 6 자리의 PI가 필요합니다.

3.14 * 63,360 = 198950.4

3.142 * 63,360 = 199077.12

3.1416 * 63,360 = 199051.776

3.14159 * 63,360 = 199051.1424

보시다시피,이 경우 5 자리의 PI만으로 정답을 얻었지만 항상 그런 것은 아닙니다. 당신은 상당한 숫자가있는 것만 큼 많은 숫자의 pi가 필요합니다. 보장하다 당신은 충분한 정밀도가 있습니다.

미리 계산하고 저장하는 경우 시스템의 수학 라이브러리를 사용하여 최대한 정확하게 계산할 수 있습니다. 좋은 선택은 다음과 같습니다.

double PI = (16.0 * atan(1/5)) - (4.0 * atan(1/239));

이는 PI에 대해 상당히 정확한 가치를 제공하여 시작시 계산하고 필요에 따라 재사용 할 수 있습니다. 쉽게 재사용 할 수있는 것보다 더 정확한 버전을 얻는 것은 어렵습니다.

당신이하고있는 일이 완전히 명확하지 않습니다. 각도에 따라 좌표를 찾고 있습니까? 이 경우 PI의 정확성은 전혀 중요하지 않습니다. 조회 테이블의 크기는 중요하며 물론 가능한 정확도로 미리 계산할 것입니다. 추가 정확도는 데이터 유형을 단일에서 더블로 변경하는 것에 대해 생각하는 것 외에 추가 실행 시간이 소요되지 않습니다.

값을 미리 계산하는 경우 저장하기 쉽게 정확하게 보관할 수 있지만 실제로 필요한 정확성에 대한 진정한 느낌을 얻으려면 공식과 다른 구성 요소의 정확성을 살펴 봐야하며 귀하가 가진 정확성을 확인하는 것보다 PI는 다른 구성 요소와 일치합니다. 수치 분석은 당신에게 많은 단서를 줄 것입니다.

성서는 Pi의 가치가 3이라고 말합니다.링크). 물론 당신은 그것을 사용해야합니다 :)

PI를위한 새로운 공식

Pi=2.m.sin(90/m)

Pi=3.m.sin(60/m)

Pi=4.m.sin(45/m)

Pi=5.m.sin(36/m)

Pi Free Calculator XP, XM,… .. 계산기의 성공을 위해 M = 1.0E+100000000의 값에 걸쳐 수백만의 경우 NetFramework2.0을 설치해야합니다.

http://harry-j-smith-memorial.com/index.html

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top