Skip to content
Snippets Groups Projects
Select Git revision
  • 3de0c3d2d398f10c24db1beb91183ab04498f760
  • master default protected
  • develop protected
  • cmake_boost_refactor
  • ubuntu_ci
  • mmtf
  • non-orthogonal-maps
  • no_boost_filesystem
  • data_viewer
  • 2.11.1
  • 2.11.0
  • 2.10.0
  • 2.9.3
  • 2.9.2
  • 2.9.1
  • 2.9.0
  • 2.8.0
  • 2.7.0
  • 2.6.1
  • 2.6.0
  • 2.6.0-rc4
  • 2.6.0-rc3
  • 2.6.0-rc2
  • 2.6.0-rc
  • 2.5.0
  • 2.5.0-rc2
  • 2.5.0-rc
  • 2.4.0
  • 2.4.0-rc2
29 results

chain_impl.hh

Blame
  • mandelbrot.f90 1.10 KiB
    program mandelbrot_area
    
      implicit none
    
      integer,parameter::npoints=2000,mxitr=1000
      double precision,parameter:: eps=1.d-5
    
      integer i,j,numoutside
      double precision area,error,rp,ri
    
      numoutside=0
    
      print *,eps,numoutside
      do i=1,npoints
         do j=1,npoints
            rp=-2.d0+2.5d0*dble(i)/dble(npoints)+eps
            ri=1.125d0*dble(j)/dble(npoints)+eps
            call testpoint(rp,ri,numoutside,mxitr)
         enddo
      enddo
      area=2.d0*2.5d0*1.125d0*dble(npoints*npoints-numoutside)/dble(npoints*npoints)
      error=area/dble(npoints)
    
      print *,'area: ',area,numoutside
      print *,'error: ',error
    
    end program mandelbrot_area
    
    
    !***************************************************
    subroutine testpoint(rp,ri,numoutside,mxitr)
      implicit none
      integer i
      integer,intent(in)::mxitr
      integer,intent(inout)::numoutside
      double precision,intent(in)::rp,ri
      double precision temp,crp,cri
    
      crp=rp
      cri=ri
      do i=1,mxitr
         temp=crp*crp-cri*cri+rp
         cri=crp*cri*2.d0+ri
         crp=temp
         if(crp*crp+cri*cri.gt.4.d0) then
            numoutside=numoutside+1
            exit
         endif
      enddo
    
      return
    end subroutine testpoint