File Exchange

image thumbnail

DaveHealy-github/FracPaQ

version 2.8.0.0 (74.5 MB) by Dave Healy
Quantification of fracture patterns in rocks and other materials

28 Downloads

Updated 06 Apr 2021

From GitHub

View Version History

View license on GitHub

Quantification of Fracture Patterns

Cite As

Dave Healy (2021). DaveHealy-github/FracPaQ (https://github.com/DaveHealy-github/FracPaQ), GitHub. Retrieved .

Comments and Ratings (63)

Dave Healy

Version 2.8 now available. See User Guide (PDF) for all the details.

Dave Healy

Hello Steve, maybe!

Never imported from a Petrel file before; can you send me an example file and I'll take a look.

Cheers, Dave

Steven Ogilvie

Hi Dave, can you help with Petrel export of lines - I need to get it into your node format ? thanks, Steve

Dave Healy

OK, so it seems others have reported this too - for certain combinations of recent Mac OS X and recent MATLAB versions (e.g., R2020). I know that FracPaQ hasn't changed recently, so it SHOULD work. Sorry about this.
Dave

Ashley Stanton-Yonge

Hi Dave! Thanks for the super quick reply. I had tried that before but for some reason changing the filter in Options is not enabling any format other than txt.

Dave Healy

Hello Ashley, thanks for the feedback!

When you see the file open dialog on the Mac, click on the Options button at lower left - you should then get a choice of file type filters, including .txt, .svg, etc etc.

All the best, Dave

Ashley Stanton-Yonge

Hi, I have been using FraqPaq for a while and it works wonderfully. However, now I changed from Windows to Mac and I am having trouble opening any format that is not txt. Anyone has had a similar problem?
Thanks

Thi Quan Pham

Hi Dave,

Thank you so much for the modified script. It works great.

I have one more question. Can FracPaQ calculate azimuths for fault traces using the two ending points (tip-to-tip)? I looked at guiFracPaQ2Dangle.m, if I understand the script correctly, it only determines azimuths for fault segments.

Thank you again for creating such a great program, for a Mathlab beginner user like me, the graphical interface is a big help, and FracPaQ helps to speed up my work a lot. I very much appreciate all your help.

Best,
Thi

Dave Healy

Hello again, I see now.

So you need the data output from the lengths versus angles cross-plot. I have a fix for that - please e-mail me on info@fracpaq.com and I can send you a modified script.

If that works OK, I'll include this in the next release.

All the best, Dave

Thi Quan Pham

Hi Dave,

Thank you for your reply. I found those .txt files. It seems like the three text files are sorted from smallest to largest values. So the azimuths and the segment lengths are not correlated. I am doing some fault pattern analysis, which I need to generate some length vs. azimuth graphs, can FracPaQ create .txt in which the segment azimuths correlate to segment lengths? Or is there a way that FracPaQ can tie segment lengths with the correct azimuths instead of sorting both from smallest to largest value?

Best,
Thi

Dave Healy

Hello Thi, thanks for the feedback! Yes, the data are written to tab-delimited ASCII text files in the current folder. Look for filenames beginning with FracPaQ2D... and ending with filetype .txt.
All the best, Dave

Thi Quan Pham

Hi Dave,

Thank you for creating this useful software. I would like to ask--besides the graphs: trace length vs. frequency, and azimuth vs. frequency, is there a way to export .txt files that include frequencies, lengths, and azimuths for the traces and segments?

Best,
Thi

Dave Healy

Hello Yannick, thanks for the comment. Yes, sadly this is a known problem, and not just for FracPaQ. It is a known problem for Inkscape too (they have a work item for their open source code to improve their SVG output). It seems their output does not conform to the standard. SVG files from, for example Adobe or Corel, do work properly.

Please e-mail info@fracpaq.com with specific details of your error messages and SVG files, and we'll see what we can do to patch it up.

All the best, Dave.

Yannick Hoeksma

Dear Dave,
I am having trouble opening SVG files created using Inkscape in FracPaQ. Attempting to open any SVG file from Inkscape (I have tried multiple formats available in Inkscape) results in multiple errors. This might be a known issue, but if not, I could provide you with the errors I am getting. Your help would be much appreciated in solving this problem :).
Thanks in advance,
Yannick

On a sidenote, FracPaQ works wonderfully with SVG files that do open (e.g. from Adobe Illustrator)!

Dave Healy

Thanks for the comment. Yes, these data are written to two files in the current folder whenever you run those maps; FracPaQ2Dintensity.txt and FracPaQ2Ddensity.txt. Hope these help. All the best, Dave

Folalrin Kolawole

Dear David Healy,
Thanks for making your wonderful software free for public use. I am wondering... is there anyway to export the xyz text file of the intensity and density maps? Thanks for your response.
Folarin

Allan López

Dave Healy

Minor update version 2.6.1 now available; bug fixes and enhancements.

Dave Healy

Hello Matteo
as discussed by e-mail, this bug is now fixed. Updated getConnectivity.m now in the GitHub master, available in the download.
All the best,
Dave

Matteo Demurtas

Dear Dave,
I am trying to characterise the topology of force networks with FracPaQ, but I get the following error when calculating and plotting the I-Y-X connectivity and the waitbar is stuck on "Removing duplicates". The dataset loads correctly and everything works fine for every other type of measurement and calculation.
Do you have any suggestion on what the problem is and how to solve it?
Thanks in advance,
Matteo

Initial I-Y-X node count:
I: 2272
Y: 4483
X: 7
After removing duplicates and adjusting Y->X:
I: 2272
Y: 4483
X: 7
Undefined function or variable 'XU'.

Error in getConnectivity (line 232)
XIi= setdiff(XI(indI,:), XU(indX,:), 'rows');

Error in guiFracPaQ2Dpattern (line 290)
[cY, cX, cI] = getConnectivity(traces, segmentsxy, xMin, yMin, xMax, yMax, ...

Error in guiFracPaQ2D>pushbutton_run_Callback (line 1220)
guiFracPaQ2Dpattern(traces, nPixels, xmin, ymin, xmax, ymax, ...

Error in gui_mainfcn (line 95)
feval(varargin{:});

Error in guiFracPaQ2D (line 63)
gui_mainfcn(gui_State, varargin{:});

Error in
matlab.graphics.internal.figfile.FigFile/read>@(hObject,eventdata)guiFracPaQ2D('pushbutton_run_Callback',hObject,eventdata,guidata(hObject))

Error while evaluating UIControl Callback.

Dave Healy

Hello Katie
in QGIS, can you choose the SVG version? Go for v1.1. Also, is there any Save option for 'Presentation Attributes'? If so, choose that too.
If none of this works, feel free to e-mail me (info@fracpaq.com) a screenshot of the MATLAB error messages, and I'll see what I can do.
All the best,
Dave

Katherine Ford

Dear David Healy,

I'm just wondering if you have any advice when it comes to converting GIS shp. files into an SVG that will work with FracPaQ? I've been digistising all my trace maps in QGIS, I can use the Composer manager to export the file as an SVG but this doesn't seem to load in FracPaQ.

I would be grateful for any advice!

Thanks,

Katie

Dave Healy

Hello Sophie

sorry to say but your file is the ‘wrong’ type for loading into FracPaQ as an Image file.

It is 32 bit truecolor, and not 8 bit grayscale.

You should be able to reset these in, for example, ImageJ or GIMP, or other graphics packages.

However, looking at the image, the outcrops are not that continuous. And therefore the Hough Transform method used for image files will struggle. A better – although more time-consuming approach – is to manually trace the fractures in a graphics package and save that layer as an .SVG file. Import that file into FracPaQ as a node file. More detailed instructions in the User Guide.

All the best,
Dave

Sophie Smits

You have the .tif file!

Sophie Smits

Oh my first response it missing.

Thank you so much for your quick response. I am sending you the .tif file via weTransfer. I know I am a bit late, but I am working from Australia and I have a presentation tomorrow at 06.00h British time. WeTransfer will take about 8 hours left haha, do you think you can help me before the presentation? I would like to show the P21 value there.

Many thanks in advance for helping me out.

Cheers,
Sophie

Sophie Smits

Oke disclaimer, the WiFi here is really weak so the 1.2GB of the file might take a while...

Dave Healy

Hello Sophie
sorry to hear this; can you send me the input .tif file (or a link if it's too big) to d.healy@abdn.ac.uk
I'll work through it. As per the User Guide, you need an 8-bit grayscale image. You can check in MATLAB with the function imfinfo().
Thanks,
Dave

Sophie Smits

In Matlab 2019A I installed FracPaQ to generate the P21 and so on of a fracture pavement. I have the pavements generated in Agisoft and exported as a .tif, but when I open them in FracPaQ I get this error:

FracPaQ version 2.6
Error using ~=
Too many input arguments.

Error in guiFracPaQ2D>pushbutton_preview_Callback (line 757)
if Iinfo.BitDepth ~= 8 || ~strcmp('grayscale', Iinfo.ColorType)

Error in gui_mainfcn (line 95)
feval(varargin{:});

Error in guiFracPaQ2D (line 63)
gui_mainfcn(gui_State, varargin{:});

Error in
matlab.graphics.internal.figfile.FigFile/read>@(hObject,eventdata)guiFracPaQ2D('pushbutton_preview_Callback',hObject,eventdata,guidata(hObject))
Error while evaluating UIControl Callback.

Error using ~=
Too many input arguments.

Error in guiFracPaQ2D>pushbutton_preview_Callback (line 757)
if Iinfo.BitDepth ~= 8 || ~strcmp('grayscale', Iinfo.ColorType)

Error in gui_mainfcn (line 95)
feval(varargin{:});

Error in guiFracPaQ2D (line 63)
gui_mainfcn(gui_State, varargin{:});

Error in
matlab.graphics.internal.figfile.FigFile/read>@(hObject,eventdata)guiFracPaQ2D('pushbutton_preview_Callback',hObject,eventdata,guidata(hObject))
Error while evaluating UIControl Callback.

The type of file is changed to Image, so I don't know why it doesn't work.

Anyone who i sable to help me?

Thanks in advance,
Sophie

Sorinel Oprisan

Thank you for the swift answer.
I did not think of selecting "Options" after clicking "Browse" to actually change the file type filter.
Thank you again.

Dave Healy

Hello
I've just downloaded it, selected Image File, clicked Browse; changed the filetype filter to *.tif, and chose MacduffBinary.tif, then clicked Preview.

Works for me!

Can you try the above and let me know?

Thanks
Dave

Sorinel Oprisan

I just downloaded the software, open matlab, pointed to /FracPaQ folder, typed guiFracPaQ2D and then when I select image input file nothing works.
No images of any kind can be opened.
Even the images provided with the package are grayed-out and cannot be opened.
The only files that the giu can open even when i select "image file" option ate .txt files.
I run Matlab 2019a and OXSX Mojave.
Any ideas how to fixe the issue?
Thanks.

Dave Healy

New version 2.6 now available, including new connectivity maps, new line graphs, fixed bugs, and revised User Guide.

All comments welcome!

Dave Healy

(just cut/pasted the link without the '.Can' at the end - works now!)

So, yes it can. 1) if you save it as a TIFF or JPEG you can use the Image file input (see the User Guide PDF in the download); this will use a Hough Transform method to find colinear pixels; but much better is 2) trace the cracks using some graphics package (or save as .SVG), and import into FracPaQ as a Node file (again, see the User Guide).

Hope this helps.

Dave

vivek seelam

Dear Dave Healy,
I am seeing a lot of positive feedback for your software and I am trying to use it for my project where we have to analyze cracks on a metal surface from a given microscopic image. I am unable to use your software for finding parameters like crack density, crack length, etc the images are of metals, for example, https://photos.app.goo.gl/YQVBoam5wmrmyZgo8.Can FracPaQ be used to analyze these kinds of images?? Your help is highly appreciated.
Thanks in advance.

Dave Healy

Hello, not as it stands, no. FracPaQ is designed to quantify existing patterns, not to predict them. For that you would need an underlying model for fracture distribution.

Gurpreet Singh Tuteja

Can we use it to predict fractures in a seimic image of subsurface?

Dave Healy

Thanks Hannah. Will get that feature added in the next release, and some other plots based on distance of fractures from a specified line (e.g. a fault trace), e.g. length, orientation etc.

Hannah Rabinowitz

This package is incredibly helpful for analyzing fracture patterns in deformed samples or outcrops. It makes it so easy to squeeze any information that you could possibly want about fracture distributions out of your fracture traces. The one suggestion that I have is to add a functionality to be able to select a linear transect across your image in the GUI and output a plot where the x-axis is the position along the transect and the y-axis is the fracture density or intensity. This would allow for easy analysis of things like damage zone characteristics around a fault or a fracture in an experimentally deformed sample.

Dear Dave,
I solved the problem,
I had another function with the same name.
sorry to bother
thank you,
Eduardo

Dear Dave,
I tried to run the code but I get the following error:

>> guiFracPaQ2D
Error using get (line 13)
uiextras.get has been removed.

Error in matlab.ui.internal.legacyMoveGUI (line 88)
old0units = get(0, 'Units');

Error in movegui (line 125)
matlab.ui.internal.legacyMoveGUI(fig, position);

Error in matlab.hg.internal.openfigLegacy (line 102)
movegui(fig(n), 'onscreen');

Error in gui_mainfcn>local_openfig (line 286)
gui_hFigure = matlab.hg.internal.openfigLegacy(name, singleton, visible);

Error in gui_mainfcn (line 158)
gui_hFigure = local_openfig(gui_State.gui_Name, gui_SingletonOpt, gui_Visible);

Error in guiFracPaQ2D (line 63)
gui_mainfcn(gui_State, varargin{:});

could you help me solve it?
thank you,

Dear Dave,
I could fix it
sorry to bother
Thank you!

xingpeng chen

Juliana Lopes

Nikolay Andrianov

Great piece of software!

Jose Escamilla-Casas

I have applied the codes to evaluate the brittle deformation behavior in Sierra de Pachuca, Hidalgo, Mexico; results are outstanding.

heba ashraf

This code helped me very much in my graduation project to detect a lot of fractures from remote sensing data and field pictures , its output plot very good for fracture analysis from image and SVG files , thanks for sharing it.

Sophie Cox

Nice output plots for fracture analysis from images of mafic rocks. Very easy to use and a good fracture analysis software.

Murray Hoggett

Excellent fracture analysis software, intuitive GUI and quality default plot outputs.

Francesco VInci

Great toolbox, used to quantify fracture patterns extracted from a Virtual Outcrop Model.Thank you for sharing it!

Hamed Aghaei

A very useful and user-friendly package of codes. Thank you for your effort.

Allan López

Superb set of scripts for an objective and very applicable analysis of rock massifs under tropical weathering conditions. Congratulations Dave !

Andrea

This comprehensive code + GUI packet was very helpful in our research on the propagation of fractures through analogue materials at Iowa State University!

Samuel Anderson

Thank you, your tools have improved fracture analysis.

Dave Healy

New version 2.4 now available, including new tabbed GUI, new trace maps for slip & dilation tendency, new log-log plots for density distributions, and revised User Guide.

All comments welcome!

Dave Healy

New version 2.2 now available.

xingpeng chen

Jimmy VILLA

Dave Healy

New version 2.0 now available.

Dave Healy

New version 1.8 now available.

Dave Healy

Current version 1.6a fixes the known bugs and adds enhancements changes requested by reviewers of our manuscript submitted to Journal of Structural Geology.

Dave Healy

Thanks Rashad.

We have logged bugs for the Density plot (says 'Intensity'), the shell scripts and the Scaling parameter (crashes when pixels/metre >= 1000). All these will be addressed in next release, v1.7.

Rashad G

This is an excellent set of codes for quantitative fracture characterization. Thanks to you and your Team.

MATLAB Release Compatibility
Created with R2017a
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!