palabos-v1.5r1 - Example :showCases - CodeBlocks-Windows - bug reports

Dear All,

I am trying code::Blocks under windows 8 and the compiler Mingw(GCC). I have cleared all bugs due to the ‘timespec’ declaration with the help of palabose forum related to cavity2D . When I tried to compile the vofmultiphase from showCase, I got error like this ;

[code=“cpp-qt”]
||=== Build: Release in Palabos (compiler: GNU GCC Compiler) ===|
obj\Release\examples\showCases\vofMultiPhase\fallingDroplet.o:fallingDroplet.cpp|| multiple definition of plb::stringToTwoPhaseModel(std::string)'| obj\Release\examples\showCases\vofMultiPhase\damBreak3d.o:damBreak3d.cpp|| first defined here| obj\Release\examples\showCases\vofMultiPhase\fallingDroplet.o:fallingDroplet.cpp|| multiple definition ofsetupParameters()’|
obj\Release\examples\showCases\vofMultiPhase\damBreak3d.o:damBreak3d.cpp|| first defined here|
||=== Build failed: 4 error(s), 0 warning(s) (0 minute(s), 46 second(s)) ===|





Will you help me  to fix this error ?

Hello,

If you don’t mind , I can add different types of bugs I could get through the compilation aneurysm here.

[code=“cpp”]

||=== Build: Release in Palabos (compiler: GNU GCC Compiler) ===|
obj\Release\examples\showCases\aneurysm\aneurysm_bounceback.o:aneurysm_bounceback.cpp|| multiple definition of plb::stringToTwoPhaseModel(std::string)'| obj\Release\examples\showCases\aneurysm\aneurysm.o:aneurysm.cpp|| first defined here| obj\Release\examples\showCases\aneurysm\aneurysm_bounceback.o:aneurysm_bounceback.cpp|| multiple definition ofiniLattice(plb::MultiBlockLattice3D<double, plb::descriptors::D3Q19Descriptor>&, plb::VoxelizedDomain3D&)’|
obj\Release\examples\showCases\aneurysm\aneurysm.o:aneurysm.cpp|| first defined here|
obj\Release\examples\showCases\aneurysm\aneurysm_bounceback.o:aneurysm_bounceback.cpp|| multiple definition of readParameters(plb::XMLreader const&)'| obj\Release\examples\showCases\aneurysm\aneurysm.o:aneurysm.cpp|| first defined here| obj\Release\examples\showCases\aneurysm\aneurysm_bounceback.o:aneurysm_bounceback.cpp|| multiple definition ofsetOpenings(std::vector<plb::BoundaryProfile3D<double, plb::Array<double, 3u> >, std::allocator<plb::BoundaryProfile3D<double, plb::Array<double, 3u> >> >&, plb::TriangleBoundary3D&, double, double, double)’|
obj\Release\examples\showCases\aneurysm\aneurysm.o:aneurysm.cpp|| first defined here|
obj\Release\examples\showCases\aneurysm\aneurysm_bounceback.o:aneurysm_bounceback.cpp|| multiple definition of run(int, plb::MultiBlockLattice3D<double, plb::descriptors::D3Q19Descriptor>*)'| obj\Release\examples\showCases\aneurysm\aneurysm.o:aneurysm.cpp|| first defined here| obj\Release\examples\showCases\aneurysm\aneurysm_bounceback.o:aneurysm_bounceback.cpp|| multiple definition ofpointMeasures(plb::MultiBlockLattice3D<double, plb::descriptors::D3Q19Descriptor>&, plb::Array<double, 3u>, double, double)’|
obj\Release\examples\showCases\aneurysm\aneurysm.o:aneurysm.cpp|| first defined here|
||=== Build failed: 12 error(s), 0 warning(s) (2 minute(s), 25 second(s)) ===|

Hi,

This is about boussinesqThermal2d

command prompt output

[code=“cpp-qt”]

Palabos IO error: Can’t read command-line argument 1: there are no command-line
arguments
The structure of the input parameters should be : E:\palabos-v1.5r1\codeblocks - Copy\bin\Release\Palabos.exe Ra
Process returned 1 (0x1) execution time : 0.014 s
Press any key to continue.

Hey,

Yet again … boussinesqThermal3d . This same as boussinesqThermal2d

[code=“cpp-qt”]
Palabos IO error: Can’t read command-line argument 1: there are no command-line
arguments
The structure of the input parameters should be : E:\palabos-v1.5r1\codeblocks \bin\Release\Palabos.exe Ra

Process returned 1 (0x1) execution time : 0.109 s
Press any key to continue.

Hello,

About carreauPoiseuille

cmd display

[code=“cpp-qt”]
Error N must be specified.

Process returned 1 (0x1) execution time : 0.045 s
Press any key to continue.

Hi,

By compiling collidingBubbles3d I got cmd display like this,

[code=“cpp-qt”]
Error : Wrong parameters specified.
1 : surface tension
2 : thickness bubble
3 : bubble radius
4 : output folder name
Possible parameters are: E:\palabos-v1.5r1\codeblocks\bin\Release\Palabos.exe 1.e-4 5 15 tmp

Process returned 1 (0x1) execution time : 0.059 s
Press any key to continue.

externalFlowAroundObstacle

cmd output

[code=“cpp-qt”]

Wrong parameters; the syntax is: E:\palabos-v1.5r1\codeblocks\bin\Release
Palabos.exe input-file.xml

Process returned -1 (0xFFFFFFFF) execution time : 0.016 s
Press any key to continue.

generalExternalFlow

from cmd

[code=“cpp-qt”]
Usage: E:\palabos-v1.5r1\codeblocks \bin\Release
Palabos.exe xml-input-file-name [xml-continue-file-name]

Process returned 1 (0x1) execution time : 0.015 s
Press any key to continue.

movingwall

Getting unexpected message like "palabose.exe’’ has stop working because of memory reference problem. And the cmd output like this

[code=“cpp”]
lx = 29.5
ly = 9
lz = 9
resolution = 25
xSide = 2
ySide = 1
ampl = 0.785398
freq = 0.1
dt = 0.00082
maxIter = 500000
statIter = 200
outIter = 500
inletVelocity = 1
nu = 0.02
Re = 50
mountPoint = (4.5, 4.5, 4.5)
ibIter = 4
nx = 709
ny = 216
nz = 216
inletVelocityLB = 0.01968
mountPointLB = (108, 108, 108)
omega = 1.89272
tau = 0.528339
dx = 0.0416667
dt / dx = 0.01968
dt / (dx * dx) = 0.47232
xSideLB = 48
ySideLB = 24
amplLB = 0.785398
freqLB = 8.2e-005

Generating multi-blocks.
Dynamics: Incompressible BGK.

Process returned 255 (0xFF) execution time : 33.157 s
Press any key to continue.

multiComponent2D

Build messages…

[code=“cpp-qt”]
||=== Build: Release in Palabos (compiler: GNU GCC Compiler) ===|
E:\Mtech\MCS S2\TP\Tutorial\palabos-v1.5r1\examples\showCases\multiComponent2d\rayleighTaylor2D.cpp||In member function ‘virtual void TwoLayerInitializer<T, Descriptor>::execute(plb::plint, plb::plint, plb::Cell<T, Descriptor>&) const’:expressionless:
E:\Mtech\MCS S2\TP\Tutorial\palabos-v1.5r1\examples\showCases\multiComponent2d\rayleighTaylor2D.cpp|72|error: there are no arguments to ‘random’ that depend on a template parameter, so a declaration of ‘random’ must be available [-fpermissive]|
E:\Mtech\MCS S2\TP\Tutorial\palabos-v1.5r1\examples\showCases\multiComponent2d\rayleighTaylor2D.cpp|72|note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)|
E:\Mtech\MCS S2\TP\Tutorial\palabos-v1.5r1\examples\showCases\multiComponent2d\rayleighTaylor2D.cpp||In instantiation of ‘void TwoLayerInitializer<T, Descriptor>::execute(plb::plint, plb::plint, plb::Cell<T, Descriptor>&) const [with T = double; Descriptor = plb::descriptors::ForcedShanChenD2Q9Descriptor; plb::plint = int]’:expressionless:
E:\Mtech\MCS S2\TP\Tutorial\palabos-v1.5r1\examples\showCases\multiComponent2d\rayleighTaylor2D.cpp|217|required from here|
E:\Mtech\MCS S2\TP\Tutorial\palabos-v1.5r1\examples\showCases\multiComponent2d\rayleighTaylor2D.cpp|72|error: ‘random’ was not declared in this scope|
||=== Build failed: 2 error(s), 2 warning(s) (0 minute(s), 10 second(s)) ===|




Corresponding code part

[code="cpp"]
 Array<T,2> zeroVelocity (0.,0.);

        T rho = (T)1;
        // Add a random perturbation to the initial condition to instantiate the
        //   instability.
        if ( (topLayer && iY>ny/2) || (!topLayer && iY <= ny/2) ) {
            rho += (double)random()/(double)RAND_MAX * densityFluctuations;
        }
        else {
            rho = almostNoFluid;
        }

        iniCellAtEquilibrium(cell, rho, zeroVelocity);
    }

multiComponent3D

[code=“cpp-qt”]
||=== Build: Release in Palabos (compiler: GNU GCC Compiler) ===|
E:\Mtech\MCS S2\TP\Tutorial\palabos-v1.5r1\examples\showCases\multiComponent3d\rayleighTaylor3D.cpp||In member function ‘virtual void TwoLayerInitializer<T, Descriptor>::execute(plb::plint, plb::plint, plb::plint, plb::Cell<T, Descriptor>&) const’:expressionless:
E:\Mtech\MCS S2\TP\Tutorial\palabos-v1.5r1\examples\showCases\multiComponent3d\rayleighTaylor3D.cpp|78|error: there are no arguments to ‘random’ that depend on a template parameter, so a declaration of ‘random’ must be available [-fpermissive]|
E:\Mtech\MCS S2\TP\Tutorial\palabos-v1.5r1\examples\showCases\multiComponent3d\rayleighTaylor3D.cpp|78|note: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated)|
E:\Mtech\MCS S2\TP\Tutorial\palabos-v1.5r1\examples\showCases\multiComponent3d\rayleighTaylor3D.cpp||In instantiation of ‘void TwoLayerInitializer<T, Descriptor>::execute(plb::plint, plb::plint, plb::plint, plb::Cell<T, Descriptor>&) const [with T = double; Descriptor = plb::descriptors::ForcedShanChenD3Q19Descriptor; plb::plint = int]’:expressionless:
E:\Mtech\MCS S2\TP\Tutorial\palabos-v1.5r1\examples\showCases\multiComponent3d\rayleighTaylor3D.cpp|232|required from here|
E:\Mtech\MCS S2\TP\Tutorial\palabos-v1.5r1\examples\showCases\multiComponent3d\rayleighTaylor3D.cpp|78|error: ‘random’ was not declared in this scope|
E:\Mtech\MCS S2\TP\Tutorial\palabos-v1.5r1\examples\showCases\multiComponent3d\rayleighTaylor3D.cpp|78|note: suggested alternative:|
…\externalLibraries\Eigen3\src\Core\MathFunctions.h|700|note: ‘Eigen::internal::random’|
||=== Build failed: 2 error(s), 2 warning(s) (0 minute(s), 20 second(s)) ===|



code part

[code="cpp"]
inline EIGEN_MATHFUNC_RETVAL(random, Scalar) random(const Scalar& x, const Scalar& y)
{
  return EIGEN_MATHFUNC_IMPL(random, Scalar)::run(x, y);
}

template<typename Scalar>
inline EIGEN_MATHFUNC_RETVAL(random, Scalar) random()
{
  return EIGEN_MATHFUNC_IMPL(random, Scalar)::run();
}

/****************************************************************************
* Implementation of fuzzy comparisons  

rectangularChannel3d

From cmd

[code=“cpp-qt”]

Error the parameters are wrong. The structure must be :
1 : N

Process returned 1 (0x1) execution time : 0.043 s
Press any key to continue.

womersley

cmd output

[code=“cpp-qt”]
Error : Wrong parameters specified.
1 : N.

Process returned 1 (0x1) execution time : 0.085 s
Press any key to continue.