Blocks
Analysis of plate boundary deformation using geodetic data
Install / Use
/learn @jploveless/BlocksREADME
Blocks
Present-day deformation at plate boundary zones, recorded as GPS velocities, reflects the combination of plate motion and elastic strain accumulation. This suite of codes implements the block modeling methodology described by:
Meade, B.J. and J.P. Loveless (2009), Block modeling with multiple fault network geometries and a linear elastic coupling estimator in spherical coordinates, Bulletin of the Seismological Society of America, 99(6), 3124–3139, doi:10.1785/0120090088.
Blocks is designed for use with Matlab R2014b and later.
Documentation (evolving) can be found on the Blocks wiki and in a Google Doc.
To get started:
Blocks uses tridisl as a submodule. To clone Blocks, run
$ git clone --recursive https://github.com/jploveless/Blocks.git
If you are instead downloading .zip files, download both Blocks and tridisl, unzip, move the tridisl folder to the Blocks directory, and rename it from tridisl-master to tridisl.
After you have the directories, run the following commands on the Matlab command prompt:
blockshome = '~/MATLAB/Blocks'; % Edit path to where you placed the Blocks directory
cd(blockshome)
cd BlocksUtilities
% The next function adds the Blocks subdirectories to your Matlab path.
% Make sure you have permission to write to pathdef.m.
blockspath(blockshome)
You can create a new template model directory structure using:
blocksdirs('~/MATLAB/Blocks/California')
% Edit path to specify your project name; a new directory will be created if it doesn't exist
Then, edit the Blocks geometry files (.segment and .block) using SegmentManager:
cd ~/MATLAB/Blocks/California/command
SegmentManager
% Within SegmentManager, click "Load" under "Command file" and load 'model.command'.
% Use SegmentManager tools to add and modify segment and block properties, saving
% the geometry files to the ../segment and ../block directories
To run the analysis,
cd ../result
Blocks('../command/model.command')
% The results will be saved in a newly generated directory in the result directory
To view the results,
ResultManager
% Load a result directory. If you have more than one set of results, you can compare
% them by loading both a "Result directory" and "Compare directory"
SegmentManager interface:

Related Skills
node-connect
352.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
111.3kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
352.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
352.5kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
