• Re: Changing layer thickness of more than one layer at a time

    You might do that by defining a user (nodal) distribution with the target thickness, and then use the expression editor to assign nodal elevations based on an equation that calls the user distribution.

  • Re: Add or remove servers / slaves during a pest run

    Have these instructions changed for FEFLOW and FePest 7.0?. For the case to add new servers available:

    I'm looking at the batch files that have to be edited but all I can see is relative paths. Below are the two files. I don't see:
    1) The section where the fps file have to be defined in the run_model batch file
    2) The section where to define the PST file in run_slave file

    Do the slave folder of one of the active servers have to be copied to a path similar in the new server available?
    If I have the files below, what are the changes needed?. I also assume that after the batches have been edited within the copied folder, then the run_slave one have to be launched right? Will the master know automatically that the new server is available or the deploy_slaves batch have to be run?

    @rem -- This script is for running PEST
    @setlocal enabledelayedexpansion

    @rem -- environment
    @if exist "set_env.bat" @call "set_env.bat"

    @rem -- custom alt-processing
    @if exist "_run_model-alt.bat" @call "_run_model-alt.bat" & exit

    @rem -- custom pre-processing
    @if exist "_run_model-pre.bat" @call "_run_model-pre.bat"

    @rem -- delete old model output
    @if exist "%CASE%.fpo" del "%CASE%.fpo" >nul 2>&1
    @if exist "transient.fpo" del "transient.fpo" >nul 2>&1

    @rem -- run fepest
    @"fepest70c" "%PROBLEMPATH%" -mode=run -workdir="%WORKDIR%"

    @rem -- custom post-processing
    @if exist "_run_model-post.bat" @call "_run_model-post.bat"

    @echo.[INFO] running the script: run_slave.bat
    @setlocal enabledelayedexpansion

    @rem -- environment
    @if exist "set_env.bat" @call "set_env.bat"

    @rem -- custom alt-processing
    @if exist "_run_slave-alt.bat" @call "_run_slave-alt.bat" & exit

    @rem -- custom pre-processing
    @if exist "_run_slave-pre.bat" @call "_run_slave-pre.bat"

    @rem -- check slave dir name validity
    @for %%f in ("%WORKDIR%") do @set SLAVEDIR=%%~nxf
    @if "x%SLAVEDIR:TheNameOfTheFePestFile@=%"=="x%SLAVEDIR%" (
      @echo.[ERROR] invalid slave directory name!
      @echo.[ERROR] name must start with: "TheNameOfTheFePestFile@"

    @rem -- run pest
    @set RESTART=/p1
    @if exist "%CASE%.rst" @set RESTART=/s
    "beopest32.exe" "%CASE%.pst" /H AnIpNumber:APortNumber !RESTART!
    @if exist "%CASE%.res" del "%CASE%.rst" >nul 2>&1
    @if exist "pest.stp" exit

    @rem -- custom post-processing
    @if exist "_run_slave-post.bat" @call "_run_slave-post.bat"

    @rem -- wait for one second
    @ping -n 1 -w 1000 >nul

    @echo.[INFO] completed the script: run_slave.bat
  • Re: FePest Parallelization of a FEM with Parallelized Equation Solver

    Thanks a lot Björn.
  • FePest Parallelization of a FEM with Parallelized Equation Solver


    I'm wondering how FePest encompasses the parallelization of the PEST run and of each FEM model using parallelized equation solvers.

    I have a FEFLOW model setup with the SAMG solver, which is supposed to make use of several CPU cores available when it is run independently. Now, If I want to use Pest Parallelization over that model, how will the FEM file be run?. If the master sends one instance of the fem file to a slave computer that is defined as having 3 slaves, Will it send 3 realizations of the fem file to each slave, and leave the slave computer to decide how to make use of other available local CPU cores to solve the FEM?

    Another example is when the parallelization of the FePest run is made in the local computer. If one defines the number of slaves of the localhost as the maximum number of CPU cores, and FePest sends one realization of the fem file to each CPU core, seems logical that there will be no room for each CPU core to parallelize the equation solver. But, will it parallelize the equation solver if the number of slaves is less than the maximum number of CPU cores available?

  • Re: Getting node number in a 3D model at slice and Debugging

    Thank you very much Carlos.
  • Re: Getting node number in a 3D model at slice and Debugging

    Thanks a lot Carlos for your reply.

    Could you please confirm if the node found by IfmFindNodeAtXY is always at slice1?
    Also, the coordinates shown in the bottom status bar when using the mesh inspector, local or global?

    Thanks again.
  • Getting node number in a 3D model at slice and Debugging


    I need to get the node number in a specific location of slice 1 in a 3D problem. I am trying to use the  IfmFindNodeAtXY function to get it, and then pass the node number to a query that obtains the budget flow at that node. I get the error "(BudgetQueryFlowAtNode): Node number out of range! Skipped...".

    I've done the budget query using node numbers directly, and It works ok. Thus I'm guessing the error is in the call to IfmFindNodeAtXY.
    I'm giving the  function the approximate coordinates of a node, and a tolerance. I know for certain there is a node within the range of coordinates and the distance passed to the function. The code is as follows:

    int NodeNumber;
    double dist;
    double * pointer1;

    dist = 7.0;
    pointer1 = &dist;
    NodeNumber = IfmFindNodeAtXY(pDoc, 352, 1715, pointer1);

    I know the node is located at (x,y) = (352.6, 1715.7). Therefore can't understand why I get the error if I'm specifying a distance that would enclose it.

    Doubts would be:

    Does the IfmFindNodeAtXY function always return the node number in slice 1? If not, How the Z location has to be handled?
    Am I right to assume that units of the argument dist* in IfmFindNodeAtXY are meters?
    Is there another way to know node numbers without having to code it in IFM?
    What is the best way to print to the Feflow Log panel the results for that NodeNumber assignment in order to be able to debug it? Is it the same if the value to print would be another variable of double type?

  • Re: Budget History Charting

    Hello All,

    Am I right to point that the accuracy of the subdomain and masking tools is mesh dependent?

  • Re: Transient internal flux analysis in FEFLOW 6.1?

    I would be looking forward to this feature be available in the near future...It would be great if we could have the feedback from the support team ..
  • Re: How can I decide the error bound of my model?

    My understanding from the white papers is that error tolerance is related to the maximum head elevation.
    For instance, If your max head elevations are 2 m (a.s.l.), and you specify a error tolerance of 0.001, then the change in the norm you are using is 0.001 x 2 m = 0,002 m.
    This changes if your max head elevations are 2000 m.a.s.l  (0.001 x 2000 = 2 m)