CAFE

댓글

뒤로

분산을 구했는데 음수가 나오는 경우 무엇이 문제일까요?

작성자홍성철| 작성시간04.12.21| 조회수2695| 댓글 7

댓글 리스트

  • 작성자 최권일 작성시간04.12.21 음수가 어떤값을 갖나요? 0에 가까운 수라면 (예를 들어 -1.E-20) 절단오차일 가능성도 있습니다만..
  • 작성자 홍성철 작성자 본인 여부 작성자 작성시간04.12.21 간단하게 파일 작성해서 돌린 결과입니다.(코드와 결과) Round off Error는 아닌것 같습니다. 만약에 이 경우라면 유효숫자에 따라서 결과가 달라져야 하는데 그렇지 않습니다.
  • 작성자 꿈꾸는가인 작성시간04.12.21 주신 코드는 잘 보았습니다만... compile 이 제대로 되나요? PROGRAM varia 로 되어 있고 END PROGRAM var 로 되어 있는데... 일치하지 않습니다. 변수 선언은 real로 하시고 casting 은 dble 로 하셨네요. 이렇게 되면 제대로 된 결과를 얻을 수 없습니다. 제가 코드를 고쳐서 돌려보았습니다.
  • 작성자 꿈꾸는가인 작성시간04.12.21 싱글로 선언을 하고 따따블로 계산을 했습니다. double의 double 입니다. real*8 이 아니고 real*16 이죠. 이는 compile option 으로 가능합니다. 계산 결과 order 를 보니까 1.Q-26 ~ 1.Q-28 사이가 되더군요. 고로 이는 계산 절차상의 수치에러로 보아야 할 거 같습니다.
  • 작성자 꿈꾸는가인 작성시간04.12.21 숫자의 차이가 많이 나지 않는 경우의 계산은 특히 중요합니다. 이는 수치해석 처음의 "오차의 해석"을 참고 하시면 되겠습니다. 위의 경우처럼 차이가 많지 않는 경우는 계산을 조심해야 합니다. 순서까지도 신경을 써야 하기 때문이죠. x**2 과 x*x는 수학적으로는 같지만 수치적으로는 다른 경우가 많이 있습니다.
  • 작성자 홍성철 작성자 본인 여부 작성자 작성시간04.12.21 감사합니다. 정말로 사소한것 같은데 어려움이 많네요. 앞으로가 걱정입니다. ㅡㅡ;;
  • 작성자 정현성 작성시간23.06.08
    댓글 이모티콘
맨위로

카페 검색

카페 검색어 입력폼
카카오 이모티콘
사용할 수 있는 카페앱에서
댓글을 작성하시겠습니까?
이동시 작성중인 내용은 유지되지 않습니다.