[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [46115] branches/smoke2/intern/smoke: " Synthetic Turbulence using Artificial Boundary Layers" by Tobias Pfaff, Nils Thuerey et al.

Daniel Genrich daniel.genrich at gmx.net
Mon Apr 30 14:50:58 CEST 2012


Revision: 46115
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=46115
Author:   genscher
Date:     2012-04-30 12:50:58 +0000 (Mon, 30 Apr 2012)
Log Message:
-----------
"Synthetic Turbulence using Artificial Boundary Layers" by Tobias Pfaff, Nils Thuerey et al.
http://graphics.ethz.ch/Downloads/Publications/Papers/2009/Pfa09/Pfa09.pdf

Remarks:
- Does only compile using cmake + windows. (Needs LAPACK)
- Smoke is completely broken at the time beeing.
- People can joing dev. For the moment I'm trying to move code from main.cpp to smoke.cpp

Modified Paths:
--------------
    branches/smoke2/intern/smoke/CMakeLists.txt
    branches/smoke2/intern/smoke/SConscript
    branches/smoke2/intern/smoke/intern/smoke_API.cpp

Added Paths:
-----------
    branches/smoke2/intern/smoke/intern/COPYING
    branches/smoke2/intern/smoke/intern/Makefile
    branches/smoke2/intern/smoke/intern/README.txt
    branches/smoke2/intern/smoke/intern/source/
    branches/smoke2/intern/smoke/intern/source/advectionplugins.cpp
    branches/smoke2/intern/smoke/intern/source/animplugins.cpp
    branches/smoke2/intern/smoke/intern/source/conjugategrad.cpp
    branches/smoke2/intern/smoke/intern/source/conjugategrad.h
    branches/smoke2/intern/smoke/intern/source/fileio.cpp
    branches/smoke2/intern/smoke/intern/source/fluidsolver.cpp
    branches/smoke2/intern/smoke/intern/source/fluidsolver.h
    branches/smoke2/intern/smoke/intern/source/glutgui.cpp
    branches/smoke2/intern/smoke/intern/source/grid.h
    branches/smoke2/intern/smoke/intern/source/guihelpers.cpp
    branches/smoke2/intern/smoke/intern/source/initplugins.cpp
    branches/smoke2/intern/smoke/intern/source/main.cpp
    branches/smoke2/intern/smoke/intern/source/operators.h
    branches/smoke2/intern/smoke/intern/source/poissonsolvers.cpp
    branches/smoke2/intern/smoke/intern/source/smoke.cpp
    branches/smoke2/intern/smoke/intern/source/smoke.h
    branches/smoke2/intern/smoke/intern/source/smokeplugins.cpp
    branches/smoke2/intern/smoke/intern/source/solverinit.cpp
    branches/smoke2/intern/smoke/intern/source/solverinit.h
    branches/smoke2/intern/smoke/intern/source/solverparams.cpp
    branches/smoke2/intern/smoke/intern/source/solverparams.h
    branches/smoke2/intern/smoke/intern/source/solverplugin.h
    branches/smoke2/intern/smoke/intern/source/stdplugins.cpp
    branches/smoke2/intern/smoke/intern/source/vortexpart.cpp
    branches/smoke2/intern/smoke/intern/source/vortexpart.h
    branches/smoke2/intern/smoke/intern/source/vortexplugins.cpp
    branches/smoke2/intern/smoke/intern/util/
    branches/smoke2/intern/smoke/intern/util/boundbox.h
    branches/smoke2/intern/smoke/intern/util/globals.cpp
    branches/smoke2/intern/smoke/intern/util/globals.h
    branches/smoke2/intern/smoke/intern/util/matrixbase.h
    branches/smoke2/intern/smoke/intern/util/paramset.cpp
    branches/smoke2/intern/smoke/intern/util/paramset.h
    branches/smoke2/intern/smoke/intern/util/quaternion.h
    branches/smoke2/intern/smoke/intern/util/randomstream.h
    branches/smoke2/intern/smoke/intern/util/vectorbase.h
    branches/smoke2/intern/smoke/intern/util/waveletnoise.h

Removed Paths:
-------------
    branches/smoke2/intern/smoke/intern/EIGENVALUE_HELPER.cpp
    branches/smoke2/intern/smoke/intern/EIGENVALUE_HELPER.h
    branches/smoke2/intern/smoke/intern/FFT_NOISE.h
    branches/smoke2/intern/smoke/intern/FLUID_3D.cpp
    branches/smoke2/intern/smoke/intern/FLUID_3D.h
    branches/smoke2/intern/smoke/intern/FLUID_3D_SOLVERS.cpp
    branches/smoke2/intern/smoke/intern/FLUID_3D_STATIC.cpp
    branches/smoke2/intern/smoke/intern/IMAGE.h
    branches/smoke2/intern/smoke/intern/INTERPOLATE.h
    branches/smoke2/intern/smoke/intern/LICENSE.txt
    branches/smoke2/intern/smoke/intern/LU_HELPER.cpp
    branches/smoke2/intern/smoke/intern/LU_HELPER.h
    branches/smoke2/intern/smoke/intern/MERSENNETWISTER.h
    branches/smoke2/intern/smoke/intern/Makefile.FFT
    branches/smoke2/intern/smoke/intern/Makefile.cygwin
    branches/smoke2/intern/smoke/intern/Makefile.linux
    branches/smoke2/intern/smoke/intern/Makefile.mac
    branches/smoke2/intern/smoke/intern/OBSTACLE.h
    branches/smoke2/intern/smoke/intern/SPHERE.cpp
    branches/smoke2/intern/smoke/intern/SPHERE.h
    branches/smoke2/intern/smoke/intern/VEC3.h
    branches/smoke2/intern/smoke/intern/WAVELET_NOISE.h
    branches/smoke2/intern/smoke/intern/WTURBULENCE.cpp
    branches/smoke2/intern/smoke/intern/WTURBULENCE.h
    branches/smoke2/intern/smoke/intern/main.cpp_disabled
    branches/smoke2/intern/smoke/intern/tnt/

Modified: branches/smoke2/intern/smoke/CMakeLists.txt
===================================================================
--- branches/smoke2/intern/smoke/CMakeLists.txt	2012-04-30 12:49:26 UTC (rev 46114)
+++ branches/smoke2/intern/smoke/CMakeLists.txt	2012-04-30 12:50:58 UTC (rev 46115)
@@ -24,9 +24,9 @@
 # ***** END GPL LICENSE BLOCK *****
 
 set(INC
-	intern
+	intern/util
+	intern/source
 	../memutil
-	../../extern/bullet2/src
 )
 
 set(INC_SYS
@@ -35,68 +35,44 @@
 )
 
 set(SRC
-	intern/EIGENVALUE_HELPER.cpp
-	intern/FLUID_3D.cpp
-	intern/FLUID_3D_SOLVERS.cpp
-	intern/FLUID_3D_STATIC.cpp
-	intern/LU_HELPER.cpp
-	intern/SPHERE.cpp
-	intern/WTURBULENCE.cpp
 	intern/smoke_API.cpp
-
-	extern/smoke_API.h
-	intern/EIGENVALUE_HELPER.h
-	intern/FFT_NOISE.h
-	intern/FLUID_3D.h
-	intern/IMAGE.h
-	intern/INTERPOLATE.h
-	intern/LU_HELPER.h
-	intern/MERSENNETWISTER.h
-	intern/OBSTACLE.h
-	intern/SPHERE.h
-	intern/VEC3.h
-	intern/WAVELET_NOISE.h
-	intern/WTURBULENCE.h
-	intern/tnt/jama_eig.h
-	intern/tnt/jama_lu.h
-	intern/tnt/tnt.h
-	intern/tnt/tnt_array1d.h
-	intern/tnt/tnt_array1d_utils.h
-	intern/tnt/tnt_array2d.h
-	intern/tnt/tnt_array2d_utils.h
-	intern/tnt/tnt_array3d.h
-	intern/tnt/tnt_array3d_utils.h
-	intern/tnt/tnt_cmat.h
-	intern/tnt/tnt_fortran_array1d.h
-	intern/tnt/tnt_fortran_array1d_utils.h
-	intern/tnt/tnt_fortran_array2d.h
-	intern/tnt/tnt_fortran_array2d_utils.h
-	intern/tnt/tnt_fortran_array3d.h
-	intern/tnt/tnt_fortran_array3d_utils.h
-	intern/tnt/tnt_i_refvec.h
-	intern/tnt/tnt_math_utils.h
-	intern/tnt/tnt_sparse_matrix_csr.h
-	intern/tnt/tnt_stopwatch.h
-	intern/tnt/tnt_subscript.h
-	intern/tnt/tnt_vec.h
-	intern/tnt/tnt_version.h
+	
+	intern/source/advectionplugins.cpp
+	intern/source/animplugins.cpp
+	intern/source/conjugategrad.cpp
+	intern/source/fileio.cpp
+	intern/source/fluidsolver.cpp
+	intern/source/glutgui.cpp
+	intern/source/guihelpers.cpp
+	intern/source/initplugins.cpp
+	intern/source/smoke.cpp
+	intern/source/poissonsolvers.cpp
+	intern/source/smokeplugins.cpp
+	intern/source/solverinit.cpp
+	intern/source/solverparams.cpp
+	intern/source/stdplugins.cpp
+	intern/source/vortexpart.cpp
+	intern/source/vortexplugins.cpp
+	
+	intern/util/globals.cpp
+	intern/util/paramset.cpp
 )
 
 # quiet -Wundef
 add_definitions(-DDDF_DEBUG=0)
 
 if(WITH_OPENMP)
-	add_definitions(-DPARALLEL=1)
+	add_definitions(-DDDF_OPENMP=1)
 else()
-	add_definitions(-DPARALLEL=0)
+	add_definitions(-DDDF_OPENMP=0)
 endif()
 
-if(WITH_FFTW3)
-	add_definitions(-DWITH_FFTW3)
-	list(APPEND INC
-		${FFTW3_INCLUDE_DIRS}
-	)
-endif()
+#if(WITH_FFTW3)
+#	add_definitions(-DWITH_FFTW3)
+#	list(APPEND INC
+#		${FFTW3_INCLUDE_DIRS}
+#	)
+#endif()
 
 blender_add_lib(bf_intern_smoke "${SRC}" "${INC}" "${INC_SYS}")
 

Modified: branches/smoke2/intern/smoke/SConscript
===================================================================
--- branches/smoke2/intern/smoke/SConscript	2012-04-30 12:49:26 UTC (rev 46114)
+++ branches/smoke2/intern/smoke/SConscript	2012-04-30 12:50:58 UTC (rev 46115)
@@ -2,6 +2,8 @@
 Import ('env')
 
 sources = env.Glob('intern/*.cpp')
+sources += env.Glob('util/*.cpp')
+sources += env.Glob('source/*.cpp')
 
 incs = ''
 defs = ''

Added: branches/smoke2/intern/smoke/intern/COPYING
===================================================================
--- branches/smoke2/intern/smoke/intern/COPYING	                        (rev 0)
+++ branches/smoke2/intern/smoke/intern/COPYING	2012-04-30 12:50:58 UTC (rev 46115)
@@ -0,0 +1,339 @@
+		    GNU GENERAL PUBLIC LICENSE
+		       Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+			    Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+		    GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list