Please wait...
×

Error

  • Re: How to implement a sheet pile wall into the model?

    I suggest two possibilities to represent the internal no-flow boundary condition. Both methods require a representation of the geometry in the FE-mesh.

    [list]
    [li]Inactive elements[/li]
    [li]Low hydraulic conductivity[/li]
    [/list]

    If you use inactive elements, you assume the sheet pile wall is being completely impervious with respect to both fluid flow and heat transport.

    If you are interested in a correct representation of the conductive heat driver within the sheet pile wall, then the better way is work with material properties. Use a very low hydraulic conductivity to introduce impervious conditions with regard to the fluid flow. Furthermore, use a heat conductivity and a heat capacity which corresponds to the thermal properties of the sheet pile wall.

    Assure that you use at least two element rows to discretize the sheet pile wall to accurately account for its impervious nature. A smooth gradation between highly refined areas (the wall) and domains with a rather coarse resolution is also recommended.
  • Re: Vertical slice unsaturated model

    [b](1) I am using a constraint on the Neumann BC to limit head to the topographic surface. However, when recharge is 0, the constraint is still on and I have a constant head boundary, which I need to get rid of.[/b]
    You use a maximum head constraint on NeumannBC's. The constraint is active only in areas where the water table reaches the topography (right hand side). In contrast, the constraint is not active where the water table is below the topography (left hand side). From the technical point of view, FEFLOW produces the correct output. If you do not want to have the constraint active you need to change the value for the constraint.

    [b](2) My error_norm_flow is undefined. How do I switch it on?[/b]
    I agree the error norm must not be undefined. Instead, the distribution must be filled with the nodal errors. For me it seems to be a bug. I need to get the final confirmation. The bug will be fixed with the next Update.

    In the meanwhile I provide two suggestions on how to improve the model. The capillary fringe as indicated by the saturation shows some artificial jumps. I suggest to refine the mesh. Moreover, I also suggest to switch to the direct equation solver PARDISO in the Problem Settings. The number of elements you (will) have in your 2D model should be easily handled by PARDISO.








  • Re: Displaying capture and infiltration zones

    If you have a mass transport license you could additionally make mass transport and/or age-based simulations.
  • Re: Displaying capture and infiltration zones

    I will add the last aspect on the FEFLOW wish list for future developments.
  • Re: Displaying capture and infiltration zones

    If you want to consider an area (polygon) to seed the particle-tracks you simply have to select all nodes which are located within this polygon. However, at the moment FEFLOW does not have the option to create an automatic color-coding depending whether or not the trajectory leaves the system through the well.
  • Re: Displaying capture and infiltration zones

    If you intend to delineate the catchment zones based on fieldlines (e.g. streamlines), then you have to create a nodal selection indicating the location to start the particle tracks. You can store a current selection by a right-click in the working window. Choose [b]Store Current Selection[/b] from the context menu. Go to the [b]Selection Panel[/b] and activate the selection. In the [b]Data Panel - Process Variables - Fluid flow[/b] double-click on the field lines of interest [b](e.g. Streamlines - Backward)[/b]. Go to the [b]View Components Panel[/b] and right-click on the streamlines and choose [b]Properties[/b] from the context menu. Enter a [b]radius[/b] which will be considered for the seeds and [b]Apply[/b]. Finally, activate the [b]Traces[/b] in the [b]View Components Panel[/b].

    If you want to process the data in GIS you can export the fieldlines from the View Components Panel.



  • Re: Horisontal cross section

    Short additional remark: It's not mandatory that X and Y for IfmGetResultsFlowHeadValueAtXYZ represent XY-locations of  mesh nodes. The location could be anywhere within the 3D model domain space. However, it makes sense to use XY-locations of the layered-based mesh.
  • Re: Horisontal cross section

    Hi Christian, of course you are more than right. You do not need to write the interpolation. Instead, you can use the following function:
    [font=courier][color=blue]
    #include <ifm/document.h>

    double IfmGetResultsFlowHeadValueAtXYZ
    (
    IfmDocument pDoc,
    double x,
    double y,
    double z,
    IfmBool *ine
    );
    [/color][/font]
    I forgot to take this function into account. Obviously, I was unintentional tunneled to the interpolation workflow I used for a slightly different question where IfmGetResultsFlowHeadValueAtXYZ cannot be applied. Thanks for your thoughtful remark.

    Before using IfmGetResultsFlowHeadValueAtXYZ, you simply have to loop through all nodes of a single slice to retrieve X and Y locations. These X and Y locations plus your Z elevation of interest are the required parameters.
  • Re: Horisontal cross section

    Hi Christian, four different possibilities come into my mind. You already mentioned most of them:

    [b]3D View[/b]
    You may use the Planes Panel for clipping/carving. After that, use the Navigation Panel which enables you to enter the perspective from where you are looking. In this regard, you do not have to use the mouse for navigation.

    [b]Exporting heads to a shapefile (manual way)[/b]
    That's a possible "dirty" way: If the nodes located on your different slices are vertically located at the elevation of interest for the horizontal section and if the horizontal population of the nodes are dense enough you can create a selection. Use the selection and export the heads from the Data Panel into a point-shapefile.

    [b]Exporting heads to a shapefile (automatic way)[/b]
    You may use the FEFLOW API. Retrieve all nodal X, Y, Z and head values and store them in an array. After that, loop vertically through the nodes located at the different slices starting from the first slice. Within the loop, you may retrieve nodal elevations using [font=courier][color=blue]IfmGetZ(nNode)[/color][/font]. If the upper node is greater than the elevation of interest (for the horizontal section) AND if the lower node is smaller than the elevation of interest, then you have to remember the heads computed from FEFLOW at the two nodes. Based on the elevations and heads of the upper and lower nodes and your additional elevation of interest, you can make a simple vertical 1D interpolation. As a result you have the head at the elevation of interest. If you do that for each XY-position (=[font=courier][color=blue]IfmGetNumberOfNodesPerSlice[/color])[/font], then you have all nodal elevations which are required for the horizontal section.

    If you use the Python API and if you use a GIS which supports Python (e.g. ArcGIS => [font=courier][color=blue]arcpy[/color][/font],QGIS =>[font=courier][color=blue]PyQGIS[/color][/font]) you can generate a single pipeline. After you finished the steps as described above you can write a point-shapefile, fill the attribute table with the values for X, Y and heads. Use these columns to generate a TIN. Of course you can also do the GIS steps manually.

    If you use ArcGIS the following functions can be usefull (without having the warranty of completeness):
    [font=courier][color=blue]
    arcpy.AddField_management()
    arcpy.CalculateField_management()
    arcpy.CreateTin_3d()
    arcpy.AddSurfaceInformation_3d()
    arcpy.Point()
    arcpy.PointGeometry()
    [/color][/font]
    [b]Write a VTK file[/b]
    You may write a VTK file by using the FEFLOW API and use the Clip filter ParaView.
  • Re: exporting vx and vy

    Great Anner... let's get in touch via mail.